自動ログインでイントラネットソリューションが必要です。 バインドは正常ですが、LDAPサーバーを検索することはできません。LDAP/SSOイントラネットソリューション
クライアントで自動ログインを使用することはできますか? クライアントは私のユーザ名を知っていますが、apacheはそれを知っていません。
<?php
$user_ldap_admin = 'XX';
$password_ldap_admin = 'XX';
$my_windows_username = 'XX'; // client -> server; auto send possible ??
$ldap = ldap_connect("XX.XX.com")
or die("no ldap connection");
if ($ldap) {
$ldapbind = ldap_bind($ldap, $user_ldap_admin, $password_ldap_admin);
if ($ldapbind) {
echo "bind ok";
} else {
echo "bind error";
}
}
if($bind = @ldap_bind($ldap, $user_ldap_admin, $password_ldap_admin)) {
$filter = "(sAMAccountName=" . $my_windows_username . ")";
$attr = array("memberof","givenname");
$result = ldap_search($ldap, $ldap_dn, $filter, $attr) or exit("unable to search LDAP");
$entries = ldap_get_entries($ldap, $result);
$givenname = $entries[0]['givenname'][0];
ldap_unbind($ldap);
foreach($entries[0]['memberof'] as $grps) {
if (strpos($grps, $ldap_manager_group)) { $access = 2; break; }
if (strpos($grps, $ldap_user_group)) $access = 1;
}
if ($access != 0) {
$_SESSION['user'] = $my_windows_username;
$_SESSION['access'] = $access;
$_SESSION['givenname'] = $givenname;
return true;
} else {
return false;
}
} else {
return false;
}
?>
-
ntlmは "魔法の言葉" –