권한 선언

대부분의 Chrome을 사용합니다.* 확장 프로그램 또는 앱은 매니페스트의 '권한' 필드에서 인텐트를 선언해야 합니다. 각 권한은 알려진 문자열 목록 (예: '위치정보') 또는 하나 이상의 호스트에 대한 액세스 권한을 부여하는 일치 패턴 중 하나일 수 있습니다. 권한을 사용하면 확장 프로그램 또는 앱이 멀웨어에 의해 손상된 경우 피해를 제한하는 데 도움이 됩니다. 권한 경고에 자세히 설명된 대로 일부 권한은 설치 전에 사용자에게 표시됩니다.

API에서 매니페스트에서 권한을 선언해야 하는 경우 관련 문서에서 방법을 확인할 수 있습니다. 예를 들어 저장소 페이지에서 '저장소' 권한을 선언하는 방법을 확인할 수 있습니다.

다음은 매니페스트 파일의 권한 부분의 예입니다.

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

다음 표에는 현재 사용 가능한 권한이 나와 있습니다.

권한 설명
"activeTab" 확장 프로그램에 activeTab 사양에 따라 권한을 부여하도록 요청합니다.
"alarms" 확장 프로그램에 chrome.alarms API에 대한 액세스 권한을 부여합니다.
"background"

Chrome을 일찍 시작하고 늦게 종료하여 앱과 확장 프로그램의 수명이 연장되도록 합니다.

설치된 호스팅 앱, 패키지 앱 또는 확장 프로그램에 '백그라운드' 권한이 있는 경우 사용자가 컴퓨터에 로그인하는 즉시 Chrome이 실행되기 전에 Chrome이 눈에 띄지 않게 실행됩니다. 또한 '백그라운드' 권한이 있으면 사용자가 Chrome을 명시적으로 종료할 때까지 마지막 창이 닫힌 후에도 Chrome이 계속 실행됩니다.

참고: 사용 중지된 앱과 확장 프로그램은 설치되지 않은 것처럼 처리됩니다.

일반적으로 백그라운드 페이지, 이벤트 페이지 또는 (호스팅된 앱의 경우) 백그라운드 창에 '백그라운드' 권한을 사용합니다.

"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" 사용자에게 권한을 요청하지 않고 확장 프로그램 또는 앱이 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" 확장 프로그램에 chrome.tabschrome.windows를 비롯한 여러 API에서 사용하는 Tab 객체의 권한이 있는 필드에 액세스할 수 있는 권한을 부여합니다. 대부분의 경우 확장 프로그램에서 "tabs" 권한을 선언하지 않아도 이러한 API를 사용할 수 있습니다.
"topSites" 확장 프로그램에 chrome.topSites API 액세스 권한을 부여합니다.
"tts" 확장 프로그램에 chrome.tts API에 대한 액세스 권한을 부여합니다.
"ttsEngine" 확장 프로그램에 chrome.ttsEngine API에 대한 액세스 권한을 부여합니다.
"unlimitedStorage" 데이터베이스 및 로컬 저장소 파일과 같은 클라이언트 측 데이터를 저장하기 위한 무제한 할당량을 제공합니다. 이 권한이 없으면 확장 프로그램 또는 앱의 로컬 저장소는 5MB로 제한됩니다.
참고: 이 권한은 웹 SQL 데이터베이스 및 애플리케이션 캐시에만 적용됩니다(문제 58985 참조). 또한, 현재 http://*.example.com와 같은 와일드 카드 하위 도메인과는 호환되지 않습니다.
"vpnProvider" 확장 프로그램에 chrome.vpnProvider API에 대한 액세스 권한을 부여합니다.
"wallpaper" 확장 프로그램에 chrome.wallpaper API 액세스 권한을 부여합니다.
"webNavigation" 확장 프로그램에 chrome.webNavigation API 액세스 권한을 부여합니다.
"webRequest" 확장 프로그램에 chrome.webRequest API에 대한 액세스 권한을 부여합니다.
"webRequestBlocking" 확장 프로그램이 차단 방식으로 chrome.webRequest API를 사용하는 경우 필요합니다.