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 :

Login avec annuaire LDAP


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Inscrit en
    Décembre 2008
    Messages
    483
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 483
    Points : 105
    Points
    105
    Par défaut Login avec annuaire LDAP
    Bonjour,

    Je dois créer un login qui sera basé sur un annuaire LDAP.

    Voici le code (pris sur php.net) :

    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
    34
    35
    <?php
     
    $ds=ldap_connect("localhost");  // doit être un serveur LDAP valide!
     
    if ($ds) {
     
        // Authentification
        if (ldap_bind($ds)) {
     
            // Préparation des données
            $dn = "cn=Matti Meikku, ou=My Unit, o=My Company, c=FI";
            $value = "secretpassword";
            $attr = "password";
     
            // Comparaison des valeurs
            $r=ldap_compare($ds, $dn, $attr, $value);
     
            if ($r === -1) {
                echo "Error: " . ldap_error($ds);
            } elseif ($r === true) {
                echo "Password correct.";
            } elseif ($r === false) {
                echo "Mal choisi ! Mot de passe incorrect !";
            }
     
        } else {
            echo "Impossible de se connecter au serveur LDAP.";
        }
     
        ldap_close($ds);
     
    } else {
        echo "Impossible de se connecter au serveur LDAP.";
    }
    ?>
    Sauf que je ne comprend pas trop...

    D'habitude mon procédé est le suivant pour un login classique :

    -l'utilisateur rentre son login et son mot de passe
    -je vais comparer dans la base le couple login/mdp avec toutes les entrées présentes dans la base (avec $_POST)
    -si il y a un résultat c'est ok -> connecté

    Mais avec LDAP j'ai du mal à retrouver les mêmes étapes.

    Je fais donc appel à vous pour m'éclaircir un peu, si possible.

    Merci

  2. #2
    Membre éclairé
    Avatar de bricecol
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Avril 2007
    Messages
    364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Avril 2007
    Messages : 364
    Points : 654
    Points
    654
    Par défaut
    comment çà, ton code respecte ces étapes, non ? c'est juste que les données ne sont pas présentées de la même façon.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $dn = "cn=Matti Meikku, ou=My Unit, o=My Company, c=FI";
    $value = "secretpassword";
    $attr = "password";
    $r = ldap_compare($ds, $dn, $attr, $value);
     
    // c'est équivalent à comparer un login/mdp mais avec le formalisme LDAP

Discussions similaires

  1. [2.x] Une application pour gérer l'annuaire LDAP avec Symfony2
    Par sinko35 dans le forum Symfony
    Réponses: 6
    Dernier message: 29/05/2012, 17h22
  2. Interrogation d'annuaire LDAP avec C++ Builder
    Par ptikiwi dans le forum C++Builder
    Réponses: 0
    Dernier message: 24/06/2008, 15h02
  3. [LDAP] API PHP communicante avec un annuaire LDAP
    Par yoshï dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 29/04/2008, 10h31
  4. API communicante avec un annuaire LDAP
    Par yoshï dans le forum REST
    Réponses: 0
    Dernier message: 21/04/2008, 15h25
  5. [Security] Annuaire LDAP avec Acegi
    Par rc_29 dans le forum Spring
    Réponses: 4
    Dernier message: 08/06/2007, 10h01

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