Аутентификация домена Google Chrome и пароли открытого текста в заголовке HTTP

5638
ahsteele

В ответе на Аутентификацию Windows с помощью Google Chrome указывается, что Chrome еще не поддерживает автоматическую аутентификацию NTLM, что означает, что пользователям, проходящим аутентификацию на сайтах с использованием аутентификации Windows, предлагается ввести логин. Что раздражает, но не проблема. Проблема заключается в том, что пароль пользователя затем отправляется в виде открытого текста на сайт аутентификации.

Я создал быстрый скрипт ASP.NET, который извлекает пароль из AUTH_PASSWORD в коллекции Request.ServerVariables. И Safari, и Opera запрашивают учетные данные пользователя, но ни один из них не отправляет пароль в виде открытого текста в заголовке HTTP. Я нахожу это особенно странным, поскольку Chrome, как Safari, основан на WebKit.

В чем разница между способом проверки подлинности Chrome по сравнению с другими браузерами и почему он отправляет пароль на сайт таким образом?

1

4 ответа на вопрос

1
harrymc

NTLM в настоящее время переносится на Chrome. Смотрите это . Просто дождитесь следующей версии.

0
bdonlan

Одна из возможностей заключается в том, что Chrome может вообще не поддерживать NTLM, и Chrome просто возвращается к аутентификации HTTP BASIC . Можете ли вы получить точные заголовки, используемые с wireshark или аналогичным?

Мой опыт работы с Wireshark ограничен, но я предполагаю, что не смогу увидеть аутентификацию, потому что сайт, на котором я работаю, использует SSL. Если есть способ, дайте мне знать. Я думал о том, чтобы просто отключить базовую аутентификацию на сервере и посмотреть, сможет ли Chrome все еще туда попасть. ahsteele 14 лет назад 0
0
grawity

В ответ на ваш комментарий к ответу bdonlan:

Я предполагаю, что не смогу увидеть аутентификацию, потому что сайт, на котором я работаю, использует SSL.

Отрыжка прокси инструмент позволяет просматривать (и даже модификации) HTTP запросов и ответов, и он может действовать как HTTPS прокси тоже. (Это может работать или не работать, в зависимости от того, как Chrome использует HTTPS-прокси.)

0
dlux

Из того, что я могу сказать через Wireshark, Chrome поддерживает NTLM-аутентификацию. Он не поддерживает единую регистрацию, передавая существующие учетные данные.

Вот почему поле AUTH_PASSWORD пустое.

Таким образом, Safari и Opera поддерживают единый вход, поэтому AUTH_PASSWORD остается пустым при аутентификации в этих браузерах? ahsteele 14 лет назад 0

Похожие вопросы