Как сохранить аутентификацию для файла cookie аутентификации ASP.NET Forms, Http в Https (разные домены) и обратно? - PullRequest
2 голосов
/ 19 августа 2010

У нас есть веб-приложение ASP.NET без SSL, которое позволяет пользователю входить в систему (проверка подлинности с помощью ASP, inproc).

После проверки подлинности мы перенаправляем их браузер на внешнюю защищенную SSL-страницу на другом веб-сайте / домене, который мы не контролируем.

Клиент будет перенаправлен обратно на предварительно настроенный URL-адрес в нашем исходном веб-приложении http после завершения.

Тем не менее, клиенту предлагается снова войти в систему на нашей стороне, что нежелательно ...

Кажется, cookie аутентификации форм уничтожается при переходе между HTTP и HTTPS и обратно.

Как сохранить файл cookie для проверки подлинности с помощью форм таким образом, чтобы клиенту не приходилось повторно проходить проверку подлинности в обратном направлении?

Ответы [ 3 ]

1 голос
/ 26 марта 2012

Подумайте, чтобы установить свойство домена cookie для ваших файлов cookie с более указанным , можно найти здесь или попробовать этот код:

Response.Cookies["your_cookie_name"].Domain = "yourdomain.com";
1 голос
/ 19 августа 2010

Это не разрушается;вы не проходите аутентификацию на своем домене, поэтому куки не установлены на вашем домене, и, следовательно, запросы на вашем домене не будут содержать указанный файл аутентификации.

Это ХОРОШО.Если этого не произойдет, то каждый файл cookie с каждого посещенного вами домена будет отправляться с каждым запросом.Что, очевидно, 1) сумасшедший и 2) дыра в безопасности.Установка файла cookie на mydomain.com должна никогда быть видимой для страниц на myotherdomain.com.

Если вы используете стороннюю систему аутентификации, такую ​​как Google, Facebook и т. Д., Они 'у всех будет какой-то токен обратного вызова, который вам придется обрабатывать и устанавливать свои собственные куки.

0 голосов
/ 22 августа 2010

Вы ищете решение для единого входа. Это может быть немного излишним для вашей проблемы, для которой вы можете просто захотеть получить то же доменное имя. Но если это не вариант, вы можете взглянуть на: Windows Identity Foundation

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...