Как переопределить домен дайджест-аутентификации Apache?
У меня есть пассажир, выходящий на Apache. Пытаюсь сделать выборочную аутентификацию для моих URL выборочно. У меня есть следующий сценарий.
- Местоположение / должен быть дайджест аутентифицирован под царством Foo
- Местоположение / не нуждается в аутентификации
- Местоположение / a / b должно быть обработано, аутентифицировано под областью Бар
Это мой конфиг (более или менее):
<Location />
AuthName Foo
AuthType Digest
AuthDigestDomain /
AuthUserFile /etc/apache2/foo_digest.users
require valid-user
</Location>
<Location /a >
Allow from all
Satisfy Any
</Location>
<Location /a/b >
AuthName Bar
AuthType Digest
AuthDigestDomain /a/b
AuthUserFile /etc/apache2/bar_digest.users
require valid-user
<Location>
Вот результат:
- Местоположение / находится под дайджест-аутентификацией Foo
- Расположение / не находится под какой-либо аутентификацией
- Местоположение / a / b также не находится под какой-либо аутентификацией
Я довольно новичок в этом. Что я делаю неправильно?
1 ответ
В <Location /a/b>
блок, вам нужен Satisfy All
чтобы вернуться к поведению по умолчанию для этого места, в противном случае он использует Satisfy Any
от <Location /a>
, позволяя всем хостам, которые соответствуют основанным на хосте Allow
/Deny
директивы.