Nutzung von PHP und dessen LDAP-Authentifizierung für Windows und UNIX

Um herauszufinden, welche Fehler eventuell aufgetreten sind, kann man die Funktion ldap_error aufrufen. Sie liefert einen String, der den jeweils letzten am LDAP-Server aufgetretenen Fehler enthält.

In Listing C habe ich die Funktion ldap_error zu dem Script hinzugefügt um im Falle einer fehlgeschlagenen Authentifizierung des Benutzers durch Bindung an den LDAP-Server eine Fehlermeldung anzuzeigen und den Vorgang abzubrechen. Diese Funktion gibt einen String zurück, der die Fehlermeldung enthält, die durch den letzten an den LDAP-Server gesendeten Befehl erzeugt wurde. Wenn eine Bindung mit dem verwendeten Benutzernamen und Passwort nicht möglich war, wird in der Fehlermeldung auf einen ungültigen Benutzernamen bzw. auf ein ungültiges Passwort hingewiesen.

Für das letzte Beispiel in Listing D benutze ich die verbleibenden drei Funktionen ldap_search, ldap_get_entries und ldap_close zusammen.

Nach dem Aufruf der Funktion ldap_bind in Listing D fordere ich Daten vom Server an, indem ich den Server mit der Funktion ldap_search durchsuche. Die Funktion ldap_search akzeptiert zwar verschiedene Parameter, dennoch habe ich in diesem Beispiel nur die ersten drei verwendet. Ich gab also Verbindung, Suchbasis und Filter in die Suchfunktion ein, die den Server ausgehend von den Angaben zu Suchbasis und Filter auf den korrekten Benutzer durchsucht. Kurz gesagt, ich wies die Suchfunktion durch Angabe der UID als Benutzername an, nach dem Benutzer zu suchen. Auf diese Weise filtert LDAP das Ergebnis und gibt nur die LDAP-Daten des Benutzers aus.

Themenseiten: Anwendungsentwicklung, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

ZDNet für mobile Geräte
ZDNet-App für Android herunterladen ZDNet-App für iOS

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Nutzung von PHP und dessen LDAP-Authentifizierung für Windows und UNIX

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *