【发布时间】:2016-03-01 19:07:20
【问题描述】:
我有一个新的 MVC 5 项目,它遵循此处的最低 OWIN 示例: http://www.khalidabuhakmeh.com/asp-net-mvc-5-authentication-breakdown-part-deux
然后,我将 [Authorize] 属性应用于除我的登录控制器之外的所有控制器。当我第一次启动网站时,我需要登录,在我登录之前我无法点击任何其他控制器 - 到目前为止很好。
我已将会话长度缩短为 1 分钟,如下所示:
<system.web>
<sessionState timeout="1" />
</system.web>
现在,当我登录时,我等待 1 分钟,然后应用程序点击以下行:
protected void Session_End(object sender, EventArgs e)
{
System.Diagnostics.Debug.WriteLine("Session_End");
}
然而,在此之后,我仍然可以导航到任何我想要的控制器。我的会话变量都是空的,但系统仍然认为我是授权用户。
我做错了什么?如何使会话到期时(1 分钟后)要求用户重新登录?
【问题讨论】:
标签: authentication asp.net-mvc-5 owin