Для проверки заголовков необходимо выполнить проверку на сервере, который требует проверки подлинности. Клиент не будет отправлять заголовок Authorization
, пока сервер не запросит его, поскольку клиент не будет знать, какой метод проверки подлинности требуется серверу (базовый или дайджест).
HTTP-аутентификация выполняется в двух запросах:
Сначала отправляется запрос без заголовка Authorization
.
Затем сервер отвечает WWW-Authenticate
, который сообщает клиенту, как проходить аутентификацию. Это включает в себя имя области и метод аутентификации (опять же, это простой или дайджест)
Затем клиент отправляет новый запрос с дополнительным заголовком Authorization
. В случае базовой аутентификации этот заголовок просто кодируется user:pass
base64, как вы говорите:
Authorization: Basic dXNlcjpwYXNz
Теперь пароль виден при передаче, если вы не используете https. Лучшим вариантом является дайджест-аутентификация , где содержимое WWW-Authenticate
и Authorization
лучше всего объясняется в статье Википедии . :)