根据 Active Directory 对 Apache HTTPd 进行身份验证

根据 Active Directory 对 Apache HTTPd 进行身份验证

我们正在使用 Apache 2.2.12 通过 .htaccess 配置文件对一个 Active Directory 域进行身份验证。

我们当前的配置是:

AuthBasicProvider ldap
AuthType Basic
AuthName "AD LDAP Test"
AuthLDAPURL "ldap://192.168.0.10:389/OU=Users,DC=test,DC=site?sAMAccountName?sub"
AuthzLDAPAuthoritative On
AuthLDAPBindDN "[email protected]"
AuthLDAPBindPassword "Password"
require ldap-group CN=Sysadmins,OU=Users,DC=test,DC=site

我们在访问和验证网站过程中遇到了用户身份验证问题。

[Sun Mar 16 13:26:25 2014] [warn] [client 192.168.0.10] [6740] auth_ldap authenticate: user rene authentication failed; URI / [ldap_search_ext_s() for user failed][No such object]
[Sun Mar 16 13:26:25 2014] [error] [client 192.168.0.10] user rene not found: /

AuthLDAPBindDN 的身份验证正在运行,因为如果我更改密码,我会收到

[Sun Mar 16 13:20:37 2014] [warn] [client 192.168.0.10] [6360] auth_ldap authenticate: user rene authentication failed; URI / [LDAP: ldap_simple_bind_s() failed][Invalid credentials]
[Sun Mar 16 13:20:37 2014] [error] [client 192.168.0.10] user rene: authentication failure for "/": Password Mismatch

在身份验证期间。

我验证了身份验证

ldapsearch -x -h 192.168.0.10 -LLL -b dc=test,dc=tc -D cn=rene,cn=Users,dc=test,dc=site -W "(cn=rene)" cn sAMAccountName

成功的。

如何配置 Apache 以正确地针对 Active Directory 进行身份验证?

答案1

在您的测试中,您有:

cn=rene,cn=Users,dc=test,dc=site

在您的配置中您有:

OU=Users,DC=test,DC=site

那么... 用户是 OU 还是 cn?看来这是你的问题。

相关内容