Ошибка при настройке требует SSL=true Asp.net
Я работаю в приложении Asp.net с проверкой подлинности форм. В моем файле web.config я установил свойство requiressl =true.
Я без проблем работал над разработкой, но при развертывании в моей тестовой среде я получил следующую ошибку:
Приложение настроено на выдачу безопасных файлов cookie. Эти куки-файлы требуют, чтобы браузер отправлял запрос по SSL (протокол https). Тем не менее, текущий запрос не по SSL."
Ошибка возникает на
в System.Web.Security.FormsAuthentication.SetAuthCookie(строка userName, логическое createPersistentCookie, String strCookiePath) в System.Web.Security.FormsAuthentication.RedirectFromLoginPage
Итак, мои вопросы: почему FormsAuthentication.SetAuthCookie устанавливает cookie через http? и как я могу установить, чтобы он был над https??
1 ответ
Я думаю, что вы должны настроить свой IIS, чтобы принимать SSL-соединения для вашего сайта.
https://docs.microsoft.com/en-us/iis/manage/configuring-security/how-to-set-up-ssl-on-iis
Обратите внимание, если вы активируете SSL для своего сайта и если у вас нет действующего SSL-сертификата, пользователи увидят предупреждение при открытии вашего сайта: переходите на этот сайт (не рекомендуется). И большую часть времени люди не выбирают эту опцию.
И это может быть сложнее. Для меня вы должны купить SSL-сертификат у провайдера. Вы должны установить его на свой сервер. Чтобы гарантировать, что ваши клиенты будут просматривать ваш сайт по адресу https: //, вы должны перенаправить любое соединение с вашим сайтом на https: //.
Вот ссылка, которая очень полезна:
https://www.namecheap.com/support/knowledgebase/article.aspx/9953/38/iis-redirect-http-to-https