Desöfteren - hier konkret bei der Nutzung einer Weboberfläche - sollen Benutzer aus dem LDAP dahingehend überprüft werden, dass sie Mitglied einer bestimmten Gruppe sind.
Gibt es dafür mittlerweile eine “best practice”-Lösung?
Derzeit gibt es z.B. diesen PHP-Code:
`function authenticate_user($username, $password) {
$ldap_dn = "uid=".$username.",".$this->ldapdn;
ldap_set_option($this->ldapconn, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option($this->ldapconn,LDAP_OPT_REFERRALS,0);
if(ldap_bind($this->ldapconn, $ldap_dn, $password)){
$filter = "(&(uid=".$username."))";
$result = ldap_search($this->ldapconn,$this->ldapdn,$filter) or exit("Unable to search");
$entries = ldap_get_entries($this->ldapconn, $result);
if($entries['count'] == 1){
return true;
}else{
return false;
}
}else{
return false;
}
}
`
Die genannten Daten zum bind kommen als JSON-Geraffel aus einer Datenbank.
Wunschtraum: der Benutzer gibt richtige Zugangsdaten ein und es wird geprüft, ob er Mitglied in der Gruppe “p_meinetollegruppe” ist.
Derzeitiges Probllem, welches ich aus anderen Freds zusammengelesen habe: es wird nur die primäre Gruppe ausgegeben.
Hat das irgendjemand mal in funktionieren umgesetzt, Beispielsweise mit einer .htaccess-Datei oder mit radclient als Testszenario?
VG
Kai