Я пытаюсь совместить оба основных файл и 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:
Мой /etc/apache2/mods-enabled
включает в себя:
authnz_ldap.load -> ../mods-available/authnz_ldap.load
ldap.conf -> ../mods-available/ldap.conf
ldap.load -> ../mods-available/ldap.load