httpd身份验证 - LDAP组

时间:2014-06-29 01:58:34

标签: apache ldap active-directory-group

我有一个网站的受限制部分,我想限制为两个LDAP组。以下是httpd.conf中的相关行:

<AuthnProviderAlias ldap our-ldap>
  AuthLDAPBindDN CN=example,OU=example,OU=example,DC=example,DC=com
  AuthLDAPBindPassword LamePassword
  AuthLDAPURL ldaps://dc4.example.com:636/dc=example,dc=com?sAMAccountName?sub
  AuthLDAPGroupAttributeIsDN on
</AuthnProviderAlias>

<Directory /var/www/html/restricted>
  Order deny,allow
  Allow from all
  AuthBasicProvider our-ldap
  AuthType Basic
  AuthName "Restricted Files"
  Require ldap-group CN=group1,OU=example,OU=example,DC=example,DC=com
  Require ldap-group CN=group2,OU=example,OU=example,DC=example,DC=com
</Directory>

如果我注释掉那两个&#34;要求ldap-group&#34;线条,它完美无瑕,但任何LDAP用户,我都不想要。当我重新添加这些行时,尽管我是其中一个组的成员,但我无法进入,而ssl_error_log给了我这个:

[Sat Jun 28 21:34:53 2014] [error] [client 198.51.100.156] access to /restricted/restricted.html failed, reason: require directives present and no Authoritative handler.

我的LDAP服务器是Active Directory域控制器,因此用户名是 sAMAccountName ,DN是 distinguishedName ,组成员属性是成员,使用DN。

这是我正在运行的:

Server version: Apache/2.2.15 (Unix)
Server built:   Mar 20 2014 06:21:02

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您要求用户成为两个组的成员。你需要一个满足任何人。