Hallo,
ich habe ein HTML Loginformular mit Benutzername und Kennwort.
Wenn man auf den Button Login klickt, soll überprüft werden, ob der eingegebene Benutzer in der Active Directory Gruppe php_login ist. falls ja, wird der login mit seinen anmeldedaten durchgeführt.
wie bekomme ich das am besten mit der gruppenprüfung hin.
ich habe es nur hinbekommen, dass sich alle ad benutzer authentifizieren können. anbei das skript hierzu:
ich habe ein HTML Loginformular mit Benutzername und Kennwort.
Wenn man auf den Button Login klickt, soll überprüft werden, ob der eingegebene Benutzer in der Active Directory Gruppe php_login ist. falls ja, wird der login mit seinen anmeldedaten durchgeführt.
wie bekomme ich das am besten mit der gruppenprüfung hin.
ich habe es nur hinbekommen, dass sich alle ad benutzer authentifizieren können. anbei das skript hierzu:
PHP-Code:
<?php
if(isset($_POST['username']) && isset($_POST['password'])){
$adServer = "ldap://dc01.sascha-graf.de";
$ldap = ldap_connect($adServer);
$username = $_POST['username'];
$password = $_POST['password'];
$ldaprdn = 'sascha-graf' . "\\" . $username;
ldap_set_option($ldap, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option($ldap, LDAP_OPT_REFERRALS, 0);
$bind = @ldap_bind($ldap, $ldaprdn, $password);
if ($bind) {
$filter="(sAMAccountName=$username)";
$result = ldap_search($ldap,"dc=sascha-graf,dc=de",$filter);
ldap_sort($ldap,$result,"sn");
$info = ldap_get_entries($ldap, $result);
for ($i=0; $i<$info["count"]; $i++)
{
if($info['count'] > 1)
break;
echo "<p>Login war erfolgreich! <strong> ". $info[$i]["sn"][0] .", " . $info[$i]["givenname"][0] ."</strong><br /> (" . $info[$i]["samaccountname"][0] .")</p>\n";
echo '<pre>';
var_dump($info);
echo '</pre>';
$userDn = $info[$i]["distinguishedname"][0];
}
@ldap_close($ldap);
} else {
$msg = "Benutzername oder Passwort falsch";
echo $msg;
}
}else{
?>
<form action="#" method="POST">
<label for="username">Username: </label><input id="username" type="text" name="username" />
<label for="password">Password: </label><input id="password" type="password" name="password" /> <input type="submit" name="submit" value="Submit" />
</form>
<?php } ?>