Chrome扩展:会改变content_security_policy在manifest禁用过去的用户?



我知道改变权限会禁用你现有的用户,这就是为什么你可以使用可选权限。然而,content_security_policy在此基础上又增加了一层。

这是我当前的设置:

我的权限:

"permissions": [
"storage"
],

当前使用content_scripts

"content_scripts": [ {
"all_frames": true,
"js": [
"js/helpers/BrowserStorage.js",
"js/helpers/LocalStorage.js",
"js/helpers/Device.js",
"js/frame.js"
],
"matches": [
"https://example.com/*"
],
"run_at": "document_start"
} ],

目前使用content_security_policy


"content_security_policy": "default-src 'self'; style-src 'self' 'unsafe-inline'; frame-src https://*.example.com 'self';  object-src 'self'"

这允许我当前的用户群启用对example.com的访问,而无需首先将example.com添加到权限中。我觉得我一开始就应该这么做,然而,我忘了。

问题:

  1. 如果我要将example.com添加到权限部分,会禁用当前用户,即使我的域已经被允许从上面的前2节?

  2. 如果我要用另一个域名更改content_security_policy或使用相同域名添加其他元素,现有用户的权限会被禁用吗?

示例:

如果我把改成这个,会禁用现有用户吗?

"content_security_policy": "default-src 'self' 'unsafe-inline' 'sha256-tempUn1btibnrWwQxEk37lMGV1Nf8FO/GXxNhLEsPdg=' 'sha256-7KQKVSgvvLBSyYII9Tvlef97RiFP4uLjKxCP55HNxC8=' https://example.com; style-src 'self' 'unsafe-inline'; frame-src https://example.com 'self';  object-src 'self'; img-src https://example.com; connect-src https://example.com"

谢谢,希望有人能帮助理解什么可能触发权限,我讨厌禁用现有用户,几乎不可能真正测试这个。

浏览器扩展被加载到用户的设备上,并在那里存储应用程序清单和权限。

更改权限不会禁用现有用户,直到他们更新扩展。更新后,扩展应该检查现有的权限,并重新询问权限,如果它改变了那些设置。
否则扩展将无法正常运行(将禁用您现有的用户&;用你的话来说)。

在清单文件中content_security_policy键的情况下,情况更容易。
过去的用户仍然有一个旧的扩展与旧的清单和旧的content_security_policy键值。所以它们不会被阻塞。
更新扩展后,用户将得到一个新的清单与新的content_security_policy键值,所以一切都应该是好的。

PS:答案不是基于我以前的经验,而是基于事情应该如何工作。

最新更新