PHP und LDAP Teil 3

Teil 3

/*

* Hier wird ein zusätzlicher Filter gesetzt um wirklich nur bestimmte Daten zu bekommen

*Dabei ist samaccountname der Jeweilige Benutzername der überprüft werden soll in den meisten

* fällen kann dies so übernommen werden.

*/

$filter = '(&(objectClass=user)(CN=*)(samaccountname=' . $username . '))';

//Die eigentlich Verbindung zum LDAP Server.

$ds = ldap_connect($hostname);
//Nun wird Überprüft ob die Verbindung aufgebaut warden kann.

if($ds){

//Wenn ja kann die Bindung stattfinden.

$r = ldap_bind($ds, $username . $ldap_usr_dom, $passwd);

}

else{

//Ansonsten setzen wir die Variable “r” auf 0 oder false.

$r = 0;

}

//Ist die Bindung oben nun Erfolgreich beginnt der Haupt- LDAP Prozess.

if ($r) {

//Wir suchen nun im AD nach seinem Benutzerdaten wie Straße etc.

$sr = ldap_search($ds, $base_dn, $filter);
//Werten Sie dann aus und Speichern sie in eine Variable

$info = ldap_get_entries($ds, $sr);

/*

*Session Variablen setzen zum Späteren gebrauch

* Dies dient nur als Beispiel und sind die Grundvariablen für eine vernünftige Session

*/

//Benutzernamen in Session

$_SESSION["user_username"] = $username;

//Benutzers richtiger Name (Vor- u. Nachname)aus der „info“ Variable

$_SESSION["user_name"] = $info[0]['cn'][0];

//Simple Rechte Setzung 1 steht hierbei für einen Normalen Benutzer kein Admin

$_SESSION["user_rights"] = "1";

//Damit der Index nicht wieder auf den Login wechselt geben wir eine Session mit die sagt //eingeloggt(Aus Formular 1 für eingeloggt)

$_SESSION["logged"] = $_POST['logged'];

//Sagt dem Ajax Script alles OK

echo  1;

//Schließt die LDAP Verbindung.

ldap_close($ds);

}else{

//Sagt dem Ajax Script Fehler

echo 0;

ldap_close($ds);

}

}

?>

Zum vierten Teil

Schreibe einen Kommentar