IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[openssl_x509_parse()] Récupération du CN du certificat x509 [PHP 5.2]


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    309
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 309
    Points : 148
    Points
    148
    Par défaut [openssl_x509_parse()] Récupération du CN du certificat x509
    Bonjour,

    Je cherche à attribuer des droits à mes utilisateurs en fonction de leur profil. L'élément discriminant que je souhaite utiliser est le CommonName du certificat par lequel ils s'authentifient.

    J'ai lu sur le forum que l'option Apache2 : "SSLOptions +ExportCertData" était requise pour que php récupère les information du certificat.

    Cela m'a permis d'afficher le certificat avec ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<p>'.$_SERVER['SSL_CLIENT_CERT'].'</p>';
    Le résultat semble cohérent :
    -----BEGIN CERTIFICATE----- MIICpDCCAg2gAwIBAgIBAjANBgkqhkiG9w0BAQUFADBgMQswCQYDVQQGEwJGUjET ..................
    hY/jbvXqLYTwfygKwEkE1gbjdfnUb3srl3VVQzm2/1VtIMqR41nrwBzEIYghqW2D +rKuBAcmU2E= -----END CERTIFICATE-----
    En revanche, la fonction openssl_x509_parse(); refuse de me renvoyer un tableau avec les information dont j'ai besoin.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $cert_data = openssl_x509_parse( $_SERVER['SSL_CLIENT_CERT'] );
    echo '<p>'.$cert_data['CN'].'</p>';
    Quelqu'un a-t-il déjà rencontré le problème avec cette fonction qui semble être expérimentale ?

    Merci

    --
    PHP Version 5.2.6-1+lenny8

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    309
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 309
    Points : 148
    Points
    148
    Par défaut
    Finalement j'ai trouvé la réponse.

    L'affichage m'a permis de comprendre d'où venait mon erreur.
    Le code correct est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $cert_data['subject']['CN']

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment signer un fichier XML avec certificat X509 (.pfx)
    Par imad_eddine dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 08/03/2011, 10h27
  2. [Cryptographie][JNDI] Sauvegarder certificat X509
    Par Makineros63 dans le forum Sécurité
    Réponses: 2
    Dernier message: 05/05/2008, 09h05
  3. Accepter automatiquement un certificat X509
    Par kayanwan dans le forum ASP.NET
    Réponses: 3
    Dernier message: 16/11/2007, 00h41
  4. Construction de certificats X509
    Par KenPark dans le forum Sécurité
    Réponses: 2
    Dernier message: 12/07/2007, 13h50
  5. Récupérer le CN d'une certificat X509
    Par sfaxi dans le forum Apache
    Réponses: 1
    Dernier message: 30/05/2007, 19h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo