Machtigingen declareren

Als u de meeste extensie-API's en -functies wilt gebruiken, moet u de intentie van uw extensie aangeven in de machtigingsvelden van het manifest . Extensies kunnen de volgende categorieën machtigingen aanvragen, gespecificeerd met behulp van de respectieve manifestsleutels:

"permissions"
Bevat items uit een lijst met bekende tekenreeksen . Wijzigingen kunnen een waarschuwing veroorzaken.
"optional_permissions"
Toegekend door de gebruiker tijdens runtime, in plaats van tijdens de installatie.
"content_scripts.matches"
Bevat een of meer matchpatronen waarmee inhoudsscripts in een of meer hosts kunnen worden geïnjecteerd. Wijzigingen kunnen een waarschuwing veroorzaken.
"host_permissions"
Bevat een of meer matchpatronen die toegang geven tot een of meer hosts. Wijzigingen kunnen een waarschuwing veroorzaken.
"optional_host_permissions"
Toegekend door de gebruiker tijdens runtime, in plaats van tijdens de installatie.

Machtigingen helpen de schade te beperken als uw extensie wordt aangetast door malware. Sommige toestemmingswaarschuwingen worden aan gebruikers getoond voor hun toestemming vóór de installatie of tijdens runtime, zoals beschreven in Toestemming met waarschuwingen .

Overweeg het gebruik van optionele machtigingen waar de functionaliteit van uw extensie dit toelaat, om gebruikers geïnformeerde controle te geven over de toegang tot bronnen en gegevens.

Als een API toestemming vereist, wordt in de documentatie uitgelegd hoe u deze kunt declareren. Zie Opslag-API voor een voorbeeld.

Manifest

Hier volgt een voorbeeld van de machtigingssectie van een manifestbestand :

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
}

Hostmachtigingen

Met hostrechten kunnen extensies communiceren met de overeenkomende patronen van de URL. Sommige Chrome API's vereisen hostrechten naast hun eigen API-rechten, die op elke referentiepagina worden gedocumenteerd. Hier zijn enkele voorbeelden:

Machtigingen met waarschuwingen

Wanneer een extensie meerdere machtigingen vraagt, en veel daarvan waarschuwingen weergeven bij de installatie, ziet de gebruiker een lijst met waarschuwingen, zoals in het volgende voorbeeld:

Waarschuwingen voor extensietoestemming bij installatie

Gebruikers vertrouwen eerder een extensie met beperkte waarschuwingen of wanneer rechten aan hen worden uitgelegd. Overweeg om optionele machtigingen of een minder krachtige API te implementeren om alarmerende waarschuwingen te voorkomen. Zie Richtlijnen voor toestemmingswaarschuwingen voor best practices voor waarschuwingen. Specifieke waarschuwingen worden weergegeven met de machtigingen waarop ze van toepassing zijn in de referentielijst voor machtigingen .

Het toevoegen of wijzigen van overeenkomstpatronen in de velden "host_permissions" en "content_scripts.matches" van het manifestbestand zal ook een waarschuwing activeren. Zie Machtigingen bijwerken voor meer informatie.

Toegang te verlenen

Als uw extensie moet worden uitgevoerd op file:// URL's of in de incognitomodus moet werken, moeten gebruikers de extensie toegang geven op de detailpagina. Instructies voor het openen van de detailpagina vindt u onder Uw extensies beheren .

Sta toegang toe tot bestands-URL's en incognitopagina's

  1. Klik met de rechtermuisknop op het extensiepictogram in Chrome.
  2. Kies Extensie beheren .

    Contextmenu voor extensie
    Extensiemenu
  3. Scroll naar beneden om toegang tot bestands-URL's of de incognitomodus in te schakelen.

    Sta bestands-URL's en de incognitomodus toe op de extensiedetailpagina
    Toegang tot bestands-URL's en incognitomodus ingeschakeld.

Om te detecteren of de gebruiker toegang heeft verleend, kunt u extension.isAllowedIncognitoAccess() of extension.isAllowedFileSchemeAccess() aanroepen.