Заголовки NTML не отправляются Firefox или IE - PullRequest
0 голосов
/ 09 июня 2011

В настоящее время я разрабатываю приложение ASP.NET и хочу получить имя пользователя и рабочую станцию ​​текущего пользователя / запроса.
Я хочу использовать NTLM и Authorization с HTTP-заголовками WWW-Authenticate: NTLM.

Я включил эти настройки в Firefox 4:

network.negotiate-auth.trusted-uris = http://localhost
network.negotiate-auth.delegation-uris = http://localhost
network.automatic-ntlm-auth.trusted-uris = http://localhost
network.ntlm.send-lm-response = true

Но я не получаю заголовок авторизации в Firebug или в моем приложении (используя Request.Headers).
Я также пытался с IE 9, но он тоже не отправляет.

Я что-то здесь упускаю?

Я думал, что они отправляются автоматически с каждым запросом, как только я включил его для доверенного Uris, и они отправляются автоматически в IE, по крайней мере, в интрасетях.

Приложение ASP использует проверку подлинности с помощью форм, и оно должно оставаться в качестве запасного варианта.

Ответы [ 2 ]

2 голосов
/ 07 августа 2011

Браузер отправляет заголовки NTLM / Negotiate только тогда, когда он получает ошибку 401 с соответствующим заголовком WWW-Authenticate (NTLM и / или Negoriate). Затем браузер молча делает еще один запрос с заголовками, которые вы ищете:

  • В случае NTLM перед этим тихим запросом вам будет предложено ввести логин / пароль. Затем, если браузер снова получит ошибку 401, снова появится всплывающее окно логина / pwd. И это будет повторяться до тех пор, пока не будут нажаты правильные учетные данные или кнопка Отмена. Каждый запрос от второго, приложение будет получать заголовки аутентификации.
  • В случае Negotiate вам будет предложено ввести логин / пароль, только если браузер не смог вас авторизовать. Остальное такое же, как и для NTLM.

В любых других запросах эти заголовки не отправляются. А также когда анонимная аутентификация включена и / или Windows отключена для запрашиваемого ресурса.

0 голосов
/ 09 июня 2011

Если в IIS включена анонимная аутентификация, она будет использовать ее по умолчанию. Для использования NTLM необходимо отключить анонимную аутентификацию.

...