권한 선언

대부분의 확장 프로그램 API 및 기능을 사용하려면 매니페스트의 권한 필드에서 확장 프로그램의 인텐트를 선언해야 합니다. 확장 프로그램은 각 매니페스트 키를 사용하여 지정된 다음 카테고리의 권한을 요청할 수 있습니다.

"permissions"
알려진 문자열 목록의 항목이 포함되어 있습니다. 변경사항으로 인해 경고가 트리거될 수 있습니다.
"optional_permissions"
설치 시점이 아닌 런타임에 사용자가 부여합니다.
"content_scripts.matches"
콘텐츠 스크립트가 하나 이상의 호스트에 삽입할 수 있도록 하는 하나 이상의 일치 패턴을 포함합니다. 변경사항으로 인해 경고가 트리거될 수 있습니다.
"host_permissions"
하나 이상의 호스트에 대한 액세스 권한을 부여하는 하나 이상의 일치 패턴을 포함합니다. 변경사항으로 인해 경고가 트리거될 수 있습니다.
"optional_host_permissions"
설치 시점이 아닌 런타임에 사용자가 부여합니다.

권한을 사용하면 확장 프로그램이 멀웨어에 의해 손상된 경우 피해를 줄이는 데 도움이 됩니다. 사용자가 동의하기 전에 일부 권한 경고가 사용자에게 표시됨 경고가 있는 권한에 설명된 대로 확장 또는 런타임 시에만 발생할 수 있습니다.

확장 프로그램의 기능이 어디에서든 선택적 권한을 사용하는 것이 좋습니다. 사용자에게 리소스와 데이터에 대한 액세스에 대해 정보에 입각한 제어 권한을 제공할 수 있습니다.

API에 권한이 필요한 경우 문서에 권한을 선언하는 방법이 설명되어 있습니다. 예는 Storage API를 참조하세요.

매니페스트

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

manifest.json:

{
  "name": "Permissions Extension",
  ...
  "permissions": [
    "activeTab",
    "contextMenus",
    "storage"
  ],
  "optional_permissions": [
    "topSites",
  ],
  "host_permissions": [
    "https://www.developer.chrome.com/*"
  ],
  "optional_host_permissions":[
    "https://*/*",
    "http://*/*"
  ],
  ...
  "manifest_version": 3
}

호스트 권한

호스트 권한을 사용하면 확장 프로그램이 URL의 일치 패턴과 상호작용할 수 있습니다. 일부 Chrome API에는 각 참조 페이지에 설명된 자체 API 권한 외에 호스트 권한도 필요합니다. 예를 들면 다음과 같습니다.

경고가 있는 권한

확장 프로그램에서 여러 권한을 요청하고 그중 다수가 표시되는 경우 경고가 표시되면 다음 예와 같이 사용자에게 경고 목록이 표시됩니다.