PHP привязка ldap проблема
Я просматривал пару руководств (и руководство по PHP), пытаясь проверить пользователей AD на сайте интрасети, который я собираюсь сделать. Это первый раз, когда я использовал ldap_connect, и мне не повезло.
Может ли кто-нибудь взглянуть на мой код и увидеть, что мне не хватает?
Благодарю.
<?php
$user = "08jf1";
$password = "pass";
// Active Directory server
$ldap_host = "10.43.48.5";
// Active Directory DN
$ldap_dn = "OU=CSE-W7,OU=Students-W7,DC=server,DC=local";
// Domain, for purposes of constructing $user
$ldap_usr_domain = "@server.local";
// Connect to AD host
$ldapconn = ldap_connect("10.43.48.5");
if ($ldapconn) {
$bind = ldap_bind($ldap_host, $ldap_dn, $user . $ldap_usr_domain, $password);
if ($bind) {
echo "Verified user";
//$_SESSION['username'] = $session_username;
//$_SESSION['password'] = $session_password;
} else {
echo "User does not exist";
}
}
?>
Редактировать: я могу подтвердить, что ldap включен, хотя phpinfo!
3 ответа
Это синтаксис ldap_bind
правильный?. Не так ли ldap_bind($ldapconn,$rdn,$password)
?
Взгляните на этот очень простой пример: как использовать аутентификацию LDAP Active Directory с PHP
Для привязки может потребоваться повышенная привилегия или оболочка authbind. Обратитесь к authbind для ldap. LDAP AuthBind