JWT 和防伪令牌
Posted
技术标签:
【中文标题】JWT 和防伪令牌【英文标题】:JWT and antiforgery token 【发布时间】:2019-03-05 10:31:59 【问题描述】:我一直在研究 ,发现 Microsoft 的 this 文章表明在 JWT 中不需要进行防伪验证。
这是对的还是我理解错了?
我正在使用 webapi 和带有 JWT 的 angular 6 开发应用程序
【问题讨论】:
【参考方案1】:防伪令牌可防止基于 cookie 的 CSRF 攻击。
只要您的 JWT手动附加到所选请求(与附加到浏览器中每个请求的 cookie 不同),CSRF 就不再可能。
所以,答案是:对于没有在 cookie 中发送的令牌是正确的。
【讨论】:
我以为我明白了,谢谢您的回复 但是你会让自己更容易受到 XSS 的攻击,因为 javascript 现在可以访问你的令牌。最好将其存储在 httponly cookie 中,然后修复 csrf,因为与修复其他内容相比,这很简单。 @smnbbrv 如果您在身份验证后将 JWT 附加到每个请求的标头中怎么办? (会话) 非常感谢您的简单回答。你用几句话解释了一个复杂的话题,很容易理解。谢谢!以上是关于JWT 和防伪令牌的主要内容,如果未能解决你的问题,请参考以下文章
带有 ViewModel 和两个表单的页面上的“防伪 cookie 令牌和表单字段令牌不匹配”