web-dev-qa-db-ja.com

「広範なホストのアクセス許可」アクセス許可にホストが1つしかないにもかかわらずWebstore警告

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://*/*" ]
 }]
}

なぜこの警告が表示され、それを解決するのですか?

コンテンツスクリプトでホストを一致させると、暗黙的にホスト権限が付与されます。

したがって、有効なホスト権限は"*://*"であり、それを修正する必要があります。

ユーザージェスチャーで拡張機能をアクティブにするためのactiveTab権限があり、jQueryが必要な場合は、コードの前にプログラムで最初に挿入するだけです。

JQueryが必要になる前に「念のため」すべてのページに無差別に挿入しないでください。したがって、content_scriptsセクションは完全に移動する必要があります(または、明示的な権限に一致させるために"https://google.com"に制限する必要があります)

8
Xan