为了提高当前项目的安全性,我开始使用以下CSP来实现该页面:
Content-Security-Policy: default-src 'none';
connect-src 'self'; img-src 'self'; object-src 'none';
script-src 'self' https://www.googletagmanager.com
https://notifications.google.com; style-src 'self' 'unsafe-inline';
font-src https://fonts.googleapis.com https://fonts.gstatic.com/;
base-uri 'self'; frame-ancestors 'self'; form-action 'self';
它可以很好地包括AJAX / jquery加载的部分,但其中一个脚本的加载内容如下所示:
<div>content</div>
<script src="ganalyse.js"></script>
我希望浏览器加载链接的javascript,因为该文件位于同一服务器上,并且应包含在“ self”声明中,但相反,浏览器控制台会记录错误(Console log (German)):
Content Security Policy: The page's settings blocked the loading of
a resource at self...
为了排除链接的js文件中的错误,当前它仅包含一个警报。任何人都知道我应该改变使其工作吗? $ .getScript()让我遇到同样的错误...
编辑:
通过AJAX或$ .getScript()加载的标记似乎像是内联代码一样得到处理(仅在激活“不安全内联”时有效)。到目前为止,我将尝试构建解决方法