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 :

[FTP] Authentifier des utilisateurs via un annuaire LDAP


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    102
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 102
    Par défaut [FTP] Authentifier des utilisateurs via un annuaire LDAP
    Hello



    J'ai un petit soucis, je n'arrive pas à authentifier les utilisateurs de mon appli via l'annuaire ldap de la boite. Voila le code que j'utilise pour faire mes tests et comprendre comment les annuaires LDAP fonctionnent :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    <?php
     
    // using ldap bind 
    $ldaprdn  = 'cn=monappli,ou=appli,o=maboite,c=fr';     	// ldap rdn or dn
    $ldappass = 'monPass';  				// associated password
     
    // connect to ldap server 
    $ldapconn[0] = ldap_connect("serveurLDAP1",389);
    $ldapconn[1] = ldap_connect("serveurLDAP2",389);
     
    print_r($ldapconn);
     
    if ($ldapconn[0] || $ldapconn[1]) {
     
    	// binding to ldap server
    	$ldapbind[0] = ldap_bind($ldapconn[0], $ldaprdn, $ldappass);
    	$ldapbind[1] = ldap_bind($ldapconn[1], $ldaprdn, $ldappass);
     
     
    	$r = ldap_bind($ldapconn,"prenom.nom@maboite.fr","monPassPerso");
    	if($r) echo "ok";
    }
     
    ldap_close($ldapconn[0]);
    ldap_close($ldapconn[1]);
     
    ?>
    L'identifiant d'un utilisateur c'est son mail. Au début je comptais faire un ldap_search, en recherchant l'utilisateur "prenom.nom@maboite.fr" avec le mot de passe "monPassPerso", mais je ne sais pas comment sont codés les mots de passe de l'annuaire LDAP de la boite, et on veut surtout pas me le dire, donc ca ne fonctionne pas. On m'a dit de faire avec une requete BIND mais je ne vois pas comment, puisque pour moi ca sert à identifier l'appli au serveur LDAP. et ce que j'ai fait ne fonctionne pas.

    Il faut que je fasse un bind sur l'annuaire pour identifier mon appli, et un autre bind pour identifier l'utilisateur ? en même temps ? j'ai rien compris ?


    Voilà, si vous avez une idée ...


    ViRouF

  2. #2
    Membre éclairé
    Inscrit en
    Janvier 2004
    Messages
    533
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 533
    Par défaut
    Bonjour,

    voici un topic où j'ai expliqué comment je faisais l'authentification...

    En espérant que ça t'aide.

  3. #3
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    102
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 102
    Par défaut
    Oui mais visiblement tu sais quelle est la fonction utilisée pour crypter les mots de passe, moi non. Voici a quoi ressemble le mot de passe un fois crypté :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    [userpassword] = Array
                    (
                        [count] = 1
                        [0] = (058E93F58614BE47260B8BB3F996ED59)
                    )
    J'ai essayé ton méthode pour crypter le mot de passe mais ca ne correspond pas quand je compare le mien crypté à celui que je vois lorsque je me recherche dans l'annuaire

  4. #4
    Membre éclairé
    Inscrit en
    Janvier 2004
    Messages
    533
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 533
    Par défaut
    De toute manière, si tu ne sais pas comment sont encryptés les mots de passe, je ne vois pas comment faire pour comparer celui saisi par l'utilisateur, et celui stocké dans le LDAP...

    Essaie de voir de la doc sur ldap_bind.

  5. #5
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    102
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 102
    Par défaut
    Bah justement avec ldap_bind tu passes le mot de passe en clair et il se débrouille d'après ce que j'ai compris. En tout cas c'est ce que je fais avec le compte applicatif de mon appli.

    La doc de ldap_bind je la connais par coeur depuis le temps que je cherche

  6. #6
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Citation Envoyé par ViRouF
    Bah justement avec ldap_bind tu passes le mot de passe en clair et il se débrouille d'après ce que j'ai compris. En tout cas c'est ce que je fais avec le compte applicatif de mon appli.
    Bien sûr ! Si vous vous connectez à un annuaire ldap_bind prend le mot de passe en clair, nul besoin de connaître les algorithmes de cryptage utilisés derrière pour stocker les mots de passe. Par contre, si vous voulez comparer les mots de passe stockés (obtenus par une recherche et comparés à celui saisi par l'utilisateur par exemple), dans ce cas vous devrez le savoir.


    Julp.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 24/06/2012, 17h22
  2. Comment ajouter des utilisateurs dans l'annuaire LDAP
    Par roubben dans le forum SWT/JFace
    Réponses: 0
    Dernier message: 24/04/2011, 19h55
  3. Ajout d'un utilisateur dans l'annuaire LDAP
    Par Delack dans le forum Langage
    Réponses: 4
    Dernier message: 25/02/2010, 12h13
  4. Idifification sur moss 2007 via un annuaire ldap domino
    Par fred45 dans le forum SharePoint
    Réponses: 4
    Dernier message: 14/05/2008, 09h43
  5. [LDAP] récupération login de l'utilisateur via Active Directory
    Par kcizth dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 21/12/2005, 16h47

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