У меня есть веб-приложение, настроенное в IIS 7 с проверкой подлинности Windows. Я могу пройти аутентификацию на машине через его полный URL-адрес с любого другого компьютера, и он использует правильный домен. Однако, когда я пытаюсь подключиться к машине из себя через полностью определенный домен (либо в другой службе, либо просто через URL-адрес в IE), приглашение входа в Windows пытается принудительно использовать компьютер в качестве домена, а не правильный домен для входа. Попытка указать домен с domain\username
или username@domain.com
терпит неудачу.
Следует отметить, что просмотр веб-приложения через localhost
на автомате работает, но используя полную site.company.com/webservice
URL-адрес стиля не работает на локальном компьютере, потому что домен входа неверен. Что я могу сделать, чтобы использовать правильный домен для входа?
Я пытался сделать то же самое. Получите доступ к веб-сайту в локальном IIS, используя полное доменное имя, и IIS постоянно сообщает, куда идти.
В любом случае, судя по моим поискам, вы должны отключить проверку обратной связи для локальных веб-сайтов IIS.
См. Следующие Страница поддержки Microsoft.
В случае если страница пропала, я сделал следующее (что он рекомендует в приведенном выше сообщении в блоге)
Надеюсь это поможет.
cmb ..
Это связано с функцией безопасности, известной как LoopbackCheck.
Сообщение об ошибке при попытке получить доступ к серверу локально, используя его полное доменное имя или псевдоним CNAME после установки пакета обновления 1 для Windows Server 2003: «Доступ запрещен» или «Ни один сетевой провайдер не принял указанный сетевой путь»
http://support.microsoft.com/kb/926642
Есть два разрешения:
Метод 1 (рекомендуется): создайте имена хостов локального центра безопасности, на которые можно ссылаться в запросе проверки подлинности NTLM. Для этого выполните следующие действия для всех узлов на клиентском компьютере:
В поле «Значение» введите CNAME или псевдоним DNS, который используется для локальных общих ресурсов на компьютере, и нажмите кнопку «ОК».
Примечание. Введите имя каждого хоста в отдельной строке.
Примечание. Если запись реестра BackConnectionHostNames существует как тип REG_DWORD, необходимо удалить запись реестра BackConnectionHostNames.
Закройте редактор реестра и перезагрузите компьютер.
Метод 2. Отключите проверку обратной связи аутентификации, установив для параметра реестра DisableLoopbackCheck в подразделе реестра HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Lsa значение 1. Чтобы установить для параметра реестра DisableLoopbackCheck значение 1, выполните следующие действия на клиентском компьютере:
Я могу сказать вам, основываясь на некотором опыте настройки SSO, что IE автоматически передаст билет Kerberos для входа в систему, только если сайт и клиент находятся в интрасети вместе или если сайт находится в доверенной зоне. Если IE видит http://site.company.com/webservice он будет предполагать, что сайт находится в Интернете и не будет передавать учетные данные для входа в систему.
По этой ссылке есть полезная информация о IIS, IE и Kerberos. http://blogs.msdn.com/b/friis/archive/2009/12/31/things-to-check-when-kerberos-authentication-fails-using-iis-ie.aspx
Мы обнаружили, что две вещи, которые позволяют разрешить полное доменное имя в интрасети, - это предоставление веб-серверу сертификата и использование SSL или добавление его в доверенную зону.
Надеюсь, это поможет в вашей настройке.