Как переопределить домен дайджест-аутентификации Apache?

У меня есть пассажир, выходящий на Apache. Пытаюсь сделать выборочную аутентификацию для моих URL выборочно. У меня есть следующий сценарий.

  1. Местоположение / должен быть дайджест аутентифицирован под царством Foo
  2. Местоположение / не нуждается в аутентификации
  3. Местоположение / 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>

Вот результат:

  1. Местоположение / находится под дайджест-аутентификацией Foo
  2. Расположение / не находится под какой-либо аутентификацией
  3. Местоположение / a / b также не находится под какой-либо аутентификацией

Я довольно новичок в этом. Что я делаю неправильно?

1 ответ

В <Location /a/b> блок, вам нужен Satisfy All чтобы вернуться к поведению по умолчанию для этого места, в противном случае он использует Satisfy Any от <Location /a>, позволяя всем хостам, которые соответствуют основанным на хосте Allow/Deny директивы.

Другие вопросы по тегам