Объявление разрешений API в манифесте

Чтобы использовать большинство API- интерфейсов chrome.* , расширение должно объявить свое намерение в permissions полях манифеста. Расширение может объявлять разрешения с помощью строки разрешений из следующей таблицы или использовать шаблон для сопоставления похожих строк. Разрешения помогают ограничить расширение, если оно скомпрометировано вредоносными программами. Некоторые разрешения отображаются пользователям для получения согласия перед установкой расширения или во время выполнения при необходимости; это предупреждения о разрешениях.

Если API требует объявления разрешений в манифесте, сведения о необходимых разрешениях см. в документации по api. Например, на странице 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 Предоставляет расширению доступ к привилегированным полям объектов TAB , которые могут использоваться несколькими API, включая chrome.tabs и chrome.windows. Во многих случаях расширению не нужно объявлять tabs разрешение, чтобы использовать эти API.
topSites Предоставляет расширению доступ к chrome.topSites API.
tts Предоставляет расширению доступ к chrome.tts API.
ttsEngine Предоставляет расширению доступ к chrome.ttsEngine API.
unlimitedStorage Предоставляет неограниченную квоту для хранения данных на стороне клиента, таких как базы данных и локальные файлы хранилища. Без этого разрешения расширение ограничено 5 МБ локального хранилища.
Это разрешение применяется только к веб-База данных SQL и кэшу приложений (см. раздел Проблема 58985: неограниченное разрешение хранилища должно применяться к локальному хранилищу).
Сейчас это разрешение не работает с поддоменами с поддоменами с подстановочными знаками, такими как http://*.contoso.com.
vpnProvider Предоставляет расширению доступ к chrome.vpnProvider API.
wallpaper Предоставляет расширению доступ к chrome.wallpaper API.
webNavigation Предоставляет расширению доступ к chrome.webNavigation API.
webRequest Предоставляет расширению доступ к chrome.webRequest API.
webRequestBlocking Требуется, если расширение использует chrome.webRequest API для блокировки запросов.

Примечание.

Части этой страницы являются изменениями, основанными на работе, созданной и совместно используемой Google и используемой в соответствии с условиями, описанными в международной лицензии Creative Commons Attribution 4.0. Исходная страница находится здесь.

Creative Commons License Эта работа лицензируется по международной лицензии Creative Commons Attribution 4.0.

См. также