上下文:Angular站点托管在CloudFront后面的S3上,与用作API的Express服务器分开,几乎所有请求都是XMLHttpRequests。所有请求都是在没有cookie的情况下发送的(默认情况下,withCredentials = false)我使用JWT Bearer令牌进行身份验证,方法是从角度中的cookie中取出并放置到Authorization
标头(这种技术类似于{{3 }})。
在Express网站上,我不允许Cookie
中的Access-Control-Allow-Headers
标题。
Cookie有secure: true
标记,并且不是httpOnly
,因为我需要以角度手动访问它们。
我还在CSRF Wiki page中读到了JSON-Web-Tokens(JWT)/ Bearer Tokens
毫无疑问是防止CSRF的最佳方法之一
问题1 :如果我将X-XSRF-Token标头添加到每个请求中,并且例如通过在JWT有效负载中检查相同的值使机制无状态,我是否会添加额外的安全性? (我在this Medium article)
中读到了它问题2 :我是否真的需要额外的安全措施CSRF采取我所描述的所有内容?