Я создал веб-сайт asp.net, доступ к которому будет осуществляться из клиентских браузеров, работающих в том же домене.
Я разместил сайт на IIS 7.5
Я отключил анонимную проверку подлинности и включил проверку подлинности Windows в представлении функций в разделе IIS.
Я добавил в файл web.config для сайта следующее:
<authorization>
<allow users="group\BizTalk Application Users" />
<deny users="?" />
</authorization>
Я могу открыть веб-сайт из браузера, когда я работаю на сервере, на котором размещен сайт. Однако, если я затем войду на другой сервер в том же домене, используя те же учетные данные, при попытке перейти на сайт я получаю ошибку http 403.
Не получив удовольствия от вышесказанного, я попытался отключить всю безопасность на сайте. Я отключил проверку подлинности Windows и включил анонимную проверку подлинности, но все равно получаю ту же ошибку. Я проверил журнал IIS на сервере и увидел, что субкод для 403 - 18.
Я запустил скрипач на клиенте и увидел следующий запрос / ответ:
Запрос
GET http://tst-bts01/Vasanta.Int.SEOPSupportApp/Orders.aspx HTTP/1.1
Accept: image/jpeg, image/gif, image/pjpeg, application/x-ms-application, application/xaml+xml, application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms- powerpoint, application/msword, */*
Accept-Language: en-GB
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET4.0C; .NET4.0E)
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
Host: tst-bts01
отклик
HTTP/1.1 403 Forbidden
Server: Microsoft-IIS/7.5
X-Powered-By: ASP.NET
Date: Tue, 29 Jan 2013 10:24:34 GMT
Content-Length: 0
Я пробовал изменить пул приложений, в котором размещен сайт. Я пробовал отключить вызов корпоративного прокси (isa server), идеи заканчиваются.
Кто-нибудь может сказать мне, что я сделал не так?
Спасибо, Роб.
Ошибка была 403,18. Похоже, это было вызвано тем, что я настраивал собственные сообщения об ошибках для сбоев авторизации.
Вам необходимо прочитать журналы веб-сервера; по умолчанию они хранятся в %SYSTEMDIR%\LogFiles\
.
Строка, соответствующая указанному выше запросу, включает код ошибки подстатуса в дополнение к статусу 403; эти коды подробно объяснено на сайте поддержки Microsoft.
Возможное решение - установить «ASP.NET v4.0» в качестве пула приложений в IIS.
ASP.NET версии 4.0
ASP.NET v4.0 классический
Для установки откройте командную строку (нажмите Windows + R, введите cmd и нажмите ENTER).
Введите cd C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ и нажмите ENTER.
Введите aspnet_regiis.exe -ir и снова нажмите ENTER.
Это позволит вам установить платформу .NET в IIS.
После успешной установки Закройте командную строку.
Теперь вам нужно изменить пул приложений для вашего сайта.
Разверните узел «Сайты» и найдите сайт, который хотите изменить (выберите его).
Справа вы заметите «Основные настройки…» под текстом «Изменить сайт». Щелкните здесь, и должно появиться новое окно.
Выберите пул приложений .NET 4 с помощью кнопки «Выбрать…» и нажмите «ОК». Перезагрузите сайт.