SPA,在线离线,让用户登录

时间:2016-05-29 15:51:59

标签: knockout.js asp.net-core single-page-application offlineapps

我有一个单页应用程序,我希望用户在关闭浏览器后能够保持登录状态,并在离线或在线时再次开始使用浏览器。我现在使用的方法包括localStorage,其中我存储一个时间戳,指示用户被认为登录的时间长度。这个问题是该值很容易被篡改,导致用户无需登录所有使用该应用程序。    是否有推荐或经过验证的工作解决方案来实现这一目标?

1 个答案:

答案 0 :(得分:0)

JWT - JSON Web令牌 - 将完成工作

每个令牌有3个部分

  • 标题(确认它确实是JWT)
  • 有效负载(使用用户的身份,访问权限,到期日期/时间设置
  • 签名(所以没有人可以搞乱)

在有效负载中,要特别注意exp元素,它允许您设置登录过期的确切时间。

因此,您可以安全地将它们保存在本地存储中。

有关更多信息的一些消息来源:

https://jwt.io/

https://scotch.io/tutorials/the-anatomy-of-a-json-web-token