use*_*934 17 cookies token local-storage typescript angular
我有一个用于生成令牌的休息api,我在角度4客户端使用,但问题是在哪里存储此令牌.
在互联网上,我发现我可以存储在本地存储或cookie中.
所以我的问题是,如果商店令牌是本地存储,例如,我刚刚从另一个浏览器复制了有效令牌,那么我将拥有一个有效的令牌,因此存在任何像这样的存储令牌的安全性,并且基本相同用饼干,或者我错过了一些重要的信息?
Ale*_*net 12
这是一篇关于令牌/ Cookies的完整文章,它可以为您提供有关此主题的大量知识:auth0:Cookies VS Tokens
我将引用最重要的部分,让您了解接下来会发生什么:
面向网站的两种最常见的攻击媒介是跨站点脚本(XSS)和跨站点请求伪造(XSRF或CSRF).
当外部实体能够在您的网站或应用程序中执行代码时,就会发生跨站点脚本攻击.
如果您将JWT与本地存储一起使用,则跨站点请求伪造攻击不是问题.另一方面,如果您的用例要求您将JWT存储在cookie中,则需要防止XSRF.
我们的CTO过去一直认为,与XSRF攻击相比,XSS攻击更容易处理,因为它们通常被更好地理解.
所以基本上总结一下:
因此,我建议使用标准的JWT令牌方法来管理令牌.由于您的令牌是使用JWT格式签名的,因此我认为这是最安全的解决方案.当然,标准令牌需要加密或签名(不相同)才能真正安全.
使用适当的库(例如https://github.com/auth0/angular2-jwt)设置和管理真的很容易
更进一步:我想你的令牌将用于身份验证,并意识到人们已经使用过它并知道使用它们的好/坏做法.
您应该看看如何使用刷新令牌从工作网站(例如Twitter/Facebook等)管理身份验证.以下是您可能感兴趣的一些额外链接:
编辑:关于JWT最佳实践的附加链接:
https://dev.to/neilmadden/7-best-practices-for-json-web-tokens(第6和第7部分)
https://medium.com/vandium-software/5-easy-steps-to-understanding-json-web-tokens-jwt-1164c0adfcec
更重要的是你将如何验证它,而不是你如何存储令牌,你采取了什么安全专业来在服务器端验证相同的令牌。
如果您有启用 CORS 的 API,您需要确保请求来自有效客户端而不是恶意源。
如果您使用Token来存储机密信息,则需要在存储之前对其进行加密。
| 归档时间: |
|
| 查看次数: |
15336 次 |
| 最近记录: |