Назад | Перейти на главную страницу

Apache LDAP auth: запрещен все время

Вот мой конфиг (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», но теперь эта группа у меня работает.