Ajouter des URL à la liste d'autorisation

Les listes d'autorisation vous permettent de désigner des URL spécifiques pré-approuvées pour l'accès par votre script ou votre module complémentaire. Les listes d'autorisation contribuent à protéger les données utilisateur. Lorsque vous définissez une liste d'autorisation, les projets de script ne peuvent pas accéder aux URL qui ne figurent pas sur la liste d'autorisation.

Ce champ est facultatif lorsque vous installez un déploiement de test, mais il est obligatoire lorsque vous créez un déploiement avec gestion des versions.

Vous utilisez des listes d'autorisation lorsque votre script ou votre module complémentaire effectue les actions suivantes:

  • Récupère ou récupère des informations à partir d'un emplacement externe (tel que des points de terminaison HTTPS) à l'aide du service Apps Script UrlFetch. Pour ajouter des URL à la liste d'autorisation pour l'extraction, incluez le champ urlFetchWhitelist dans votre fichier manifeste.
  • Ouvre ou affiche une URL en réponse à une action de l'utilisateur (obligatoire pour les modules complémentaires Google Workspace qui ouvrent ou affichent des URL externes à Google). Pour ajouter des URL à la liste d'autorisation pour l'ouverture, incluez le champ addOns.common.openLinkUrlPrefixes dans votre fichier manifeste.

Ajouter des préfixes à votre liste d'autorisation

Lorsque vous spécifiez des listes d'autorisation dans votre fichier manifeste (en incluant le champ addOns.common.openLinkUrlPrefixes ou urlFetchWhitelist), vous devez inclure une liste de préfixes d'URL. Les préfixes que vous ajoutez au fichier manifeste doivent répondre aux exigences suivantes:

  • Chaque préfixe doit être une URL valide.
  • Chaque préfixe doit utiliser https://, et non http://.
  • Chaque préfixe doit avoir un domaine complet.
  • Chaque préfixe doit avoir un chemin d'accès non vide. Par exemple, https://www.google.com/ est valide, mais https://www.google.com ne l'est pas.
  • Vous pouvez utiliser des caractères génériques pour établir une correspondance avec les préfixes de sous-domaine de l'URL.
  • Vous pouvez utiliser un seul caractère générique * dans le champ addOns.common.openLinkUrlPrefixes pour faire correspondre tous les liens, mais cela n'est pas recommandé, car cela peut exposer les données d'un utilisateur à des risques et prolonger le processus d'examen des modules complémentaires. N'utilisez un caractère générique que si votre module complémentaire le requiert.

Pour déterminer si une URL correspond à un préfixe figurant sur la liste d'autorisation, les règles suivantes s'appliquent:

  • La correspondance des chemins d'accès est sensible à la casse.
  • Si le préfixe est identique à l'URL, il s'agit d'une correspondance.
  • Si l'URL est identique ou si elle est un enfant du préfixe, il s'agit d'une correspondance.

Par exemple, le préfixe https://example.com/foo correspond aux URL suivantes:

  • https://example.com/foo
  • https://example.com/foo/
  • https://example.com/foo/bar
  • https://example.com/foo?bar
  • https://example.com/foo#bar

Utiliser des caractères génériques

Vous pouvez utiliser un seul caractère générique (*) pour établir une correspondance avec un sous-domaine pour les champs urlFetchWhitelist et addOns.common.openLinkUrlPrefixes. Vous ne pouvez pas utiliser plus d'un caractère générique pour établir une correspondance avec plusieurs sous-domaines. Le caractère générique doit représenter le préfixe de début de l'URL.

Par exemple, le préfixe https://*.example.com/foo correspond aux URL suivantes:

  • https://subdomain.example.com/foo
  • https://any.number.of.subdomains.example.com/foo

Le préfixe https://*.example.com/foo ne correspond pas aux URL suivantes:

  • https://subdomain.example.com/bar (incompatibilité du suffixe)
  • https://example.com/foo (vous devez inclure au moins un sous-domaine)

Certaines règles de préfixe s'appliquent lorsque vous essayez d'enregistrer votre fichier manifeste. Par exemple, les préfixes suivants génèrent une erreur s'ils sont présents dans le fichier manifeste lorsque vous tentez d'enregistrer:

  • https://*.*.example.com/foo (les caractères génériques multiples sont interdits)
  • https://subdomain.*.example.com/foo (les caractères génériques doivent être utilisés comme préfixes)