将JSON webtoken存储在Angular 6中的LocalStorage/Session存储中是明智的决定吗?

将JSON webtoken存储在Angular 6中的LocalStorage/Session存储中是明智的决定吗?,angular,Angular,我已经阅读了许多讨论在本地存储/会话存储/cookie中存储JSON web令牌的用法及其优缺点的链接 有经验的开发人员更喜欢在cookie中使用它。但我的问题是,如果我使用Angular 6,将它存储在本地存储/会话存储中有多安全 由于Angular最近进行了更新,现在我们有了Angular 6,Angular 6也可以免受XSS攻击。如果我使用本地存储/会话存储,CSRF攻击不会带来风险 确切地说,如果我使用Angular 6,我可以在本地存储/会话存储中使用JSON web令牌 谢谢 Sa

我已经阅读了许多讨论在本地存储/会话存储/cookie中存储JSON web令牌的用法及其优缺点的链接

有经验的开发人员更喜欢在cookie中使用它。但我的问题是,如果我使用Angular 6,将它存储在本地存储/会话存储中有多安全

由于Angular最近进行了更新,现在我们有了Angular 6,Angular 6也可以免受XSS攻击。如果我使用本地存储/会话存储,CSRF攻击不会带来风险

确切地说,如果我使用Angular 6,我可以在本地存储/会话存储中使用JSON web令牌

谢谢
Sachin

当然需要,因为如果在Angular中使用拦截器进行HTTP通信,则无法注入服务来提供承载令牌。因为您的服务需要使用HTTP与API通信,拦截器也是HTTP处理程序。因此,应该有另一种在需要时提供承载令牌的方法,即本地存储,每个JS客户机都可以访问本地存储


来源:

你能用吗?
:是的
Cookie更安全吗
:否。
在XSS中是角度安全的
:否,但由于小型化,执行起来非常困难,而且由于使用API,因此具有第二级安全性<代码>如何安全地存储在本地存储中:你不在乎,它只是一个令牌。无论哪种方式,用户都可以访问它,让它成为本地存储或cookie。好的,明白了。因此,如果我的JSON web令牌在有效负载中只有用户id,那么将其存储在localStorage中也没有什么坏处,因为JSON web令牌的有效负载中没有敏感信息。这是正确的吗?您的令牌可以包含您想要的任何内容:只有您的API可以生成它们(感谢签名)。因此,即使有人解码并发现了他的角色,他也无法改变他们。