在谷歌浏览器文档中,我发现我可以添加内容安全策略,以允许外部javascript文件在我的扩展上工作。
但是我找不到如何添加多个。它是一个字符串数组吗?
"content_security_policy": "script-src 'self' https://example.com; object-src 'self'"
我试图像这样放多行,但它不起作用。去错误:
拒绝加载脚本 https://example.com,因为它违反了以下内容安全策略指令:"script-src 'self' https://example.com"。请注意,"script-src-elem"没有明确设置,因此"script-src"用作后备。
CSP 策略是单个字符串(包含以分号分隔的指令及其参数列表(。它适用于所有扩展页面。
如果需要具有多个源的单个策略,则可以执行此操作。事实上,你已经有了:'self'
和https://example.com
是两个来源。
阅读有关CSP的一般信息和script-src
指令,例如MDN。
语法
script-src
策略可以允许一个或多个源:Content-Security-Policy: script-src <source>; Content-Security-Policy: script-src <source> <source>;
因此,您只需要在script-src
和分号之间将它们隔开即可。
确保您的源不包含路径。例如 https://example.com
没问题,但https://example.com/
或https://example.com/script.js
则不行。
如果您需要为不同的页面提供多个独立的策略,恐怕您无法做到这一点。