퍼미션 선언

대부분의 chrome.*APIs를 사용하기 위해서는 manifest 파일에 있는 “permissions” 필드에 그 의도를 선언해야 합니다. 퍼미션은 “geolocation”처럼 알려진 문자열 목록중에 하나가 오거나, 1개 또는 여러 호스트에 액세스 할 수 있는 match pattern이 올 수 있습니다. 퍼미션은 확장 프로그램이나 앱이 멀웨어(악성코드)에 의해 손상될 때 그 피해를 줄여주는데 도움이 됩니다. 어떠한 퍼미션은 사용자가 인스톨 하기 전에 상세내용이 경고창(Permission Warnings)으로 보여지기도 합니다.

API가 매니페스트 내에 퍼미션 선언을 필요로 할 경우, 해당 API 문서를 참조하면 됩니다. 그 예로 Storage 페이지에서는 “storage” 퍼미션을 어떻게 선언하는지 보여주고 있습니다.

다음은 매니페스트 파일의 퍼미션 부분에 대한 예입니다:

다음 목록은 현재 사용가능한 퍼미션들입니다:

Permission설명
"activeTab"activeTab 명세에 따라 권한을 받은 확장 프로그램이 요청을 합니다.
"alarms"확장 프로그램에게 chrome.alarms API에 대한 액세스를 제공합니다.
"audioModem"확장 프로그램에게 chrome.audioModem API에 대한 액세스를 제공합니다.
"background"
"bookmarks"확장 프로그램에게 chrome.bookmarks API에 대한 액세스를 제공합니다.
"browsingData"확장 프로그램에게 chrome.browsingData API에 대한 액세스를 제공합니다.
"clipboardRead"
"clipboardWrite"
"contentSettings"확장 프로그램에게 chrome.contentSettings API에 대한 액세스를 제공합니다.
"contextMenus"확장 프로그램에게 chrome.contextMenus API에 대한 액세스를 제공합니다.
"cookies"확장 프로그램에게 chrome.cookies API에 대한 액세스를 제공합니다.
"copresence"확장 프로그램에게 chrome.copresence API에 대한 액세스를 제공합니다.
"debugger"확장 프로그램에게 chrome.debugger API에 대한 액세스를 제공합니다.
"declarativeContent"확장 프로그램에게 chrome.declarativeContent API에 대한 액세스를 제공합니다.
"declarativeWebRequest"확장 프로그램에게 chrome.declarativeWebRequest API에 대한 액세스를 제공합니다.
"desktopCapture"확장 프로그램에게 chrome.desktopCapture API에 대한 액세스를 제공합니다.
"dns"확장 프로그램에게 chrome.dns API에 대한 액세스를 제공합니다.
"documentScan"확장 프로그램에게 chrome.documentScan API에 대한 액세스를 제공합니다.
"downloads"확장 프로그램에게 chrome.downloads API에 대한 액세스를 제공합니다.
"enterprise.platformKeys"확장 프로그램에게 chrome.enterprise.platformKeys API에 대한 액세스를 제공합니다.
"experimental"
"fileBrowserHandler"확장 프로그램에게 chrome.fileBrowserHandler API에 대한 액세스를 제공합니다.
"fileSystemProvider"확장 프로그램에게 chrome.fileSystemProvider API에 대한 액세스를 제공합니다.
"fontSettings"확장 프로그램에게 chrome.fontSettings API에 대한 액세스를 제공합니다.
"gcm"확장 프로그램에게 chrome.gcm API에 대한 액세스를 제공합니다.
"geolocation"
"history"확장 프로그램에게 chrome.history API에 대한 액세스를 제공합니다.
"identity"확장 프로그램에게 chrome.identity API에 대한 액세스를 제공합니다.
"idle"확장 프로그램에게 chrome.idle API에 대한 액세스를 제공합니다.
"idltest"확장 프로그램에게 chrome.idltest API에 대한 액세스를 제공합니다.
"location"확장 프로그램에게 chrome.location API에 대한 액세스를 제공합니다.
"management"확장 프로그램에게 chrome.management API에 대한 액세스를 제공합니다.
"nativeMessaging"확장 프로그램에게 native messaging API에 대한 액세스를 제공합니다.
"networking.config"확장 프로그램에게 chrome.networking.config API에 대한 액세스를 제공합니다.
"notificationProvider"확장 프로그램에게 chrome.notificationProvider API에 대한 액세스를 제공합니다.
"notifications"확장 프로그램에게 chrome.notifications API에 대한 액세스를 제공합니다.
"pageCapture"확장 프로그램에게 chrome.pageCapture API에 대한 액세스를 제공합니다.
"platformKeys"확장 프로그램에게 chrome.platformKeys API에 대한 액세스를 제공합니다.
"power"확장 프로그램에게 chrome.power API에 대한 액세스를 제공합니다.
"printerProvider"확장 프로그램에게 chrome.printerProvider API에 대한 액세스를 제공합니다.
"privacy"확장 프로그램에게 chrome.privacy API에 대한 액세스를 제공합니다.
"processes"확장 프로그램에게 chrome.processes API에 대한 액세스를 제공합니다.
"proxy"확장 프로그램에게 chrome.proxy 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에 대한 액세스를 제공합니다.
"tabs"
"topSites"확장 프로그램에게 chrome.topSites API에 대한 액세스를 제공합니다.
"tts"확장 프로그램에게 chrome.tts API에 대한 액세스를 제공합니다.
"ttsEngine"확장 프로그램에게 chrome.ttsEngine API에 대한 액세스를 제공합니다.
"unlimitedStorage"
"vpnProvider"확장 프로그램에게 chrome.vpnProvider API에 대한 액세스를 제공합니다.
"wallpaper"확장 프로그램에게 chrome.wallpaper API에 대한 액세스를 제공합니다.
"webNavigation"확장 프로그램에게 chrome.webNavigation API에 대한 액세스를 제공합니다.
"webRequest"확장 프로그램에게 chrome.webRequest API에 대한 액세스를 제공합니다.
"webRequestBlocking"