대부분의 확장 프로그램 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 권한 외에 호스트 권한도 필요합니다. 예를 들면 다음과 같습니다.
- 확장 프로그램 서비스 워커 및 확장 프로그램 페이지에서
fetch()
요청을 실행합니다. chrome.tabs
API를 사용하여 민감한 탭 속성 (url, title, favIconUrl)을 읽고 쿼리합니다.- 프로그래매틱 방식으로 콘텐츠 스크립트를 삽입합니다.
chrome.webRequest
API를 사용하여 네트워크 요청을 모니터링하고 제어합니다.chrome.cookies
API를 사용하여 쿠키에 액세스합니다.chrome.declarativeNetRequest
API를 사용하여 요청 및 응답 헤더를 리디렉션하고 수정합니다.
경고가 있는 권한
확장 프로그램에서 여러 권한을 요청하고 그중 다수가 표시되는 경우 경고가 표시되면 다음 예와 같이 사용자에게 경고 목록이 표시됩니다.
경고가 제한되거나 권한이 설명되면 사용자가 확장 프로그램을 신뢰할 가능성이 더 높습니다. 있습니다. 경보를 방지하려면 선택적 권한 또는 덜 강력한 API를 구현해 보세요. 있습니다. 경고에 관한 권장사항은 권한 경고 가이드라인을 참고하세요. Specific(구체적임) 경고가 적용되는 권한과 함께 권한 참조 목록입니다.
"host_permissions"
및 "content_scripts.matches"
에서 일치 패턴 추가 또는 변경
설정 시 경고가 표시됩니다. 자세한 내용은
권한 업데이트
액세스 허용
확장 프로그램이 file://
URL에서 실행되거나 시크릿 모드로 작동해야 하는 경우 사용자는 확장 프로그램 세부정보 페이지에서 확장 프로그램에 액세스 권한을 부여해야 합니다. 확장 프로그램 관리 아래에서 세부정보 페이지를 여는 방법을 확인할 수 있습니다.
파일 URL 및 시크릿 페이지 액세스 허용
- Chrome에서 확장 프로그램 아이콘을 마우스 오른쪽 버튼으로 클릭합니다.
확장 프로그램 관리를 선택합니다.
<ph type="x-smartling-placeholder">파일 URL 또는 시크릿 모드에 액세스할 수 있도록 아래로 스크롤합니다.
<ph type="x-smartling-placeholder">
사용자가 액세스를 허용했는지 확인하려면 extension.isAllowedIncognitoAccess()
또는
extension.isAllowedFileSchemeAccess()