内容安全策略:资源被阻止但 CSP 配置为允许它
Content Security Policy: resource blocked but CSP is configured to allow it
我有一个 GreaseMonkey 用户脚本,可以将一些 HTML 代码注入页面,HTML 代码包含一些 JavaScript 指向外部脚本,这需要 Google 分析工作。
为了“绕过”内容安全策略,我在之前注入了这段代码:
<meta http-equiv="Content-Security-Policy" content="default-src * 'unsafe-inline' 'unsafe-eval';
script-src www.google-analytics.com * 'unsafe-inline' 'unsafe-eval'; connect-src * 'unsafe-inline';
img-src * data: blob: 'unsafe-inline'; frame-src *; style-src * 'unsafe-inline'; ">
但是它在控制台中抛出了以下错误:
Content Security Policy: The page’s settings blocked the loading of a resource at
https://www.google-analytics.com/analytics.js (“script-src”).
我在 CSP 中允许了一切,但它仍然不起作用。
(如果需要,这是我的用户脚本代码)
$("head").append("<meta http-equiv=\"Content-Security-Policy\" content=\"default-src * 'unsafe-inline' 'unsafe-eval'; script-src www.google-analytics.com * 'unsafe-inline' 'unsafe-eval'; connect-src * 'unsafe-inline'; img-src * data: blob: 'unsafe-inline'; frame-src *; style-src * 'unsafe-inline'; \">");
$("body").append ( `
<div id="AHHAHAHAHAH">
<script src="https://examp.le/thisScriptUsesGoogleAnalytics.js">
</script>
<script type="text/javascript">
</script> </div>
` );
不清楚你想要达到什么目的。更改基于 DOM 的 <meta http-equiv="Content-Security-Policy" content="...">
标记脚本没有任何意义。只是不要一开始就设置或根据您的需要设置。
我有一个 GreaseMonkey 用户脚本,可以将一些 HTML 代码注入页面,HTML 代码包含一些 JavaScript 指向外部脚本,这需要 Google 分析工作。 为了“绕过”内容安全策略,我在之前注入了这段代码:
<meta http-equiv="Content-Security-Policy" content="default-src * 'unsafe-inline' 'unsafe-eval';
script-src www.google-analytics.com * 'unsafe-inline' 'unsafe-eval'; connect-src * 'unsafe-inline';
img-src * data: blob: 'unsafe-inline'; frame-src *; style-src * 'unsafe-inline'; ">
但是它在控制台中抛出了以下错误:
Content Security Policy: The page’s settings blocked the loading of a resource at
https://www.google-analytics.com/analytics.js (“script-src”).
我在 CSP 中允许了一切,但它仍然不起作用。 (如果需要,这是我的用户脚本代码)
$("head").append("<meta http-equiv=\"Content-Security-Policy\" content=\"default-src * 'unsafe-inline' 'unsafe-eval'; script-src www.google-analytics.com * 'unsafe-inline' 'unsafe-eval'; connect-src * 'unsafe-inline'; img-src * data: blob: 'unsafe-inline'; frame-src *; style-src * 'unsafe-inline'; \">");
$("body").append ( `
<div id="AHHAHAHAHAH">
<script src="https://examp.le/thisScriptUsesGoogleAnalytics.js">
</script>
<script type="text/javascript">
</script> </div>
` );
不清楚你想要达到什么目的。更改基于 DOM 的 <meta http-equiv="Content-Security-Policy" content="...">
标记脚本没有任何意义。只是不要一开始就设置或根据您的需要设置。