Почему "requireSSL = 'true'" выдает ошибку IIS - PullRequest
0 голосов
/ 16 мая 2019

Я работаю над платформой MVC в ASP.NET, где я пытался получить доступ к приложению, но не смог пройти мимо экрана входа в систему, после чего он продолжал выдавать ошибку IIS, не найденную. После обходного пути я обнаружил, что у меня была эта строка: httpCookies httpOnlyCookies="true" requireSSL="true" в моем файле web.config, который блокировал доступ. Может ли кто-нибудь помочь мне понять проблему и концепцию здесь? Спасибо уже.

Я смог получить доступ к сайту после удаления только части requireSSL.

Web-config

httpCookies httpOnlyCookies="true" requireSSL="true"

Запуск приложения Global.asax:

if (ServicePointManager.SecurityProtocol.HasFlag(SecurityProtocolType.Tls12) == false)
{
   ServicePointManager.SecurityProtocol = 
      ServicePointManager.SecurityProtocol | SecurityProtocolType.Tls12;
}

Я думаю, что часть кода в global.asax Application Start может быть причиной проблемы, но я не уверен в этом.

1 Ответ

0 голосов
/ 16 мая 2019

Веб-сайты используют файлы cookie для хранения информации между запросами страниц или сеансами просмотра.

Обратный вызов от внешнего поставщика на ваш сайт содержит маркеры безопасности (httpCookies), которые разрешают доступ к вашему сайту и содержат информацию о пользователе.

Если кому-то удастся украсть чужой файл cookie для аутентификации для веб-сайта, он может выполнить все действия, на которые он способен.

Передача этой информации по HTTPS для предотвращения перехвата, когда эта информация передается по Интернету, важна

Вы можете остановить доступ скрипта ко всем файлам cookie на вашем сайте, добавив простой флаг: HttpOnly.Вы можете установить этот флаг в файле web.config следующим образом:

<httpCookies domain="" httpOnlyCookies="true" requireSSL="false" />

Так что если вы напишите requireSSL="true" в своем Web.config Это заставит внешнего провайдера выполнять обратные вызовы на ваш сайт, используя HTTPS только.

@ Vishesh Pandita В вашем случае вы пытаетесь получить доступ к сайту только по HTTP.Так возникла ошибка HTTP 403 - 403.4 Запрещено: требуется SSL. Это означает, что страница, к которой вы пытаетесь получить доступ, защищена с помощью уровня защищенных сокетов (SSL).

Решение: для просмотра страницы необходимо включитьSSL (Secure Sockets Layer), набрав "https://" вместо" http://" в начале адреса, который вы пытаетесь достичь.«S» в «https» указывает защищенный сайт.

Миграция для HTTP на HTTP

источник: Профессиональный ASP.NET MVC 5

...