57 lines
2.2 KiB
PHP
Executable File
57 lines
2.2 KiB
PHP
Executable File
<?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";
|
|
|
|
$name_user = "schwaral";
|
|
$password_user = "15879";
|
|
|
|
$ldap_port = "389";
|
|
|
|
$ds = @ldap_connect($server, $ldap_port);
|
|
#ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3);
|
|
if ($ds) {
|
|
# bind wird benötigt, sonst werden die Umlaute bei Namen nicht richtig angezeigt ?!!?
|
|
$r = ldap_bind($ds, $username, $password);
|
|
if($r){
|
|
echo "bind erfolgreich<br>";
|
|
}else{
|
|
echo "bind fehlgeschlagen<br>";
|
|
}
|
|
$_ldap_dn = "dc=hsnet,dc=hs-ludwigsburg,dc=de";
|
|
$sr = ldap_search($ds, $_ldap_dn, "sAMAccountName=$name_user");
|
|
$info = ldap_get_entries($ds, $sr);
|
|
$anzahl = ldap_count_entries($ds, $sr);
|
|
echo "Anzahl: $anzahl<br>";
|
|
$vorname = $info[0]['givenname'][0];
|
|
$nachname = $info[0]['sn'][0];
|
|
$mail = $info[0]['mail'][0];
|
|
$first = @ldap_first_entry($ds, $sr);
|
|
$distinguishedName = @ldap_get_dn($ds, $first);
|
|
echo $distinguishedName."<br>";
|
|
################################
|
|
|
|
# Bind geht im hsnet nur über den DN "CN=Schwarz\, Alexander, OU=Externe Benutzer, ou=OUHochschulnetzwerk,dc=hsnet,dc=hs-ludwigsburg,dc=de"
|
|
##!!!!! IM STUDNET MIT DEM USERNAMEN BINDEN, IM HSNET MIT DEM DISTINGUISHEDNAME !!!!!!#################
|
|
if ($bind = @ldap_bind($ds, $distinguishedName, $password_user) AND $anzahl > 0) {
|
|
#echo "hsnet: Bind funktioniert: $anzahl |$distinguishedName|<br>";
|
|
$login = "0";
|
|
$login_ad = "hsnet";
|
|
} else {
|
|
# Bind funktioniert nicht
|
|
$login = "1";
|
|
ldap_close($ds);
|
|
#echo "hsnet: Bind funktioniert nicht: $anzahl <br>";
|
|
}
|
|
}else{
|
|
echo "kein connect";
|
|
}
|
|
echo $login;
|
|
?>
|