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

Объедините поставщиков аутентификации Apache (файл и LDAP)

Я пытаюсь совместить оба основных файл и LDAP аутентификация пользователя в файле Apache .htaccess, но я не могу заставить оба метода работать одновременно. Либо одно, либо другое.

Вот моя установка:

.htaccess

AuthType Basic
AuthBasicProvider file ldap
AuthUserFile <path>/passwd
AuthGroupFile <path>/group
AuthLDAPURL "ldap://ldap.<my-domain>.com/ou=People,dc=<my-domain>,dc=com?uid"
AuthLDAPGroupAttribute memberUid
AuthLDAPGroupAttributeIsDN off
<Limit GET POST PUT>
        require group admin ldap-group cn=web,ou=Group,dc=<my-domain>,dc=com
</Limit>

пароль

test:jhhLuf0DfajXk

группа

admin:test

Когда я изменяю предельные значения и удаляю или меняю порядок настроек группы, я заставляю работать того или другого поставщика аутентификации. Мне кажется, что с моей стороны проблема с синтаксисом, но я не могу ее понять.

Честно говоря, группа файл можно было отбросить все вместе, но я попробовал, и это не повлияло. Так что я включаю его, если он имеет какое-то отношение.

Кто-нибудь может указать мне правильное направление? Эта проблема очень похожа на apache auth: комбинация LDAP и htpasswd но не совсем то же самое.

Заранее спасибо за вашу помощь.

Я смог решить свой вопрос. Он в значительной степени прикреплен к действительный пользователь вариант для обязательный директива.

Require valid-user

Документацию можно найти здесь: http://httpd.apache.org/docs/2.0/mod/core.html#require

Как упоминалось в моем первоначальном вопросе, файл группа больше не было требованием. Как только я отбросил эту директиву и последующие обязательный директива, которая его сопровождала, действительный пользователь вариант вроде бы решил проблему. Моя работа .htaccess файл показан ниже.

.htaccess

AuthName "Auth Test"
AuthType Basic
AuthBasicProvider file ldap
AuthUserFile <path>/passwd

AuthLDAPURL "ldap://ldap.<my-domain>.com/ou=People,dc=<my-domain>,dc=com?uid"
AuthLDAPGroupAttribute memberUid
AuthLDAPGroupAttributeIsDN off
Require valid-user

И файл, и LDAP базовая аутентификация работает и прекрасно сочетается с этой настройкой.

НОТА

Необходимо включить следующие модули Apache:

  • authnz_ldap
  • ldap

Мой /etc/apache2/mods-enabled включает в себя:

authnz_ldap.load -> ../mods-available/authnz_ldap.load
ldap.conf -> ../mods-available/ldap.conf
ldap.load -> ../mods-available/ldap.load