【发布时间】:2015-12-06 22:12:01
【问题描述】:
从阅读CSP Standard specification and examples 看来,它似乎不支持给定 URL 的路径部分中的通配符。这似乎是一种疏忽,因为许多 CDN 和静态文件托管提供商在其用户之间共享根域名,并且只区分 URL 路径上的访问,而不是整个域。
例如,当使用 S3 或 Google Cloud Storage 作为 CDN 时,您可能希望 CSP 允许仅使用带有通配符 URL(如“https://storage.googleapis.com/my-apps-bucket/*”)的存储桶加载脚本/资产,但不允许它们用于https://storage.googleapis.com 的其余部分,因为恶意行为者创建自己的帐户并提供来自该根域的内容是相当微不足道的。
这似乎是一个很常见的用例,我误解了规范吗?如果没有,使用通配符路径的语法是什么,因为使用像 Content-Security-Policy: script-src 'self' https://example.com/* 这样的标头似乎不起作用。
【问题讨论】:
标签: amazon-s3 google-cloud-storage cdn content-security-policy