Читать печенье в Silverlight - PullRequest
1 голос
/ 27 мая 2010

У меня есть приложение ASP.NET MVC. В этом после того, как пользователь получит Вход. Мы устанавливаем cookie для пользователя, который вошел в систему, используя FormsAuthentication.SetAuthCookie (userName, false). На другой странице мы получаем Cookies, используя FormsAuthentication.GetAuthCookie (userName]). Эти значения cookie в виде строки затем устанавливаются в

Response.Cookies["username"].Value = cookiesvalue

У нас есть страница .aspx в том же приложении, которое загружает приложение silverlight. Silverlight читает куки, используя код

string[] cookies = HtmlPage.Document.Cookies.Split(';');     

Проблема заключается в том, что после окончания сеанса в приложении silverlight не может прочитать значение cookie.

После окончания сеанса мы снова устанавливаем куки в заголовках, используя

Response.Cookies["username"].Value = cookiesvalue

Но приложение Silverlight не может прочитать этот файл cookie.

Спасибо заранее DNM

1 Ответ

0 голосов
/ 31 мая 2010

Файл cookie аутентификации (установленный с помощью FormsAuthentication.SetAuthCookie(userName, false)) - это специальный файл cookie. Он зашифрован с помощью машинного ключа на сервере и может управляться только сервером. Silverlight выполняется на стороне клиента, что объясняет, почему вы не можете расшифровать имя пользователя, сохраненное в этом файле cookie.

Просто представьте на мгновение, что вы можете прочитать и изменить значение этого куки на стороне клиента: это будет означать, что вы можете выдать себя за любого пользователя.

...