Должен ли сайт, требующий аутентификации, всегда отправлять заголовок ответа WWW-Authenticate HTTP?

Недавно я пытался получить доступ к сайту (серверу авторов AEM), который всегда требует аутентификации. Я пытался использовать обычную аутентификацию в URL-адресе в адресной строке браузера следующим образом: http://admin:admin@localhost:4502/

Но когда я попробовал это, я получил следующее подтверждение безопасности (в Firefox 38.0.1):

Нажатие "Да" привело меня на страницу входа без аутентификации, по-видимому, игнорируя основные учетные данные аутентификации, которые я отправил. Следующие вопросы (и комментарий к ним) помогли мне понять, что это происходит потому, что сервер автора AEM не запрашивает учетные данные для аутентификации - он не отправляет заголовок ответа WWW-Authenticate HTTP:

Следовательно, браузер на самом деле не отправлял базовые учетные данные, которые я указал в адресной строке.

Так что это привело меня к вопросу, почему сервер-автор AEM, который всегда требует аутентификации, не отправляет заголовок HTTP WWW-Authenticate. Но это вызывает больший вопрос:

Для сайта, который всегда требует аутентификации, разумно ли ожидать, что этот сайт будет всегда отправлять заголовок ответа WWW-Authenticate, или есть веские причины не включать этот заголовок, даже если аутентификация действительно требуется?

1 ответ

Существуют различные типы аутентификации, которые приложение может реализовать и требовать. AEM не требует базовой аутентификации (кроме консоли aem felix). Вы не можете ожидать, что вы будете напрямую авторизованы с помощью метода аутентификации, который не поддерживается, не требуется или в настоящее время не настроен. Вот почему браузер уведомляет вас, что для этой страницы аутентификация не требуется. AEM использует html страницу с формой с именем пользователя и паролем, и запрос на аутентификацию отправляется на сервер, где слинг обрабатывает его дальше. Подробнее об этой теме читайте в документации по основам cq или документации по аутентификации слинга.

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