asp.net mvc3身份验证

时间:2012-08-11 11:34:47

标签: asp.net asp.net-mvc-3 authentication httpmodule

当Cookie过期时,是否有将用户重定向到登录页面的解决方案?

我创建了formsauthenticationticket和Cookie。到期时间为10分钟。

到期时,用户不会在20分钟内提出任何请求,之后, 点击一些链接,他将被重定向到登录页面并再次登录。

我在程序集中有HttpModule,在Web项目中引用。

在这个模块中,我有PreRequestHandlerExecute()个事件, 我控制每个请求的地方,如果用户经过身份验证并刷新了cookie的超时。

但是如果用户未经过身份验证,他将重定向到登录页面。 这有什么解决方案吗?我知道AuthorizeAttribute,但有没有其他方法可以做到这一点?

感谢

1 个答案:

答案 0 :(得分:0)

一旦用户的cookie过期,它将不会在请求中发送,因此您无法知道谁是新用户以及谁是cookie过期的用户,因为用户都不会向其页面发送cookie请求。

一个解决方法是将Cookie设置为10分钟,但在9分50秒后使用Meta Refresh tag重定向到登录页面。注意:登录页面也需要将用户注销,否则会再次刷新会话。