Content-Security-Policy HTTP标头用于阻止来自不受信任服务器的内联脚本和资源。但是,Google Analytics代码段示例依赖于这两者。这个领域的最佳实践是什么?
这是我目前正在使用的Content-Security-Policy标头:
default-src 'self'; script-src 'self' https://ssl.google-analytics.com; img-src 'self' http://www.google-analytics.com/__utm.gif https://ssl.google-analytics.com/__utm.gif;
到目前为止,我已经完成了以下工作:
我在我的html中添加了两个脚本标记:
<script src="/js/google-analytics.js"></script>
<script src="https://ssl.google-analytics.com/ga.js" async="true"></script>
google-analytics.js使用_setAccount和_trackPageview设置_gaq数组。
我将ga.js的域添加到了script-src。
我注意到ga.js正在加载两张图片,所以我将它们添加到了img-src。
有什么我想念的吗? Google会改变我的想法并打破这一切吗?有官方推荐吗?
答案 0 :(得分:3)
这大多是正确的:
您不需要图像路径,只需要协议+主机+(隐含)端口
Firefox的CSP实现略有不同。对于旧版本,请将default-src
替换为allow
。有一个截止点,Firefox支持default-src
等于allow
,但大多数仍然使用allow
实现,直到它完全支持规范(不包括引用)。