使用ASP Identity的会话和用户身份验证



我在MVC项目中使用Asp Identity进行身份验证,我的问题是会话结束,在某些情况下用户仍然进行身份验证。

我在配置上将OWIN的超时时间设置为20分钟

 app.UseCookieAuthentication(new CookieAuthenticationOptions
            {
                AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
                ExpireTimeSpan = TimeSpan.FromMinutes(20),
                SlidingExpiration = false,
            })

它的工作在20分钟后我的会话数据和Owin被清除。

但在某些情况下仍然存在问题:

  1. IIS重置会话时清除,但用户仍通过身份验证。

  2. 当我在2015年的基础上构建解决方案时,会话被清除,但用户仍然通过了身份验证。

您使用的是DefaultAuthenticationTypes.ApplicationCookie-cookie身份验证。

这是意料之中的事。。cookie的有效期为20分钟(根据您的配置),然后过期。与Session 无关

如果您真的想将身份验证绑定到会话,请参阅此处:https://stackoverflow.com/a/11420005/131809

我建议使用ActionFilter来代替基类(如其中一条评论中所述)

相关内容

  • 没有找到相关文章

最新更新