3

使用以下代码,我可以对属于域默认用户组的任何用户进行身份验证。例如,我创建了一个用户 CN=test,如下所示。

CN=测试,CN=用户,DC=公司,DC=lcl

有效的代码是..

$ldap_resource = ldap_connect( 'company-dc' );
ldap_set_option($ldap_resource, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option($ldap_resource, LDAP_OPT_REFERRALS, 0);

if( $bind = ldap_bind( $ldap_resource, 'domain\\test', '*******' ) ) {
    die('connected');
}
else {
    die('No connection');
}

当我尝试对 OU=Office Users,OU=Company,DC=company,DC=lcl 中的用户进行身份验证时,它失败并出现错误Unable to bind to server: Invalid credentials。我已经验证了多个用户的用户名和密码是否正确。

我使用与上面完全相同的代码,唯一的区别是用户名和密码,域是相同的。

可以在以下位置进行身份验证:

公司.lcl

-- 用户

无法在 :

公司.lcl

- 公司

----办公用户

4

1 回答 1

0

如果 OU 改变了行为,那么您可能有一个组策略绑定到一个 OU 而不是另一个。我不完全确定,但我可以想象 GPO 强制使用安全通道进行身份验证,您需要使用 LDAP over SSL。您能否将一个用户帐户从用户 OU 移动到公司/办公室用户 OU 并查看它是否停止工作(或相反)?

于 2012-09-24T21:13:53.227 回答