我知道改变权限会禁用你现有的用户,这就是为什么你可以使用可选权限。然而,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
添加到权限中。我觉得我一开始就应该这么做,然而,我忘了。
问题:
如果我要将
example.com
添加到权限部分,会禁用当前用户,即使我的域已经被允许从上面的前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:答案不是基于我以前的经验,而是基于事情应该如何工作。