似乎在Angular应用程序中为Ajax调用创建和处理反CSRF令牌非常重要,有些人通过在每个Ajax调用中应用单个令牌来解决问题。例如here。
解决方案非常简洁。我们只是在服务器上生成令牌,并在登录后将其与第一个加载的页面一起发送。然后我们确保它会出现所有未来的请求:
$http.defaults.headers.common['RequestVerificationToken'] = 'token should go here';
但我担心这可能会简化攻击者的工作。他们只需要获得$ http即可获得任何有效请求。是这样的吗?这种方法安全吗?是否有关于Ajax请求和CSRF的“最佳实践”?
答案 0 :(得分:1)