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 :

PHP et fonctions LDAP


Sujet :

Langage PHP

  1. #1
    Membre expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Points : 3 628
    Points
    3 628
    Billets dans le blog
    8
    Par défaut PHP et fonctions LDAP
    Bonjour...

    Je fais entrer au client des données que je vais vérifier sur un ldap pour voir s'il en est membre...


    Tout va bien... jusqu'à ce que l'on arrive au mot de passe, évidemment codé !

    J'ai cru comprendre que je devais récupérer le mdp entré par le user, le coder moi même avec la fonction crypt, et comparer avec le champ crypté du ldap : userPassword... Oui mais voilà ! J'ai cru comprendre que mon champ LDAP est crypté en {SSHA} ou bien {SSH} (c'est selon)...

    Comment je fais moi ? Vu plein de fois ce genre de questions en googleisant, mais jamais lu une réponse satisfaisante...

    Au fait, ma fonction :

    Bien sûr $inputid et $inputpass sont les variables entrées dans le form par user... Bien sûr aussi, je mets des identifiants de connexion fantaisie...
    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
    29
    30
    31
    32
    33
     
    <php>
    function tape_dans_ldap($inputuid,$inputpass){
    	$ldap='toto';
    	$ds=ldap_connect($ldap)or die("Connexion au ldap impossible. Veuillez ré-essayer ultérieurement.");
    	$dn="ou=toto";	
     
    	//requête ldap
    	if($ds){
    		$cryptpass=crypt($inputpass);
    		$filtre="(uid=$inputuid*)";
    		$recup=array($dn,"uid","userPassword");
    		$search=ldap_search($ds,$dn,$filtre,$recup);
    		$info=ldap_get_entries($ds,$search);
    		if ($info["count"]!=0){
     
    			for ($i=0; $i<$info["count"]; $i++){
    				 $pass=$info[$i]["userPassword"];
     
    				 if ($cryptpass==$pass){
    				echo 'Mot de passe correct !';
    				}
    				else{
    					echo'Mot de passe incorrect !';
    				}
    			}
    		}
    		else{
    			echo 'Cet identifiant ne figure pas dans le ldap.';
    		}
    	}
    }
    </php>

  2. #2
    Membre expert
    Avatar de Eusebe
    Inscrit en
    Mars 2006
    Messages
    1 992
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 992
    Points : 3 344
    Points
    3 344
    Par défaut
    Bonjour,

    personnellement, pour vérifier si un utilisateur a saisi le bon mot de passe via un annuaire LDAP, j'essaie simplement de me connecter à cet annuaire avec cet utilisateur (fonction ldap_bind) : si ça réussit, c'est que le mot de passe est correct

  3. #3
    Membre expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Points : 3 628
    Points
    3 628
    Billets dans le blog
    8
    Par défaut
    Merci bien, je n'y avais pas pensé.
    Un flag 'il n'y a pas de problème de connexion' suffisait effectivement.

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

Discussions similaires

  1. Question sur la fonction LDAP de PHP
    Par yonyon dans le forum Langage
    Réponses: 1
    Dernier message: 27/08/2010, 23h31
  2. Php et la fonction ldap-add()
    Par Delack dans le forum Langage
    Réponses: 11
    Dernier message: 14/01/2010, 14h20
  3. [PHP-JS] fonction .innerHTML="" + PHP
    Par sigmar_avenger dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 29/01/2006, 12h20
  4. [XSLT] [PHP 5] fonction position()
    Par sharper dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 01/12/2005, 12h58
  5. [EasyPHP] Activer les fonctions LDAP sur EasyPHP 1.8
    Par gregfly26 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 5
    Dernier message: 24/10/2005, 16h13

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