我应该在2019年将JWT存储在哪里,localStorage真的不安全吗?

Ger*_*cke 7 javascript security authentication session reactjs

有趣的话题。由于我正在使用Node.js ApiReact Redux Client创建我的第一个真正的大型项目,因此需要身份验证。

现在,我不知道如何“正确地”处理身份验证。

自从我读了很多有关它的主题,但观点却有所不同。

因此,起初有人立即说:不要在JWT中使用localStorage。

例如,这里有一篇文章:https : //dev.to/rdegges/please-stop-using-local-storage-1i04

这是auth0的另一篇文章:https ://auth0.com/docs/security/store-tokens

但是后来我深入研究了认证的广阔世界,发现很多人说:

“ localStorage和cookie一样安全”

例如,从第一篇文章的第一条评论,第三条回复(这里是链接:https : //dev.to/jondubois/comment/373l

我的意思是他说对了吗?阅读了该文章以及其他一些文章和评论后,如果您不是拥有非常敏感数据的银行,将其存储在localStorage中就可以了。

所以在这里我不在2019年,不是一个初学者,也不是一个有经验的开发人员,问我自己应该如何实现此身份验证流程而又不要过于复杂(例如,有将jwt存储到httpOnly cookie中的流程),但是在另一方面也不太容易被黑客入侵。

我正在尝试创建一个论坛应用程序。您可以注册,创建自己的论坛,然后其他用户可以注册该论坛。因此,在基本身份验证中,我只是通过JWT发送user_id和令牌。

在此,我非常感谢您的意见和建议。

小智 -2

在早期阶段存储 JWT 就像您需要的那样简单。将其作为从服务器发回的哈希值存储在本地存储中。不是普通的 JWT 令牌。并利用httpOnly.