аутентификация httpd — группа LDAP

#apache #ldap #active-directory-group

#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>
  

Если я закомментирую эти две строки «Требуется ldap-group», это работает безупречно, но с любым пользователем 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, DNS — distinctedname, а атрибуты участника группы — member, используя DNs.

Вот что я запускаю:

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

Есть мысли?

Ответ №1:

Вы требуете, чтобы пользователь был членом обеих групп. Вам нужно удовлетворить любой.