3

Клянусь, я создал вопрос об этом несколько недель назад, но, возможно, я удалил его, так как не могу найти его где-либо.

  • ASP.NET 4.0
  • IIS6
  • Windows Server 2003
  • Интранет-сайт с использованием аутентификации Windows
  • Три сервера с одинаковой версией ОС и IIS, на каждом из которых размещена версия для одного разработчика, рабочая версия и версия для аварийного восстановления (DR).

Теперь рассмотрим этот порядок событий:

  • Пользователь начинает с IE8 и любых версий FF и Chrome
  • Пользователь может получить доступ только к сайту DR. При входе в систему отказывается аутентифицировать их с помощью своих учетных данных Windows для других сайтов, поэтому они не могут войти
  • Они устанавливают свежую копию Windows 7 и обновляются до IE9. Теперь они могут получить доступ к сайтам разработчиков и DR в IE9. Они могут получить доступ ко всем трем сайтам в Chrome.

Я проверил следующее в настройках интернета:

  • Автоматический вход с текущим именем пользователя и паролем
  • Включить встроенную проверку подлинности Windows

Я наткнулся на это в MSKB: http://support.microsoft.com/kb/215383

Свойство метабазы NTAuthenticationProviders не определено, поэтому IIS должен по умолчанию использовать Negotiate,NTLM .

Другие детали:

  • Это начало происходить всего несколько недель назад. Пользователь смог получить доступ к нашему сайту нормально с IE8.
  • Другие пользователи не имеют этой проблемы.

Кто-нибудь знает, что может быть причиной того, что его браузер не отправляет аутентификационную информацию на сервер? Вот скриншот окна аутентификации, которое видит пользователь:

Дополнительные детали

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

Event Type:    Success Audit
Event Source:   Security
Event Category: Logon/Logoff 
Event ID:   538
Date:       7/14/2014
Time:       1:27:37 PM
User:       ?\?
Computer:   ?
Description:
User Logoff:
    User Name:  ?
    Domain:     ?
    Logon ID:       (0x0,0x3F99497F)
    Logon Type: 3

Event Type: Success Audit
Event Source:   Security
Event Category: Logon/Logoff 
Event ID:   540
Date:       7/14/2014
Time:       1:27:14 PM
User:       ?\?
Computer:   ?
Description:
Successful Network Logon:
    User Name:  ?
    Domain:     ?
    Logon ID:       (0x0,0x3F997233)
    Logon Type: 3
    Logon Process:  NtLmSsp 
    Authentication Package: NTLM
    Workstation Name:   ?
    Logon GUID: -
    Caller User Name:   -
    Caller Domain:  -
    Caller Logon ID:    -
    Caller Process ID: -
    Transited Services: -
    Source Network Address: ?
    Source Port:    16220

1 ответ1

1

Включение автоматической идентификации NTLM производится следующим образом.

Internet Explorer

  • Из IE откройте "Настройки Интернета" через «IE -> Сервис -> Свойства обозревателя» или через Панель управления -> Свойства обозревателя.
  • Перейти на вкладку Безопасность
  • Нажмите Сайты
  • Нажмите Локальный Интранет или Доверенные сайты
  • Добавьте свои сайты в список
  • При необходимости снимите флажок «Требовать проверку сервера (https:) для всех сайтов в этой зоне»
  • Нажмите Закрыть
  • Нажмите Пользовательский уровень
  • Прокрутите вправо до конца в разделе «Аутентификация пользователя / вход в систему» и убедитесь, что установлен флажок "Автоматический вход в систему с использованием текущего имени пользователя и пароля".
  • Нажмите ОК

Гугл Хром

Google Chrome на самом деле использует те же настройки, что и IE, то есть приведенную выше Панель управления -> Настройки обозревателя, поэтому больше ничего не нужно делать.

Fire Fox

  • Откройте Firefox и введите «about:config» в адресную строку (без кавычек)
  • В поле «Фильтр» введите network.automatic-ntlm-auth.trusted-uris
  • Дважды щелкните выше и введите URL сайтов или целых доменов, разделенных запятыми
  • если ваши сайты не используют полное доменное имя (например, http://intranet вместо http://intranet.domain.com), выполните также:
    • Установите для network.automatic-ntlm-auth.allow-non-fqdn значение true
    • Установите для network.negotiate-auth.allow-non-fqdn значение true

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .