Deklarowanie uprawnień

Aby korzystać z większości interfejsów API rozszerzeń i funkcji, musisz zadeklarować intencję rozszerzenia w polach uprawnień w pliku manifestu. Rozszerzenia mogą prosić o te kategorie uprawnień określone za pomocą odpowiednich kluczy manifestu:

"permissions"
Zawiera elementy z listy znanych ciągów. Zmiany mogą spowodować wyświetlenie ostrzeżenia.
"optional_permissions"
Przyznany przez użytkownika w czasie działania, a nie w momencie instalacji.
"content_scripts.matches"
Zawiera co najmniej jeden wzorzec dopasowania, który umożliwia skryptom treści wstrzykiwanie do jednego lub większej liczby hostów. Zmiany mogą spowodować wyświetlenie ostrzeżenia.
"host_permissions"
Zawiera co najmniej jeden wzorzec dopasowania, który daje dostęp do co najmniej jednego hosta. Zmiany mogą spowodować wyświetlenie ostrzeżenia.
"optional_host_permissions"
Przyznany przez użytkownika w czasie działania, a nie w momencie instalacji.

Uprawnienia pomagają ograniczyć szkody powstałe w wyniku ataku złośliwego oprogramowania. Niektóre ostrzeżenia o uprawnieniach są wyświetlane użytkownikom z prośbą o zgodę przed instalacji lub w czasie działania, jak opisano w sekcji Uprawnienia z ostrzeżeniami.

Rozważ użycie opcjonalnych uprawnień w przypadku, gdy funkcje rozszerzenia pozwala użytkownikom świadomie kontrolować dostęp do zasobów i danych.

Jeśli interfejs API wymaga uprawnień, instrukcje ich zadeklarowania znajdziesz w dokumentacji. Dla przykład: Storage API.

Plik manifestu

Oto przykład sekcji uprawnień w pliku manifest:

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
}

Uprawnienia hosta

Uprawnienia hosta umożliwiają rozszerzeniom interakcję z wzorcami dopasowania adresu URL. Niektóre interfejsy API Chrome wymagają uprawnień hosta oraz własnych uprawnień interfejsu API, które są wymienione na każdej stronie referencyjnej. Oto przykłady:

Uprawnienia z ostrzeżeniami

Gdy rozszerzenie wymaga wielu uprawnień i wiele z nich wyświetla się ostrzeżenia podczas instalacji, użytkownik zobaczy listę ostrzeżeń, podobnie jak w tym przykładzie:

Ostrzeżenia o uprawnieniach rozszerzenia podczas instalacji

Użytkownicy chętniej ufają rozszerzeniu, które wyświetla się z ograniczonymi ostrzeżeniami lub gdy informacje o uprawnieniach są wyjaśnione do klientów. Aby uniknąć alarmu, rozważ wdrożenie opcjonalnych uprawnień lub mniej zaawansowanego interfejsu API. ostrzeżeniami. Sprawdzone metody postępowania z ostrzeżeniami znajdziesz w artykule Ostrzeżenia o uprawnieniach. Konkretna są wymienione wraz z uprawnieniami, do których mają zastosowanie, Lista referencyjna uprawnień.

Dodawanie lub zmienianie wzorców dopasowania w polach "host_permissions" i "content_scripts.matches" w pliku manifestu wywoła ostrzeżenie. Więcej informacji: Aktualizuję uprawnienia.

Zezwól na dostęp

Jeśli rozszerzenie ma działać pod adresami URL file:// lub w trybie incognito, użytkownicy muszą zezwolić mu na dostęp na stronie z informacjami o nim. Instrukcje otwierania strony z informacjami znajdziesz w sekcji Zarządzanie rozszerzeniami.

Zezwól na dostęp do adresów URL plików i stron incognito

  1. Kliknij prawym przyciskiem myszy ikonę rozszerzenia w Chrome.
  2. Wybierz Zarządzaj rozszerzeniem.

    Menu kontekstowe rozszerzenia
    Menu rozszerzeń
  3. Przewiń w dół, aby włączyć dostęp do adresów URL plików lub trybu incognito.

    Zezwalaj na adresy URL plików i tryb incognito na stronie z informacjami o rozszerzeniu
    Włączono dostęp do adresów URL plików i trybu incognito.

Aby sprawdzić, czy użytkownik zezwolił na dostęp, możesz wywołać metodę extension.isAllowedIncognitoAccess() lub extension.isAllowedFileSchemeAccess()