我使用django rest框架并为我的项目响应js环境,为了存储jwt令牌本地存储,cookie是不安全的,所以我决定保存httponly cookie,如何实现身份验证?
如何在http标头中传递令牌
发布于 2020-11-07 09:15:04
下面的文本来自我的文章使用Django REST后端进行基于令牌的身份验证,它是关于如何使用Django构建SaaS并从头开始反应的完整教程的一部分。
在互联网上有很多关于如何在网站中存储auth_token
以确保安全的讨论:
这是我的看法。
localStorage
的值。那是真的。如果在带有httpOnly
设置的cookies中设置了令牌,那么就不能读取XSS。也是真的。这是否意味着使用httpOnly
的cookies比localStorage
更好?不能这么说。dangerouslySetInnerHTML
显式地请求它时,它才会呈现原始HTML。localStorage
中读到localStorage
,但是他能用它做什么呢?他可以将其发送到服务器,也可以将其用于恶意请求。我们可以用内容安全策略(,CSP)保护应用程序避免从未知来源加载未知脚本(当然,我将在以后的文章中对此进行介绍)。localStorage
和cookies
。httpOnly
的cookies,则可以从其他来源(跨站点请求伪造)执行恶意请求。这种攻击不适用于localStorage
的情况。请记住,如果使用基于令牌的身份验证,则在DRF中禁用CSRF cookie。只有在基于会话的身份验证情况下才启用CSRF cookie。因此,如果您仍然希望使用httpOnly
cookie,请记住使用cookies (否则CSRF攻击是可能的!)
https://stackoverflow.com/questions/64725781
复制相似问题