【发布时间】:2019-05-06 23:21:35
【问题描述】:
我正在关注 udemy 上的 vue 课程,并查看了几个在线资源,它们似乎都有一个过程,我将用户名和密码发送到我的 api 并返回我的 jwt 访问令牌。然后令牌以状态存储(使用 vuex)并支持页面刷新(并保持用户登录),它还将 jwt 令牌保存到本地存储。
由于我不使用 cookie,我的理解是我不必担心 csrf。
OWASP 建议不要将令牌存储在本地存储中(我认为主要是由于存在 xss 漏洞)。 authO 网站 (https://auth0.com/docs/security/store-tokens) 说我应该存储在内存中(例如,就像我使用 vuex 一样)。
我怎样才能遵循不使用本地存储的建议,并确保如果用户刷新页面,他们仍然登录(没有 cookie)或者这将是不可能的。
【问题讨论】:
-
AWS Cognito 的 Amplify 库不是也将 JWT 令牌存储在 localStorage 中吗?我认为确实如此。 Cognito 是经过 PCI-DSS 认证的解决方案。所以我认为将 localStorage 用于 JWT 令牌没有问题。