Pour utiliser la plupart des API d'extension et des fonctionnalités, vous devez déclarer l'intent de votre extension dans les champs d'autorisation du fichier manifeste. Les extensions peuvent demander les catégories d'autorisations suivantes, spécifiées à l'aide des clés respectives du fichier manifeste:
"permissions"
- Contient des éléments d'une liste de chaînes connues. Toute modification peut déclencher un avertissement.
"optional_permissions"
- Accordé par l'utilisateur au moment de l'exécution, et non au moment de l'installation.
"content_scripts.matches"
- Contient un ou plusieurs formats de correspondance qui permettent d'injecter des scripts de contenu dans un ou plusieurs hôtes. Toute modification peut déclencher un avertissement.
"host_permissions"
- Contient un ou plusieurs formats de correspondance qui donnent accès à un ou plusieurs hôtes. Toute modification peut déclencher un avertissement.
"optional_host_permissions"
- Accordé par l'utilisateur au moment de l'exécution, et non au moment de l'installation.
Les autorisations permettent de limiter les dommages si votre extension est compromise par un logiciel malveillant. Certains avertissements s'affichent pour demander l'autorisation des utilisateurs avant installation ou au moment de l'exécution, comme indiqué dans la section Autorisation avec avertissements.
Envisagez d'utiliser des autorisations facultatives chaque fois que les fonctionnalités de votre extension permet de fournir aux utilisateurs un contrôle éclairé sur l'accès aux ressources et aux données.
Si une API nécessite une autorisation, sa documentation explique comment la déclarer. Pour une consultez la page API Storage.
Fichier manifeste
Voici un exemple de la section des autorisations d'un fichier 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
}
Autorisations d'hôte
Les autorisations d'accès à l'hôte permettent aux extensions d'interagir avec les formats de correspondance de l'URL. Certaines API Chrome nécessitent des autorisations d'hôte en plus de leurs propres autorisations d'API. Ces autorisations sont décrites sur chaque page de référence. Voici quelques exemples :
- Envoyez des requêtes
fetch()
à partir du service worker d'extension et des pages d'extension. - Lisez et interrogez les propriétés de l'onglet sensibles (url, title et favIconUrl) à l'aide de l'API
chrome.tabs
. - Injectez un script de contenu de manière programmatique.
- Surveillez et contrôlez les requêtes réseau avec l'API
chrome.webRequest
. - Accédez aux cookies avec l'API
chrome.cookies
. - Redirigez et modifiez des requêtes et des en-têtes de réponse à l'aide de l'API
chrome.declarativeNetRequest
.
Autorisations avec avertissements
Lorsqu'une extension demande plusieurs autorisations et qu'un grand nombre d'entre elles s'affichent des avertissements lors de l'installation, une liste d'avertissements s'affiche, comme dans l'exemple suivant:
Les utilisateurs sont plus susceptibles de faire confiance à une extension lorsqu'un nombre limité d'avertissements est indiqué ou des explications sur les autorisations. pour eux. Envisagez d'implémenter des autorisations facultatives ou une API moins puissante pour ne pas vous effrayer. d'avertissements. Pour connaître les bonnes pratiques concernant les avertissements, consultez Consignes concernant les avertissements liés aux autorisations. Spécifique sont répertoriés avec les autorisations auxquelles ils s'appliquent dans Autorisations.
Ajouter ou modifier des modèles de correspondance dans "host_permissions"
et "content_scripts.matches"
du fichier manifeste déclencheront également un avertissement. Pour en savoir plus, consultez
Modifier les autorisations
Autorisez l'accès
Si votre extension doit être exécutée sur des URL file://
ou fonctionner en mode navigation privée, les utilisateurs doivent accorder l'accès à l'extension via sa page d'informations. Pour savoir comment ouvrir la page d'informations, consultez la section Gérer vos extensions.
Autoriser l'accès aux URL de fichiers et aux pages de navigation privée
- Effectuez un clic droit sur l'icône de l'extension dans Chrome.
Sélectionnez Gérer l'extension.
<ph type="x-smartling-placeholder">.Faites défiler la page vers le bas pour activer l'accès aux URL de fichiers ou le mode navigation privée.
<ph type="x-smartling-placeholder">
Pour déterminer si l'utilisateur a autorisé l'accès, vous pouvez appeler extension.isAllowedIncognitoAccess()
ou
extension.isAllowedFileSchemeAccess()