“广泛的主机权限”Webstore 警告,尽管只有一台主机具有权限

Posted

技术标签:

【中文标题】“广泛的主机权限”Webstore 警告,尽管只有一台主机具有权限【英文标题】:"Broad host permissions" Webstore warning despite only one host in permissions 【发布时间】:2019-03-26 12:52:21 【问题描述】:

我正在尝试发布一个 chrome 扩展,但是当我尝试时,会出现以下消息:

由于以下问题,您的扩展程序可能需要深入审查:

广泛的主机权限

考虑使用 activeTab 权限,或者指定您的扩展程序需要访问的站点,而不是请求广泛的主机权限。这两种选择都比允许完全访问不定数量的网站更安全,而且它们可能有助于最大限度地减少审核时间。

activeTab 权限允许访问选项卡以响应明确的用户手势。


  ...
  "permissions": ["activeTab"]

如果您的扩展只需要在某些站点上运行,只需在扩展清单中指定这些站点:


  ...
  "permissions": ["https://example.com/*"]

我的清单具有这些权限:


 "manifest_version":2,
 "name": "Online Console",
 "version":"1.0",

 "description": "Simulador de consola de Online",
 "browser_action":
  "default_icon": "icon24.png",
  "default_popup": "primero.html"
 ,
 "permissions": [ "activeTab", "https://google.com" ], 

 "content_scripts": [
    "js": [ "jquery.min.js" ],
    "matches": [ "http://*/*", "https://*/*" ]
 ]

为什么我会收到此警告以及如何解决?

【问题讨论】:

【参考方案1】:

在内容脚本中匹配主机会隐式授予您主机权限。

所以,您的有效主机权限是"*://*",这就是您需要解决的问题。

如果你有 activeTab 权限来激活你的用户手势扩展,并且你需要 jQuery,只需在你的代码之前以编程方式首先注入它。

不要只是在需要之前“以防万一”不加选择地将 jQuery 注入每个页面。因此,您的 content_scripts 部分需要完全删除(或限制为 "https://google.com" 以匹配显式权限)

【讨论】:

以上是关于“广泛的主机权限”Webstore 警告,尽管只有一台主机具有权限的主要内容,如果未能解决你的问题,请参考以下文章

尽管设置了 iOS 部署目标,但可用性警告

尽管在 Clojure 中对 Java 构造函数有类型提示,但仍会出现反射警告

尽管更新,clang 仍会产生有关 c++11 的警告

警告:tensorflow:忽略带有图像 id 的检测,尽管配置参数为真

尽管没有一维数组,但在 Sklearn 中通过一维数组获得弃用警告

尽管阅读了常见问题解答,ProGuard 仍因“警告:类 [*] 意外包含类 [*]”而失败