持票人令牌+ identity.isAuthenticated

时间:2016-07-19 07:55:32

标签: asp.net-mvc identity bearer-token

我正在使用bearde令牌在MVC中构建Web应用程序。一切都很好但我有一点问题。

当我登录时,我在会话存储中设置访问令牌。对于每个请求,我都会获得令牌。到现在为止还挺好。授权工作正常。

但是当我关闭计算机时,或者几个小时后,我发现我的浏览器事件中sessionStorage是空的,虽然我的网络应用程序说identity.user.isAuthenticated仍然是真的吗?这怎么可能?

或者我在会话存储中设置访问令牌是错误的吗?

对不起,我没有代码示例,但代码受到保护。

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

您的浏览器的 sessionStorage 并不知道您的身份验证与否。它只存储从服务器收到的bool值,表示在具体时刻您已经过验证。但是,身份验证是在服务器端进行的,只有在服务器端才会知道您是否已经过身份验证。

您可能存储在 sessionStorage 中的是您的令牌和刷新令牌。该令牌将用于验证会话的每个请求。如果您的令牌已过期,将使用刷新令牌。

在您评论的情况下,我非常确定即使在您的sessionStorage中说您已通过身份验证,当您尝试使用过期令牌访问时,这也会失败。