Функциональность входа в приложение Silverlight - PullRequest
2 голосов
/ 18 мая 2010

У меня есть приложение silverlight, которое требует от пользователя входа в систему.

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

Что я хочу сделать, это действовать как ASP .NET, где пользователь будет оставаться в системе в течение 20 минут, даже если он нажмет кнопку обновления.

Какой механизм ASP .NET использует для достижения этой цели?Использует ли он, например, переменные сеанса, и как он истекает через 20 минут?

Спасибо.

Ответы [ 2 ]

5 голосов
/ 18 мая 2010

ASP.NET делает это на стороне сервера, используя различные методы. Самое простое, это могут быть куки. Обычно люди используют функцию состояния сеанса. Скользящая шкала используется для хранения времени обновления.

Хотя вы можете сделать это в Silverlight, используя нечто вроде изолированного хранилища, оно не будет безопасным: изолированное хранилище не зашифровано и находится в локальной системе, в отличие от ASP.NET, где сервер может хранить информация, где это безопасно.

Что касается того, что хранить: вы действительно не хотите. Вы должны позволить своему пользователю войти в систему, который попадает на веб-сервис на хосте. Тогда вы просто полагаетесь на ASP.NET или другую систему аутентификации на стороне сервера. Вы можете создать «perma-cookie», но это просто дублирующая функциональность, которая уже работает.

4 голосов
/ 18 мая 2010

Помимо хранения чего-либо в IsolatedStorage, вы также можете получить доступ к cookie-файлам, используемым на странице. Если вы сохраняете токен аутентификации в своем cookie-файле, вы можете просто забрать его из приложения silverlight. Эта страница и эта страница может помочь вам начать работу.

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