CSP报告模式下connect-src指令blocked-uri为properties的原因咨询
CSP connect-src违规(blocked-uri为"properties")的原因分析
核心问题
已在报告模式下部署CSP策略,仅在Android Chrome浏览器中收到connect-src指令的违规报告,被阻止URI显示为"properties",无法明确需加入白名单的具体内容及被阻止对象。相关报告JSON如下:
{ "csp-report": { "document-uri": "https://*************", "effective-directive": "connect-src", "original-policy": "*policy*", "blocked-uri": "properties", "line-number": 2, "column-number": 535042, "source-file": "https://**************", "status-code": 200 } }
可能的原因
- Android Chrome内部行为触发:Android Chrome存在部分浏览器内置逻辑(如设备属性检测、浏览器特性查询),会发起目标为
properties的请求,这类请求不属于业务代码范畴,是浏览器自身的调用行为。 - 第三方脚本的相对路径错误:检查
source-file指向的脚本文件(对应压缩后第2行、列535042位置),大概率是脚本中存在错误的相对路径请求——比如漏写了根路径前缀(如/properties写成properties),导致浏览器将其解析为相对当前文档的URI发起请求,被connect-src规则拦截。 - CSP相对URI解析差异:不同浏览器对CSP规则中相对URI的解析逻辑存在差异,Android Chrome可能对未明确指定的相对路径请求更严格,而其他浏览器则允许此类请求通过。
排查建议
- 借助source map将
source-file的压缩脚本还原为源码,定位到对应行列位置,检查是否存在发起properties相关请求的代码。 - 使用Android Chrome的开发者工具(DevTools)捕获网络请求,确认是否有目标为
properties的请求,并查看请求的发起堆栈。 - 临时在connect-src策略中添加
properties(仅用于测试,不建议长期保留),观察是否还会触发违规报告,以此验证是否为该请求导致的问题。
内容的提问来源于stack exchange,提问作者AnandGanesan
相关产品推荐
相关产品推荐

