如何在MVC4中用户空闲时间为5分钟时自动注销?

时间:2013-05-15 21:16:42

标签: asp.net-mvc asp.net-mvc-4

如何自动

FormsAuthentication.SignOut();
Session.RemoveAll();
return RedirectToAction("Login", "Home");

当MVC4项目中用户空闲时间为5分钟时?

3 个答案:

答案 0 :(得分:3)

根据您对idle的定义,看起来您可以使用FormsAuthentication类的SlidingExpirationTimeout属性来执行此操作。

将Timeout设置为5分钟,将SlidingExpiration设置为true,你应该很高兴。

答案 1 :(得分:0)

您应该在IIS级别执行此操作。

在IIS中,您可以随时设置会话超时。

technet上的这篇文章解释了如何做到这一点: http://technet.microsoft.com/en-us/library/cc725820(v=ws.10).aspx

注意:用户只有在采取其他操作(会话结束时)后才会被重定向到登录页面

答案 2 :(得分:-3)

如果您希望5分钟后也能隐藏已登录的内容,那么您可以将Kenneths的答案与每个页面上的小javascript结合起来。

setTimeout(function () { 
    // iis will handle the rest.
    location.reload(); 
}, 300000);