Windows аутентификация не работает в ie7 - PullRequest
12 голосов
/ 07 сентября 2011

Очень нужна помощь в этом, я много чего перепробовал и исчерпал идеи.

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

настройка сервераэто windows 2008 R2, iis 7.5 sql 2008 экспресс.Я аутентифицируюсь, используя активную директорию.

в Chrome сайт загружается, и автоматически регистрирует меня при распознавании моего имени.

При просмотре сайта в IE7 ответ: "401 - не авторизован: Доступ запрещен из-за неверных учетных данных. У вас нет разрешения на просмотр этого каталога или страницы с использованием предоставленных вами учетных данных. "

Я пробовал следующее:

  • в iis установлен только для проверки подлинности Windows (остальные отключены)
  • Переместил NTLM в начало списка поставщиков
  • , предоставив полный контроль над веб-каталогом Everyone / IUSR / Network Service/ DeafultAppPool ... список продолжается.
  • проверено, то есть настройки (проверено включение встроенной аутентификации Windows)
  • аутентификация пользователя в IE7 установлена ​​на "автоматический вход только в зоне интрасети".
  • установить в web.config следующее:
    • <anonymousIdentification enabled="false" />
    • <authentication mode="Windows" />
    • <identity impersonate="false" />
  • Выполнено: cscript adsutil.vbs set w3svc/NTAuthenticationProviders "NTLM"

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

Что не так?как я могу это исправить?

Большое спасибо

Ответы [ 3 ]

20 голосов
/ 11 сентября 2012

Из артикула, http://technet.microsoft.com/en-us/library/cc754628(v=ws.10).aspx:

Установкой по умолчанию для проверки подлинности Windows является согласование. это настройка означает, что клиент может выбрать соответствующую защиту Поддержка провайдера. Для принудительной аутентификации NTLM необходимо изменить значение элемента под элемент в файле ApplicationHost.config.

IE использует Kerberos и не использует NTLM, например, Chrome и Firefox. Для принудительной проверки подлинности NTLM в IIS7.5 выполните следующие действия:

  1. Выберите свой сайт.
  2. Двойной клик аутентификации.
  3. Выберите «Аутентификация Windows» (убедитесь, что она включена).
  4. Нажмите «Поставщики ...» в правом столбце.
  5. Выберите NTLM и нажмите «Вверх».

enter image description here

5 голосов
/ 18 мая 2012

Были такие проблемы с одним из веб-приложений в аналогичной среде. Оказалось, что IE пытается аутентифицировать с помощью Kerberos, в то время как Kerberos был отключен в настройках аутентификации IIS. Chrome падает до NTLM после неудачной попытки Kerberos, поэтому веб-приложение в Chrome работало нормально.

Решение довольно тривиально.

1. Open IIS manager
2. Open "Authentification" node
3. Right click on 'Windows Authentification' item.
4. Select "Advanced settings" in context menu.
5. Switch off kernel mode (it's not compartible with Kerberos provider.)
6. Repeat p.1-3.
7. Select "Providers..." in context menu
8. Add Kerberos to enabled providers list
9. Restart IIS
1 голос
/ 19 апреля 2013

У меня была такая же проблема с аутентификацией Windows с олицетворением на Windows 2008 R2 iis 7.5. Я следовал за другими 2 решениями здесь без какого-либо успеха. Но после применения этих изменений я снова переключился в режим ядра, и он заработал. Я не знаю, почему это работает, но я успешно выполнил эту процедуру в двух отдельных виртуальных каталогах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...