--- title: optional_permissions slug: Mozilla/Add-ons/WebExtensions/manifest.json/optional_permissions tags: - Add-ons - WebExtensions - manifest.json - optional_permissions translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/optional_permissions ---
{{AddonSidebar}}
Array
必須 いいえ
"optional_permissions": [
  "*://developer.mozilla.org/*",
  "webRequest"
]

optional_permissions キーを使って、拡張機能がインストールされた後に、実行時に要求するパーミッションを一覧できます。

permissions キーは拡張機能がインストールされる時に必要とするパーミッションを一覧しますが、optional_permissions は拡張機能のインストール時には必要でないが、インストール後のどこかで要求されることのあるパーミッションを一覧します。パーミッションを要求するには、permissions API を使います。パーミッションを要求すると、おそらくユーザーに拡張機能にパーミッションを許可しても良いかを尋ねるダイアログが表示されるでしょう。

このキーは 2種類のパーミッションを含みます: ホストパーミッションと API パーミッションです。

ホストパーミッション

これは permissions キーで指定できるホストパーミッションと同じです。

API パーミッション

下記のいずれも入れることができますが、すべてのブラウザーに入ってはいません: ブラウザー固有の詳細については、互換性テーブルを確認してください:

これは permissions で許可される API パーミッションのサブセットです。

このセットでは、下記のパーミッションが、ユーザープロンプトなしで暗黙的に許可されます: activeTab, cookies, idle, webRequest, webRequestBlocking

 "optional_permissions": ["*://developer.mozilla.org/*"]

拡張機能に developer.mozilla.org 以下のページの権限アクセス要求を有効にします。

  "optional_permissions": ["tabs"]

拡張機能に tabs API の権限部分へのアクセス要求を有効にします。

  "optional_permissions": ["*://developer.mozilla.org/*", "tabs"]

拡張機能に上記の両方への要求を有効にします。

ブラウザー実装状況

{{Compat("webextensions.manifest.optional_permissions")}}