我有两个index.html文件,一个用于登录,一旦用户登录,我就会加载我的整个index.html,其中有angularjs等库文件和服务器上的其他文件。
所以我的安全扫描抱怨我没有CSRF令牌。而我有所有的帖子请求。库文件提取也需要它吗。我正在使用angularjs和js
通常,您不应该尝试为AngularJS静态文件设置CSRF令牌。实际上,他们根本不需要访问控制。事实上,AngularJS应用程序只是一个空壳,不会暴露任何敏感信息(至少,它不应该暴露(。只有您的后端可以而且应该减轻CSRF攻击,以防止在未经用户批准和知情的情况下发送恶意身份验证请求。
某些csrf库默认忽略GET
、HEAD
和OPTIONS
请求。例如csurf。在选项中查找ignoreMethods
属性。如果您正在使用csurf或类似的东西,请查找这样的配置选项。例如,在csurf中,为了不忽略GET
请求,您可以执行以下操作:
const csrf = require('csurf');
const csrfMiddleware = csrf({
ignoreMethods: ['OPTIONS', 'HEAD'] // <--- change the default to only ignore OPTIONS and HEAD
});