Я работаю над небольшим проектом MVC asp.net. Существует веб-сервис, который проверяет клиента. После проверки я сохраняю информацию пользователя в переменной Session и устанавливаю ее значение null после выхода из системы. У меня есть пользовательский Authorization фильтр так:Пользовательский авторизованный атрибут не работает с кэшированным запросом
public class MgAuthorizeAttribute : AuthorizeAttribute
{
protected override bool AuthorizeCore(HttpContextBase httpContext)
{
if (httpContext.Session["Customer"] == null)
{
httpContext.Server.TransferRequest("~/Upgrade/Login");
return false;
}
return true;
}
}
Проблема заключается в том, что не проверяет пользователя, когда кнопка нажата назад в браузере. Таким образом, пользователь может получить доступ к защищенным страницам даже после выхода из приложения. Пожалуйста, предложите мне самый умный способ справиться с этим сценарием. ТИА.
Спасибо за ответ. На самом деле то, что я делаю сейчас, похоже на нечто подобное - отключение кнопки «Назад» с помощью javascript. Но этого я не хочу. Я не хочу препятствовать естественному поведению браузера. Скорее, я бы предпочел, чтобы система перенаправлялась на страницу входа, когда пользователь хочет получить доступ к несанкционированным действиям. – Afifa