Вот мой конфиг (httpd 2.4):
<AuthnProviderAlias ldap zzzldap>
LDAPReferrals Off
AuthLDAPURL "ldaps://ldap.zzz.com:636/o=zzz.com?uid?sub?(objectClass=*)"
AuthLDAPBindDN "uid=zzz,ou=Applications,o=zzz.com"
AuthLDAPBindPassword "zzz"
</AuthnProviderAlias>
<Location /svn>
DAV svn
SVNParentPath /DATA/svn
AuthType Basic
AuthName "Subversion repositories"
SSLRequireSSL
AuthBasicProvider zzzldap
<RequireAll>
Require valid-user
Require ldap-attribute employeeNumber=12345
Require ldap-group cn=yyy,ou=Groups,o=zzz.com
</RequireAll>
</Location>
В Require valid-user
это работа. Но ldap-attribite, ldap-filter, ldap-group не работают - denied
в логах все время. Я потратил много времени, но не могу понять, что происходит. Это пример моих логов:
[Tue Sep 25 16:42:26.772006 2012] [authz_core:debug] [pid 23087:tid 139684003014400] mod_authz_core.c(802): [client 1.1.1.1:52624] AH01626: authorization result of Require valid-user : granted
[Tue Sep 25 16:42:26.772014 2012] [authz_core:debug] [pid 23087:tid 139684003014400] mod_authz_core.c(802): [client 1.1.1.1:52624] AH01626: authorization result of Require ldap-attribute employeeNumber=12345: denied
Я проверил всю информацию с помощью ldapsearch: есть действующее имя пользователя, идентификатор сотрудника и прочее ...
Попробуйте так:
<AuthnProviderAlias ldap zzzldap>
LDAPReferrals Off
AuthLDAPURL "ldaps://ldap.zzz.com:636/o=zzz.com?uid?sub?(objectClass=*)"
AuthLDAPBindDN uid=zzz,ou=Applications,o=zzz.com
AuthLDAPBindPassword zzz
</AuthnProviderAlias>
<AuthzProviderAlias ldap-group ldap-group-yyy cn=yyy,ou=Groups,o=zzz.com>
AuthLDAPURL "ldaps://ldap.zzz.com:636/o=zzz.com"
AuthLDAPBindDN uid=zzz,ou=Applications,o=zzz.com
AuthLDAPBindPassword zzz
Require ldap-group cn=yyy,ou=Groups,o=zzz.com
#Require ldap-attribute employeeNumber=12345
</AuthzProviderAlias>
<Location /svn>
DAV svn
SVNParentPath /DATA/svn
AuthType Basic
AuthName "Subversion repositories"
SSLRequireSSL
AuthBasicProvider zzzldap
<RequireAll>
Require valid-user
Require ldap-group-yyy
</RequireAll>
</Location>
Я не уверен насчет части «Требовать ldap-attribute employeeNumber = 12345», но теперь эта группа у меня работает.