Выход из сеанса asp.net

Я сделал приложение asp.net. В этом приложении есть переменные сеанса, которые показывают, что пользователь вошел в систему или вышел из нее. Есть ли способ зафиксировать истечение срока сеанса, не переходя на отдельные страницы, и после выхода из системы пользователь может быть перенаправлен на страницу входа (повторного входа)?

Могут ли мои классы asp.net наследовать какой-то базовый класс, который может иметь некоторый абстрактный метод для проверки, существует ли сеанс или нет.

Пожалуйста, предложите мне какую-нибудь архитектуру для этого.

Заранее спасибо.


person NewToNet    schedule 05.06.2012    source источник


Ответы (2)


Вы можете использовать событие завершения сеанса global.asax:

void  Session_End(Object sender, EventArgs E) {
// your code....
}

Когда сеанс истекает, это событие вызывается.

person Jagz W    schedule 05.06.2012

В этом приложении есть переменные сеанса, которые показывают, что пользователь вошел в систему или вышел из нее.

Этого можно добиться, проверив свойство HttpContext.Current.Request.IsAuthenticated.

Если есть способ зафиксировать истечение срока сеанса, не переходя на отдельные страницы, и один раз> это выйдет из системы, пользователь может быть перенаправлен на страницу входа (повторного входа)?

Настройте следующие элементы в своих приложениях web.config, чтобы ограничить \ разрешить доступ к ресурсам \ страницам \ каталогам на вашем сайте:

<authorization> 
   <allow .../>
   <deny .../>
</authorization>

http://msdn.microsoft.com/en-us/library/8d82143t

И настройте FormsAuthentication атрибуты defaulturl и loginurl для перенаправления пользователей с ограниченных ресурсов.

person xandercoded    schedule 05.06.2012