尽管只有一台主机拥有权限,但“广泛的主机权限”网络商店警告

时间:2018-10-22 12:32:32

标签: javascript html google-chrome-extension permissions manifest

我正在尝试发布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 个答案:

答案 0 :(得分:3)

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

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

如果您具有activeTab权限来激活用户手势上的扩展程序,并且需要jQuery,只需先以编程方式在代码之前注入该代码即可。

在需要之前,不要随意将jQuery插入每个页面中,以防万一。因此,您的content_scripts部分需要完全删除(或限制为"https://google.com"才能匹配显式权限)