内容安全策略元标记被忽略

时间:2020-09-10 17:53:23

标签: javascript html css content-security-policy

我想通过使用html中的meta标签在我的网站上启用CSP。这是我当前的标签:

<meta http-equiv="Content-Security-Policy" content="default-src 'self' filesystem; style-src 'self' 'unsafe-inline' https://stackpath.bootstrapcdn.com/bootstrap/*; img-src 'self' filesystem https://*; child-src 'self' https://player.twitch.tv/* https://www.twitch.tv/*; script-src 'self' https://code.jquery.com/* https://player.twitch.tv/* filesystem;">

以上所有工作,除了对任何外部URL的任何提及。引导,jQuery或抽搐请求均不被允许通过,并且所有请求均被阻止,例如:

“拒绝加载样式表'https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css',因为它违反了以下内容安全策略指令:” default-src'self '* .bootstrapcdn.com”。请注意,“ style-src-elem”未明确设置,因此将“ default-src”用作后备。”

有什么想法可以确认所有文件系统内容,但是不允许任何涉及外部http请求的规则通过吗?

1 个答案:

答案 0 :(得分:0)

我怀疑添加了默认标头,因为该策略与您在问题中包含的标头不同。这也是其他外部请求被阻止的原因。您应该在问题中包括与页面一起实际提供的所有CSP,标头和元均包含CSP。

浏览器实现的次要细节差异很大,这可能是文件系统为您工作的原因。您应该列出已测试过的浏览器。