У меня есть сайт asp.net, который работает на IIS7 в Windows Server 2008 R2, мой сайт находится в узле «Веб-сайт по умолчанию» в узле «Сайты».
На вкладке аутентификации моего сайта у меня есть:
Все они включены - я не устанавливал их сам, это сделал другой разработчик из команды. Все в одной сети могут получить доступ к сайту без каких-либо проблем, за исключением одного пользователя, который находится в другом домене - не знает, доверенный он или нет.
Когда этот пользователь в другом домене пытается получить доступ к сайту, IE отображает диалог безопасности с запросом учетных данных. Мой сайт не использует учетные данные Windows, поэтому мне действительно не нужно знать имя пользователя и пароль Windows для посетителя. Диалог, отображаемый IE, не блокирует доступ пользователя к сайту, фактически, независимо от того, что он делает (введите некоторые учетные данные бла-бла или даже отмените диалог), сайт все равно будет открываться, как задумано, и она будет иметь возможность использовать различные функции сайта.
Мой вопрос: каковы правильные настройки, которые я должен использовать, чтобы заставить IE не отображать всплывающее окно безопасности?
Поскольку отмена позволяет ей по-прежнему просматривать сайт, я уверен, что это одна из зависимостей на странице, которая требует аутентификации. Это может быть .css, .js или, может быть, реклама, или что-то, что ее среда добавляет на страницу через прокси-сервер.
Вы можете проверить это, предоставив ей страницу test.html, на которой просто написано «Тестирование». Если она сможет повторить это без подсказки, тогда моя теория верна. Если моя теория верна, просмотрите страницу, чтобы узнать, какой файл запрещен, и проследите его, чтобы выяснить, почему.
Поскольку вы хотите разрешить только анонимный доступ, вы можете удалить все другие формы аутентификации, чтобы исключить это. Однако я думаю, что это нечто большее.
(Четыре года спустя..)
Очень надеюсь, что вы все еще не ждете ответа на этот вопрос! Но для всех других читателей с той же проблемой вот что нужно проверить.
На сервере IIS с помощью проводника найдите каталог Windows, в котором хранятся файлы вашего веб-сайта, щелкните правой кнопкой мыши, выберите «Свойства», перейдите на вкладку «Безопасность» и убедитесь, что на ВАШЕМ ИМЯ_СЕРВЕРА \ Пользователи установлены как минимум некоторые разрешения на эту папку.
В нашем случае мы обнаружили, что разработчики могут входить на веб-сайт IIS, но некоторые другие пользователи просто получали бесполезное диалоговое окно «Безопасность Windows».
Мы подумали, что это проблема в нашем web.config или в методе аутентификации на сайте IIS.
Нет.
Просто мы создали каталог на нашем сервере IIS, которому каким-то образом были предоставлены разрешения на чтение и запись для администраторов на этом конкретном сервере, но не давали никаких разрешений обычным пользователям.
Обидно, что даже сейчас, в 2015 году, IIS 7.5 не выдает какого-либо полезного сообщения об ошибке при возникновении подобных проблем.
Всплывающее диалоговое окно безопасности Windows, которое снова появляется, когда вы нажимаете ОК, совершенно не помогает ...