Файлы cookie не устанавливаются в браузере для ASP.NET веб-сайт
Я работаю над созданием системы управления судебными делами с использованием ASP.net SQL Server 2012 & C#. У меня есть это приложение, размещенное в локальной интрасети IIS в системе windows 10 pro. Я использую .Net версии 4.0.
<compilation debug="true" targetFramework="4.0"/> <httpRuntime requestValidationMode="2.0" /> <pages enableEventValidation="true" validateRequest="false" controlRenderingCompatibilityVersion="4.0" clientIDMode="AutoID">
До сих пор все работало так, как ожидалось, в системе разработки и на производственном сервере. Проблема в том, что теперь при входе в систему приложение создает файлы cookie на странице входа в систему, но как только оно достигает страницы панели мониторинга, файлы cookie исчезают/удаляются во всех основных браузерах. Но на моей машине dev эта проблема возникает только на Edge &Explorer 11, другие браузеры загружают их правильно.
С тех пор как я переместил это приложение на производственный сервер Win 10 Pro, я столкнулся с этой проблемой, ранее она была размещена на Win 7 Pro.
Что я уже пробовал:
Я попытался установить файлы cookie на самой странице панели мониторинга, передав ей данные пользователя для входа в систему в зашифрованном виде в строке запроса. но куки-файлы просто не остаются в браузере.
Richard Deeming
"... Win 10 Pro production server ..."
Windows 10-это не серверная ОС. Он намеренно ограничен 10 одновременными подключениями, чтобы вы не могли использовать его как таковой. Вы должны использовать правильную серверную ОС для размещения вашего производственного сайта.
"... передавая ему данные пользователя для входа в систему в зашифрованном виде в строке запроса ..."
Не делай этого. Учетные данные для входа должны быть переданы в POST-запросе на вашу страницу входа, чтобы предотвратить кэширование. На странице входа в систему должен проверить учетные данные и установить cookie проверки подлинности. Затем модуль проверки подлинности форм должен проверять этот файл cookie при каждом последующем запросе. Все должно подаваться по протоколу HTTPS.
Используйте инструменты разработчика Вашего браузера, чтобы проверить сетевые запросы, чтобы увидеть, если вы можете определить, что происходит не так. Одной из возможных причин может быть установка файла cookie аутентификации со страницы HTTPS и последующее перенаправление на страницу HTTP, а не обслуживание всего сайта по протоколу HTTPS.
Christopher Fernandes
Я передаю не учетные данные для входа в строку запроса, а ключ аутентификации в зашифрованном формате.
Richard Deeming
Опять же, не делайте этого. Ключ аутентификации должен храниться в файле cookie.
Все, что вы введете в строку запроса, будет отображаться в истории браузера, ваших лог-файлах, лог-файлах провайдера вашего пользователя...
(Если вы используете HTTPS, то провайдер не сможет его увидеть. Но моя точка зрения остается в силе.)
Christopher Fernandes
ладно
Christopher Fernandes
Какая версия Windows сервер будет лучше всего для размещения веб-форм на & ASP.NET ; ASP.NET в MVC-приложения и SQL-сервер корпоративного издания?
Christopher Fernandes
Я сканировал каждую строку кода все еще куки установленные при входе в систему и истекающие на главной странице когда я проверяю их в методе Page_Init