我对理解CSP相当陌生,也许我只是在这里没有以正确的方式做某事。
我为所有不同的策略类型和script-src 'self' <urls> unsafe-inline
添加了白名单
但是,我收到了几份关于Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source
的报告
这些都在我的供应商js文件中,该文件是我们所有供应商的缩小和混淆集合。通过 Webpack 和 Laravel 混合npm build
完成。
当如此多的供应商脚本似乎需要它时,我应该如何在我的 CSP 中禁用 eval?
谢谢!
如果要允许按照错误建议使用eval
,则必须添加'unsafe-eval'
源。使用'unsafe-inline'
允许执行内联脚本和内联事件处理程序。
script-src 'self' <urls> 'unsafe-inline' 'unsafe-eval'