声明权限

如需使用大多数 chrome.* API,您的扩展程序或应用必须在清单的“permissions”字段中声明其意图。每项权限可以是已知字符串列表中的一个(例如“geolocation”),也可以是授予对一个或多个主机的访问权限的匹配模式。如果您的扩展程序或应用遭到恶意软件入侵,权限有助于限制损害。有些权限也会在安装前向用户显示,如权限警告中所述。

如果某个 API 要求您在清单中声明权限,其文档会说明如何执行此操作。例如,存储页面会说明如何声明“存储”权限。

以下是清单文件的权限部分示例:

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

下表列出了当前可用的权限:

权限 说明
"activeTab" 请求根据 activeTab 规范向扩展程序授予权限。
"alarms" 向您的扩展程序授予对 chrome.alarms API 的访问权限。
"background"

使 Chrome 提早启动并延迟关闭,以便应用和扩展程序可以运行更长时间。

当任何已安装的托管应用、封装应用或扩展程序具有“后台”权限时,Chrome 会在用户登录其计算机后立即(隐形)运行,而无需用户启动 Chrome。“background”权限还会使 Chrome 持续运行(即使在最后一个窗口关闭后),直到用户明确退出 Chrome。

注意:已停用的应用和扩展程序会被视为未安装。

您通常将“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。
"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。
"gcm" 向您的扩展程序授予对 chrome.gcm 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 的访问权限。
"sessions" 向您的扩展程序授予对 chrome.sessions API 的访问权限。
"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" 让您的扩展程序能够访问多个 API(包括 chrome.tabs 和 chrome.windows)使用的 Tab 对象的特权字段。在许多情况下,您的扩展程序无需声明 "tabs" 权限即可使用这些 API。
"topSites" 向您的扩展程序授予对 chrome.topSites API 的访问权限。
"tts" 向您的扩展程序授予对 chrome.tts API 的访问权限。
"ttsEngine" 让您的扩展程序可以访问 chrome.ttsEngine API。
"unlimitedStorage" 为存储客户端数据(例如数据库和本地存储文件)提供无限配额。 如果没有此权限,扩展程序或应用最多只能使用 5 MB 的本地存储空间。
注意:此权限仅适用于 Web SQL 数据库和应用缓存(请参阅问题 58985)。此外,它目前不适用于通配符子网域,例如 http://*.example.com。
"vpnProvider" 让您的扩展程序有权访问 chrome.vpnProvider API。
"webNavigation" 让您的扩展程序可以访问 chrome.webNavigation API。
"webRequest" 让您的扩展程序能够访问 chrome.webRequest API。
"webRequestBlocking" 如果扩展程序以阻塞方式使用 chrome.webRequest API,则必须提供此字段。