LDAP Passwortabfrage

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • LDAP Passwortabfrage

    Hallo miteinander

    Hier zuerst mal der Code:
    PHP-Code:
    <?
    $ds = ldap_connect("server", 389);
    echo    "Connection: ".$ds;
    echo    "<br><br>";

    if($ds) {
        $user = "cn=LDAPLesen,ou=LDAP,o=Services";
        $password = "LDAPLesen";
        $r=ldap_bind($ds, $user, $password);
        echo    "Bindung: ".$r;
        echo    "<br><br>";
        
          echo "Suche nach (cn=USERNAME) ...";
        // Suchen des Nachnamen-Eintrags
        $sr=ldap_search($ds,"o=TEST", "cn=USERNAME");
        echo "Ergebnis der Suche ".$sr."<p>";

        echo "Anzahl gefundenen Einträge ".ldap_count_entries($ds,$sr)."<p>";

        echo "Einträge holen ...<p>";
        $info = ldap_get_entries($ds, $sr);
        echo "Daten für ".$info["count"]." Items gefunden:<p>";
        $pw = "test";    for ($i=0; $i<$info["count"]; $i++) {
            echo "dn ist: ". $info[$i]["dn"] ."<br>";
            echo "erster cn Eintrag: ". $info[$i]["cn"][0] ."<br>";
            echo "erster email Eintrag: ". $info[$i]["mail"][0] ."<br>";
        }

        echo "<br><br>Verbindung schließen";
        ldap_close($ds);
    }
    ?>
    Also. Die Verbindung funktioniert prächtig. Auch der User wird im Context gefunden.

    Ich frage mich gerade wie das Passwort denn von einem von mir erstellten HTML-Formular verglichen werden kann. Also ich gebe in einem Formular ein PW ein, welches das gleiche sein muss wie das vom User. Erst dann wird ins Intranet weitergeleitet.

    Nur: wie heisst das Attribut für das Passwort und wie muss es verschlüsselt werden?

    Ich habe nicht einmal ansatzweise Hilfe dazu gefunden. Alles hat mich total verwirrt.Mal heisst es, das Attribut heisst userPassword, dann wiederum Private Key.

    Und wie ist es verschlüsselt? Es muss ja verglichen werden.. hab was von base64 und zusätzlich noch was anderes.

    Kann mir da bitte jemand helfen?

    Vielen Dank

    Gruss

    Luca

  • #2
    Nur: wie heisst das Attribut für das Passwort
    Welches attribut? was ist dein problem genau? was hast du bisher versucht?

    Das Formular und die Formularverarbeitung sind klar, oder treten da schon schwierigkeiten auf?

    Kommentar


    • #3
      PHP-Code:
      echo "erster cn Eintrag: "$info[$i]["cn"][0] ."<br>"
      In diesem Teil wird ja CN ausgegeben.

      Kann ich auch über diesen array $info das Passwort von der AD mit dem eingegebenen Passwort vergleichen? Wenn ja, wie ist das Passwort abrufbar? Hier bei CN wäre es $info[$i]["cn"][0]
      bei pw? $info[$i]["userPassword"][0]

      Und stimmt "userPassword" oder isses was anderes?

      Also grundsätzlich gehts mir darum wie kann ich das Passwort des Users aus der AD holen und mit IRGENDWAS vergleichen. Mit Formularen hab ich keine Probleme.

      Hab schlicht und einfach keine Ahnung wie ich das Passwort aus der AD holen kann und mit IRGENDWAS vergleichen kann. Hab nix dazu gefunden.

      Kommentar


      • #4
        Grundlagen: print_r($info);

        Kommentar


        • #5
          Brauch ich net. Hab schon alles per LDAP Browser angeschaut.

          Wird da nich angezeigt.

          Kommentar


          • #6
            Ja, dann gibt es da auch kein Attribut drin.

            Kommentar


            • #7
              Falsch!

              Du weisst einfach nicht wie.

              Oder besser:

              in $info gibts kein Attribut

              Trotzdem kann man aufs PW zugreifen, nur WIE is die Frage.

              Kommentar


              • #8
                Falsch!
                Du weisst einfach nicht wie.

                Oder besser:
                in $info gibts kein Attribut
                Jou, letzteres ist genau das, was ich dir gesagt habe. :wall:

                Naja, du machst das schon.

                Kommentar


                • #9
                  Bist n richtiger witzbold

                  Sonst keiner hier der Ahnung davon hat?

                  Kommentar


                  • #10
                    Soweit ich weiß können Passwörter nicht aus dem AD gelesen werden. Aber wenn ein ldap_bind() mit den Userdaten klappt, dann war das Passwort wohl das richtige.

                    Kommentar

                    Lädt...
                    X