У меня есть веб-сайт, работающий на IIS, использующий проверку подлинности Windows.
На уровне веб-сайта в разделе «Аутентификация» у меня есть только Windows Authentication
(NTLM только как провайдер) включен.
На уровне виртуального каталога в разделе «Аутентификация» у меня есть ASP.NET Impersonation
и Windows Authentication
(NTLM только как провайдер) включен. (Отключение ASP.NET Authentication
здесь ничего не меняет)
В привязках к сайту у меня есть:
Type | IP Address | Port | Host Name
--------------------------------------------------------------
http | All Unassigned | 80 | localhost
http | All Unassigned | 80 | myiisserver
http | All Unassigned | 80 | myiisserver.mydomain.com
http | All Unassigned | 80 | myapp.mydomain.com
Это единственный веб-сайт, который у меня запущен на сервере IIS.
Пул приложений, в котором запущен веб-сайт и виртуальный каталог, одинаков и использует NetworkService в качестве идентификатора.
На сервере IIS и на других рабочих станциях в сети:
В зоне доверенных сайтов, Automatic logon using current user name and password
выбран на сервере IIS и других рабочих станциях.
В Свойства обозревателя -> Дополнительно, Enable Integration Windows Authentication
был включен на сервере IIS и других рабочих станциях.
На других рабочих станциях в сети:
На сервере IIS:
Обновление указанного ниже раздела реестра на сервере, на котором запущен IIS, устранило проблему!
В редакторе реестра найдите и щелкните следующий раздел реестра:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0
Щелкните правой кнопкой мыши MSV1_0
, указать на Новый, а затем щелкните Многострочное значение.
Тип BackConnectionHostNames
, а затем нажмите клавишу ВВОД.
Щелкните правой кнопкой мыши BackConnectionHostNames
, а затем щелкните Изменить.
В поле «Значение» введите имя хоста или имена хостов для сайтов, находящихся на локальном компьютере (например, myapp.mydomain.com), а затем щелкните OK
.