first commit
This commit is contained in:
69
ldap_search3.php
Executable file
69
ldap_search3.php
Executable file
@ -0,0 +1,69 @@
|
||||
<?php
|
||||
|
||||
|
||||
// Base DN bezeichnet die oberste OU unter der die User zu finden sind.
|
||||
$basedn = "ou=OUHochschulnetzwerk,dc=hsnet,dc=hs-ludwigsburg,dc=de";
|
||||
$server = "localhost";
|
||||
|
||||
// da der Zugriff auch ohne Anmeldung möglich sein soll, hab ich einen extra User im AD angelegt, um mich mit dem Server zu verbinden.
|
||||
|
||||
$username = "cn=LDAPqueryUser,dc=hsnet,dc=hs-ludwigsburg,dc=de";
|
||||
$password = "ldHS332";
|
||||
|
||||
|
||||
$ldap_port = "389";
|
||||
|
||||
// LDAP Abfrage
|
||||
// ich hab einen erweiterten Filter genommen, da ich nicht nur die User des AD haben wollte, sondern auch Kontakteinträge.
|
||||
$filter = "(&(objectclass=person)(cn=*)(sAMAccountName=*))";
|
||||
//$filter = "(&(|(objectClass=user)(objectClass=contact))(objectCategory=person)(cn=*))";
|
||||
|
||||
// Verbindung zum AD herstellen
|
||||
$ds = @ldap_connect($server, $ldap_port);
|
||||
if($ds){
|
||||
echo "ds Erfolgreich<br>";
|
||||
}else{
|
||||
echo "ds Nicht erfolgreich<br>";
|
||||
}
|
||||
|
||||
// Ihr könnt dies auch nutzen, um z.B. Usernamen und Passwort z.B. fürs Intranet zu verifizieren.
|
||||
$binding = ldap_bind($ds,$username,$password) or die("Fehler");
|
||||
|
||||
if($binding){
|
||||
echo "binding Erfolgreich<br>";
|
||||
}else{
|
||||
echo "binding Nicht erfolgreich<br>";
|
||||
}
|
||||
|
||||
// AD auslesen
|
||||
$sr = ldap_search($ds,$basedn,$filter);
|
||||
$result = ldap_get_entries($ds,$sr);
|
||||
$anzahl = ldap_count_entries($ds, $sr);
|
||||
|
||||
if($sr){
|
||||
echo "search Erfolgreich<br>";
|
||||
}else{
|
||||
echo "search Nicht erfolgreich<br>";
|
||||
}
|
||||
|
||||
|
||||
if($result){
|
||||
echo "result Erfolgreich<br>";
|
||||
}else{
|
||||
echo "result Nicht erfolgreich<br>";
|
||||
}
|
||||
|
||||
// in $result sind nun alle User mit allen Informationen enthalten.
|
||||
echo "<pre>";
|
||||
|
||||
|
||||
for($i=0;$i<$anzahl;$i++){
|
||||
$vorname = $result[$i]['givenname'][0];
|
||||
$nachname = $result[$i]['sn'][0];
|
||||
$uid = $result[$i]['samaccountname'][0];
|
||||
echo "$vorname $nachname -> $uid<br>";
|
||||
}
|
||||
print_r($result);
|
||||
|
||||
echo "</pre>";
|
||||
?>
|
Reference in New Issue
Block a user