【发布时间】:2018-08-28 10:32:19
【问题描述】:
我正在尝试将 CSP 添加到我的 Web 应用程序中,我在我的索引页面中添加了以下元标记:
<meta http-equiv="Content-Security-Policy" content="img-src 'self' data:;default-src *;style-src 'self' http://* 'unsafe-inline';script-src 'self' http://* 'unsafe-inline' 'unsafe-eval';" />
还有以下我在 IIS 上的 web.config 文件:
<customHeaders>
<add name="Content-Security-Policy" value="default-src 'self' 'unsafe-inline' http://*.domain.com;
img-src 'self' http://*.domain.com data:" />
</customHeaders>
是否需要同时添加元标记和附加标头?还是其中之一就足够了?
元标记策略是否会覆盖自定义标头?
这script-src 'self' http://* 'unsafe-inline' 'unsafe-eval' 是否意味着我可以编写内联JavaScript 并在我的代码中使用eval 函数?此规则是否会覆盖标头设置的策略? (因为据我所知,我在标题中禁止使用内联 JavaScript 和 eval 函数)
我的最后一个问题是,如果我使用这些设置,我应该在我的 html 中使用 ng-csp 还是它的其他变体 ng-csp="no-unsafe-eval"?
【问题讨论】:
-
如果此实现是为了修复 Veracode 中突出显示的缺陷,而您仍然继续 'unsafe-inline' 'unsafe-eval' 将无法解决问题。
标签: html angularjs security xss content-security-policy