Champs d'application des autorisations

Les utilisateurs doivent autoriser les projets de scripts qui accèdent à leurs données ou agissent en leur nom. Lorsqu'un utilisateur exécute un script nécessitant une autorisation pour la première fois, l'interface utilisateur présente une invite pour lancer le flux d'autorisation.

Au cours de ce flux, l'interface utilisateur indique à l'utilisateur ce que le script souhaite faire d'une autorisation. Par exemple, un script peut souhaiter être autorisé à lire les e-mails de l'utilisateur ou à créer des événements dans son agenda. Le projet de script définit ces autorisations individuelles en tant que champs d'application OAuth.

Pour la plupart des scripts, Apps Script détecte automatiquement les champs d'application dont vous avez besoin. Vous pouvez afficher ceux utilisés par un script à tout moment. Vous pouvez également définir explicitement les champs d'application dans votre fichier manifeste à l'aide de chaînes d'URL. Il est parfois nécessaire de définir explicitement les champs d'application pour certaines applications telles que les modules complémentaires, car les applications publiées doivent toujours utiliser les champs d'application les plus étroits possible.

Au cours du flux d'autorisation, Apps Script présente à l'utilisateur des descriptions lisibles des champs d'application requis. Par exemple, si votre script a besoin d'un accès en lecture seule à vos feuilles de calcul, le fichier manifeste peut avoir le champ d'application https://www.googleapis.com/auth/spreadsheets.readonly. Au cours du flux d'autorisation, un script avec ce champ d'application demande à l'utilisateur d'autoriser cette application à "Afficher vos feuilles de calcul Google".

Certains champs d'application incluent d'autres. Par exemple, lorsqu'il est autorisé, le champ d'application https://www.googleapis.com/auth/spreadsheets autorise l'accès en lecture et en écriture aux feuilles de calcul.

Afficher les niveaux d'accès

Pour afficher les niveaux d'accès actuellement requis par votre projet de script, procédez comme suit:

  1. Ouvrez le projet de script.
  2. À gauche, cliquez sur Vue d'ensemble .
  3. Affichez les champs d'application sous Champs d'application OAuth du projet.

Définir des champs d'application explicites

Apps Script détermine automatiquement les champs d'application dont un script a besoin en analysant son code pour rechercher les appels de fonction qui les nécessitent. Pour la plupart des scripts, cela suffit et vous fait gagner du temps, mais pour les modules complémentaires, les applications Web, les applications Google Chat et les appels à l'API Google Chat publiés, vous devez exercer un contrôle plus direct des champs d'application.

Apps Script attribue automatiquement des champs d'application très permissifs aux projets. Cela peut signifier que votre script demande à l'utilisateur plus que ce dont il a besoin, ce qui est une mauvaise pratique. Pour les scripts publiés, vous devez remplacer les champs d'application étendus par un ensemble plus limité qui couvre les besoins du script et pas plus.

Vous pouvez définir explicitement les niveaux d'accès utilisés par votre projet de script en modifiant son fichier manifest. Le champ du fichier manifeste oauthScopes est un tableau de tous les champs d'application utilisés par le projet. Pour définir les champs d'application de votre projet, procédez comme suit:

  1. Ouvrez le projet de script.
  2. Sur la gauche, cliquez sur Paramètres du projet .
  3. Cochez la case Afficher le fichier manifeste "appsscript.json" dans l'éditeur.
  4. À gauche, cliquez sur Éditeur .
  5. À gauche, cliquez sur le fichier appsscript.json.
  6. Recherchez le champ de premier niveau intitulé oauthScopes. Si elle n'est pas présente, vous pouvez l'ajouter.
  7. Le champ oauthScopes spécifie un tableau de chaînes. Pour définir les niveaux d'accès utilisés par votre projet, remplacez le contenu de ce tableau par ceux que vous souhaitez utiliser. Exemple :
          {
            ...
            "oauthScopes": [
              "https://www.googleapis.com/auth/spreadsheets.readonly",
              "https://www.googleapis.com/auth/userinfo.email"
            ],
           ...
          }
    
    .
  8. En haut, cliquez sur (Enregistrer).

Validation OAuth

Certains champs d'application OAuth sont sensibles, car ils autorisent l'accès aux données utilisateur Google. Si votre projet de script utilise des champs d'application qui autorisent l'accès aux données utilisateur, il doit passer par la validation du client OAuth avant de pouvoir être publié publiquement en tant qu'application Web ou module complémentaire. Pour en savoir plus, consultez les guides suivants :

Champs d'application restreints

En plus des champs d'application sensibles, certains sont classés comme restreints et sont soumis à des règles supplémentaires qui contribuent à protéger les données utilisateur. Si vous avez l'intention de publier une application Web ou un module complémentaire qui utilise un ou plusieurs champs d'application restreints, l'application doit respecter toutes les restrictions spécifiées pour pouvoir être publiée.

Consultez la liste complète des niveaux d'accès restreints avant d'essayer de publier. Si votre application utilise l'un d'entre eux, vous devez respecter les Exigences supplémentaires pour les champs d'application d'API spécifiques avant la publication.