来自不同域区域的内容Secuty Policy和Google Analytics图像

时间:2017-07-27 14:30:53

标签: javascript image google-analytics content-security-policy

我为HTTP Content-Security-Policy设置了img-src指令,该指令指定了允许在我的网站上使用的图像和图标的有效来源。 我还设置了Google分析。 这是指令的值: img-src 'self' data: www.google-analytics.com https://www.google.com/pagead/ 问题是Google切换到访问者的国家/地区域,因此它尝试从该域加载特殊服务图像,而不是从www.google.com加载。例如。如果我从意大利访问该网站(google.com => google.it),它会在浏览器控制台中抱怨:

Refused to load the image 'https://www.google.it/ads/ga-audiences?v=1&aip=1&t=sr&_r=4&tid=UA-1234…' because it violates the following Content Security Policy directive: "img-src 'self' data: www.google-analytics.com https://www.google.com/pagead/".

有没有办法在img-src指令中统计Google.com的所有可能的域名区域?据我所知,写一些类似于" google。*"的东西是不可能的。 Google Analytics方面可能有一些解决方案吗?

1 个答案:

答案 0 :(得分:0)

不幸的是,Content-Security-Policy资源需要列入白名单,并且通配符与此想法不兼容:

  

接受通配符,但仅作为方案,端口或主机名的最左侧位置::// .example.com:*将匹配example.com的所有子域(但不是example.com本身),使用任何方案,在任何端口上。

有关此问题的解决方案,请参阅delay