1

我从以下网址阅读了内容安全政策:http: //developer.chrome.com/extensions/contentSecurityPolicy.html

那里提到:“如果您需要一些外部 JavaScript 或对象资源,您可以通过将应该接受脚本的安全来源列入白名单来在有限程度上放宽政策”

该示例显示您需要在 manifest.json 中添加这一行:

"content_security_policy": "script-src 'self' https://example.com; object-src 'self'"

但是,如果我不仅要支持https://example.com,还要支持每个网站?顺便说一句 - 是否也可以包括“评估的 JavaScript”:'unsafe-eval'到那个?我应该写什么?

4

1 回答 1

3

您引用的页面明确指出,“由于中间人攻击在 HTTP 上是微不足道且无法检测到的,因此这些来源将不被接受。 ”因此,http:来源是正确的。您可以使用纯协议源将 Chrome 扩展程序允许的所有安全来源列入白名单:script-src 'self' https:. 这是您在 Chrome 扩展程序中可以做的最好的事情:在整个网络上,您可以将script-src http: https:.

对于另一个问题,'unsafe-eval'现在允许在扩展中。在以前的 Chrome 版本中,这是不允许的,但谷歌最近似乎改变了他们的立场。

于 2012-12-12T14:47:11.513 回答