マニフェストで API のアクセス許可を宣言する

ほとんどの chrome.* API を使用するには、拡張機能がマニフェストの permissions フィールドでその意図を宣言する必要があります。 拡張機能は、次のテーブルのアクセス許可文字列を使用してアクセス許可を宣言したり、パターンを使用して類似の文字列と一致させることができます。 アクセス許可は、マルウェアによって侵害された場合に拡張機能を制限するのに役立ちます。 一部のアクセス許可は、拡張機能のインストール前または実行時に必要に応じて、同意のためにユーザーに表示されます。これらはアクセス許可の警告です。

API でマニフェストでアクセス許可を宣言する必要がある場合は、その API のドキュメントを参照して、必要なアクセス許可を理解してください。 たとえば、 Storage API ページでは、 storage アクセス許可を宣言する方法について説明します。

マニフェスト ファイルのアクセス許可部分の例を次に示します。

"permissions": [
  "tabs",
  "bookmarks",
  "storage"
],
"optional_permissions": [
  "unlimitedStorage"
],
"host_permissions": [
  "http://www.blogger.com/",
  "http://*.google.com/"
],

次の表に、マニフェストで使用できる現在使用可能なアクセス許可文字列と説明を示します。

アクセス許可文字列 詳細
activeTab activeTab仕様に従って、拡張機能にアクセス許可が付与されることを要求します。
alarms chrome.alarms API への拡張機能アクセス権を付与します。
background Microsoft Edge を早期に起動し、遅れてシャットダウンして、拡張機能の寿命が長くなる可能性があります。
インストールされている拡張機能に background アクセス許可がある場合、ユーザーがユーザーのコンピューターにログインし、ユーザーが Microsoft Edge を起動する前に、Microsoft Edge が目に見えないほどに実行されます。 また、 background 権限を使用すると、ユーザーが Microsoft Edge を明示的に終了するまで、最後のウィンドウが閉じられた後でも Microsoft Edge の実行を継続できます。
手記: 無効になっている拡張機能は、インストールされていないかのように扱われます。
バックグラウンド スクリプトbackground アクセス許可を使用する必要があります。
bookmarks chrome.bookmarks API への拡張機能アクセス権を付与します。
browsingData chrome.browsingData API への拡張機能アクセス権を付与します。
certificateProvider chrome.certificateProvider API への拡張機能アクセス権を付与します。
clipboardRead 拡張機能で document.execCommand('paste')を使用する場合は必須です。
clipboardWrite 拡張機能が document.execCommand('copy') または document.execCommand('cut')を使用したことを示します。
contentSettings chrome.contentSettings API への拡張機能アクセス権を付与します。
contextMenus chrome.contextMenus API への拡張機能アクセス権を付与します。
cookies chrome.cookies API への拡張機能アクセス権を付与します。
debugger chrome.debugger API への拡張機能アクセス権を付与します。
declarativeContent chrome.declarativeContent API への拡張機能アクセス権を付与します。
declarativeNetRequest chrome.declarativeNetRequest API への拡張機能アクセス権を付与します。 拡張機能がホストアクセス許可を必要とせずに要求をブロックおよびアップグレードできるようにしますが、要求をリダイレクトしたりヘッダーを変更するにはホストのアクセス許可が必要です。
declarativeNetRequestWithHostAccess chrome.declarativeNetRequest API への拡張機能アクセス権を付与します。 要求に対して動作するには、常に要求 URL とイニシエーターに対するホストアクセス許可が必要です。
declarativeNetRequestFeedback chrome.declarativeNetRequest API 内のイベントとメソッドへの拡張アクセスを許可します。これにより、一致した宣言型ルールに関する情報が返されます。
declarativeWebRequest chrome.declarativeWebRequest API への拡張機能アクセス権を付与します。
desktopCapture chrome.desktopCapture API への拡張機能アクセス権を付与します。
documentScan chrome.documentScan API への拡張機能アクセス権を付与します。
downloads chrome.downloads API への拡張機能アクセス権を付与します。
enterprise.deviceAttributes chrome.enterprise.deviceAttributes API への拡張機能アクセス権を付与します。
enterprise.hardwarePlatform chrome.enterprise.hardwarePlatform API への拡張機能アクセス権を付与します。
enterprise.networkingAttributes chrome.enterprise.networkingAttributes API への拡張機能アクセス権を付与します。
enterprise.platformKeys chrome.enterprise.platformKeys API への拡張機能アクセス権を付与します。
experimental 拡張機能が任意の chrome.experimental.* API を使用する場合は必須です。
fileBrowserHandler chrome.fileBrowserHandler API への拡張機能アクセス権を付与します。
fileSystemProvider chrome.fileSystemProvider API への拡張機能アクセス権を付与します。
fontSettings chrome.fontSettings API への拡張機能アクセス権を付与します。
geolocation ユーザーにアクセス許可を求めずに、拡張機能で位置情報 API を使用できるようにします。
history chrome.history API への拡張機能アクセス権を付与します。
identity chrome.identity API への拡張機能アクセス権を付与します。
idle chrome.idle API への拡張機能アクセス権を付与します。
loginState chrome.loginState API への拡張機能アクセス権を付与します。
management chrome.management API への拡張機能アクセス権を付与します。
nativeMessaging ネイティブ メッセージング API への拡張機能アクセス権を付与します。
notifications chrome.notifications API への拡張機能アクセス権を付与します。
pageCapture chrome.pageCapture API への拡張機能アクセス権を付与します。
platformKeys chrome.platformKeys API への拡張機能アクセス権を付与します。
power chrome.power API への拡張機能アクセス権を付与します。
printerProvider chrome.printerProvider API への拡張機能アクセス権を付与します。
printing chrome.printing API への拡張機能アクセス権を付与します。
printingMetrics chrome.printingMetrics API への拡張機能アクセス権を付与します。
privacy chrome.privacy API への拡張機能アクセス権を付与します。
processes chrome.processes API への拡張機能アクセス権を付与します。
proxy chrome.proxy API への拡張機能アクセス権を付与します。
scripting chrome.scripting API への拡張機能アクセス権を付与します。
search chrome.search API への拡張機能アクセス権を付与します。
sessions chrome.sessions API への拡張機能アクセス権を付与します。
sidePanel chrome.sidePanel API への拡張機能アクセス権を付与します。 「Microsoft Edge サイドバーの拡張機能を開発する」を参照してください
signedInDevices chrome.signedInDevices API への拡張機能アクセス権を付与します。
storage chrome.storage API への拡張機能アクセス権を付与します。
system.cpu chrome.system.cpu API への拡張機能アクセス権を付与します。
system.display chrome.system.display API への拡張機能アクセス権を付与します。
system.memory chrome.system.memory API への拡張機能アクセス権を付与します。
system.storage chrome.system.storage API への拡張機能アクセス権を付与します。
tabCapture chrome.tabCapture API への拡張機能アクセス権を付与します。
tabGroups chrome.tabGroups API への拡張機能アクセス権を付与します。
tabs chrome.tabschrome.windowsなど、複数の API で使用できる Tab オブジェクトの特権フィールドへの拡張機能アクセス権を付与します。 多くの場合、これらの API を使用するために、拡張機能で tabs アクセス許可を宣言する必要はありません。
topSites chrome.topSites API への拡張機能アクセス権を付与します。
tts chrome.tts API への拡張機能アクセス権を付与します。
ttsEngine chrome.ttsEngine API への拡張機能アクセス権を付与します。
unlimitedStorage データベースやローカル ストレージ ファイルなど、クライアント側のデータを格納するための無制限のクォータを提供します。 このアクセス許可がないと、拡張機能は 5 MB のローカル ストレージに制限されます。
このアクセス許可は、Web SQL Databaseとアプリケーション キャッシュにのみ適用されます (「Issue 58985: Unlimited Storage アクセス許可をローカル ストレージに適用する必要がある」を参照してください)。
現在、このアクセス許可は、 http://*.contoso.comなどのワイルドカード サブドメインでは機能しません。
vpnProvider chrome.vpnProvider API への拡張機能アクセス権を付与します。
wallpaper chrome.wallpaper API への拡張機能アクセス権を付与します。
webNavigation chrome.webNavigation API への拡張機能アクセス権を付与します。
webRequest chrome.webRequest API への拡張機能アクセス権を付与します。
webRequestBlocking 拡張機能が chrome.webRequest API を使用して要求をブロックする場合は必須です。

注:

このページの一部は、 Google によって 作成および共有され、 クリエイティブ・コモンズ属性 4.0 国際ライセンスに記載されている条件に従って使用される作業に基づく変更です。 元のページはこちらにあります。

クリエイティブ・コモンズ・ライセンス この作品は 、クリエイティブ・コモンズ属性4.0国際ライセンスに基づきライセンスされています

関連項目