Ce document contient des informations sur l'autorisation et l'authentification spécifiques à l'API Google Drive. Avant de lire ce document, assurez-vous de consulter les informations générales sur l'authentification et l'autorisation dans Google Workspace sur la page En savoir plus sur l'authentification et l'autorisation.
Configurer OAuth 2.0 pour l'autorisation
Pour autoriser votre application, l'API Google Drive vous demande de définir des champs d'application OAuth à deux endroits : dans la console Google Cloud et dans votre application.
Dans la console Google Cloud, vous devez déclarer les autorisations dont votre application a besoin dans la configuration de son écran de consentement OAuth. Il s'agit du niveau d'autorisation le plus élevé que votre application puisse demander. Il s'agit d'une demande formelle adressée à Google. Les niveaux d'accès déclarés sont ceux que Google affiche aux utilisateurs sur l'écran de consentement. Il permet à l'utilisateur de comprendre exactement à quelles données et actions votre application demande l'accès.
Configurez l'écran de consentement OAuth et choisissez des habilitations pour définir les informations affichées aux utilisateurs et aux évaluateurs d'applications, et enregistrez votre application pour pouvoir la publier ultérieurement.
Dans votre application, lorsque vous lancez l'API, vous devez demander explicitement les niveaux d'accès spécifiques dont vous avez besoin pour cette session. Alors que la console Google Cloud définit le niveau d'autorisation le plus élevé que votre application est autorisée à demander, le code détermine les autorisations réelles pour un utilisateur donné. Cela permet de s'assurer que l'application ne demande que les autorisations nécessaires à une tâche spécifique.
Vous pouvez déclarer un ou plusieurs niveaux d'accès OAuth à la fois dans le code de votre application sous forme de tableau.
L'exemple de code suivant montre comment déclarer plusieurs portées OAuth :
Java
List<String> SCOPES = Arrays.asList(
DriveScopes.DRIVE_FILE,
DriveScopes.DRIVE_METADATA_READONLY
);
Python
SCOPES = [
"https://www.googleapis.com/auth/drive.file",
"https://www.googleapis.com/auth/drive.metadata.readonly",
]
Node.js
const SCOPES = [
'https://www.googleapis.com/auth/drive.file',
'https://www.googleapis.com/auth/drive.metadata.readonly'
];
Pour découvrir comment les autorisations sont déclarées et utilisées dans un exemple de code complet, consultez Guides de démarrage rapide.
Champs d'application de l'API Drive
Pour définir le niveau d'accès accordé à votre application, vous devez identifier et déclarer les niveaux d'autorisation. Un champ d'application d'autorisation est une chaîne URI OAuth 2.0 qui contient le nom de l'application Google Workspace, le type de données auxquelles elle accède et le niveau d'accès. Les champs d'application correspondent aux demandes de votre application pour utiliser les données Google Workspace, y compris les données de compte Google des utilisateurs.
Lors de l'installation de votre application, l'utilisateur est invité à valider les champs d'application utilisés par l'application. En règle générale, vous devez choisir le champ d'application le plus précis possible et éviter de demander des champs d'application dont votre application n'a pas besoin. Les utilisateurs accordent plus facilement l'accès à des niveaux d'accès limités et clairement décrits.
Dans la mesure du possible, utilisez des niveaux d'accès non sensibles, car ils accordent un accès par fichier et limitent l'accès aux fonctionnalités spécifiques dont une application a besoin.
Niveaux d'accès non sensibles
Les niveaux d'accès suivants à l'API Drive sont recommandés pour la plupart des cas d'utilisation :
| Code du champ d'application | Description |
|---|---|
https://www.googleapis.com/auth/drive.appdata |
Afficher et gérer les données de configuration de l'application dans votre Google Drive. |
https://www.googleapis.com/auth/drive.install |
Autoriser les applications à apparaître en tant qu'option dans le menu "Ouvrir avec" ou "Nouveau". |
https://www.googleapis.com/auth/drive.file |
créer des fichiers Drive ou modifier des fichiers existants que vous ouvrez avec une application ou que l'utilisateur partage avec une application à l'aide de l'API Google Picker ou du sélecteur de fichiers de l'application ; |
Niveaux d'accès sensibles
| Code du champ d'application | Description |
|---|---|
https://www.googleapis.com/auth/drive.apps.readonly |
Affichez les applications autorisées à accéder à votre Drive. |
Niveaux d'accès restreints
| Code du champ d'application | Description |
|---|---|
https://www.googleapis.com/auth/drive |
Affichez et gérez tous vos fichiers Drive. |
https://www.googleapis.com/auth/drive.readonly |
Consultez et téléchargez tous vos fichiers Drive. |
https://www.googleapis.com/auth/drive.activity |
Afficher le journal d'activités des fichiers de votre Drive et y ajouter des éléments. |
https://www.googleapis.com/auth/drive.activity.readonly |
Affichez le journal d'activités des fichiers de votre Drive. |
https://www.googleapis.com/auth/drive.meet.readonly |
Afficher les fichiers Drive créés ou modifiés dans Google Meet |
https://www.googleapis.com/auth/drive.metadata |
Affichez et gérez les métadonnées des fichiers présents dans votre Drive. |
https://www.googleapis.com/auth/drive.metadata.readonly |
Consultez les métadonnées de vos fichiers dans Drive. |
https://www.googleapis.com/auth/drive.scripts |
Modifiez le comportement de vos scripts Google Apps Script. |
Les niveaux d'accès dans les tableaux précédents indiquent leur sensibilité, selon les définitions suivantes :
Non sensibles : ces niveaux d'accès offrent le plus petit champ d'application d'autorisation et ne nécessitent qu'une validation de base des applications OAuth. Pour en savoir plus, consultez Exigences liées à la validation.
Sensibles : ces habilitations permettent d'accéder à des données utilisateur Google spécifiques que les utilisateurs autorisent pour votre application. Elles nécessitent une validation supplémentaire de l'application OAuth. Pour en savoir plus, consultez Exigences concernant les autorisations sensibles et restreintes.
Restreint : ces habilitations offrent un large accès aux données utilisateur Google et nécessitent une validation des applications OAuth à champ d'application restreint. Pour en savoir plus, consultez le Règlement sur les données utilisateur dans les services d'API Google et les Exigences supplémentaires pour les champs d'application d'API spécifiques. Consultez également les Conditions d'utilisation de Google Drive.
Si vous stockez (ou transmettez) des données à portée restreinte sur des serveurs, vous devez passer par une évaluation de sécurité.
Si votre application nécessite d'accéder à d'autres API Google, vous pouvez également ajouter ces niveaux d'accès. Pour en savoir plus sur les champs d'application des API Google, consultez Utiliser OAuth 2.0 pour accéder aux API Google.
Pour en savoir plus sur les champs d'application OAuth 2.0 spécifiques, consultez Champs d'application OAuth 2.0 pour les API Google.
Conditions requises pour les niveaux d'accès restreints
Seuls certains types d'applications sont autorisés à utiliser des niveaux d'accès restreints pour Google Drive. Pour être éligible, votre application doit appartenir à l'une des catégories suivantes :
Sauvegarde et synchronisation : applications Web et spécifiques à une plate-forme qui permettent la synchronisation locale ou la sauvegarde automatique des fichiers Drive des utilisateurs.
Productivité et éducation : applications dont l'interface utilisateur principale peut impliquer une interaction avec des fichiers, des métadonnées ou des autorisations Drive. Ces applications incluent les applications de gestion des tâches, de prise de notes, de communication entre groupes de travail et de collaboration en classe.
Rapports et sécurité : applications qui fournissent aux utilisateurs ou aux clients des informations sur la façon dont les fichiers sont partagés ou consultés.
Pour continuer à utiliser des niveaux d'accès restreints, vous devez préparer votre application pour la validation des niveaux d'accès restreints.
Migrer une application existante depuis des champs d'application restreints
Si votre application Drive utilise des niveaux d'accès restreints, nous vous recommandons de migrer vers un niveau d'accès non sensible de l'API Drive. L'utilisation de niveaux d'accès non sensibles, tels que drive.file, accorde un accès précis par fichier aux fonctionnalités spécifiques dont une application a besoin.
De nombreuses applications peuvent passer à l'accès par fichier sans aucune modification.
Si vous utilisez votre propre sélecteur de fichiers, nous vous recommandons de passer à l' API Google Picker, qui est entièrement compatible avec différents niveaux d'accès.
Avantages du champ d'application des fichiers Drive
L'utilisation de l'habilitation OAuth drive.file en combinaison avec l'API Google Picker permet d'optimiser l'expérience utilisateur et la sécurité de votre application.
Le champ d'application OAuth drive.file permet aux utilisateurs de choisir les fichiers qu'ils souhaitent partager avec votre application. Ils ont ainsi plus de contrôle et sont plus confiants quant à l'accès de votre application à leurs fichiers, qui est limité et plus sécurisé. En revanche, si vous demandez un accès étendu à tous les fichiers Drive, les utilisateurs risquent d'être dissuadés d'interagir avec votre application.
Voici quelques raisons pour lesquelles vous devriez utiliser le champ drive.file :
Facilité d'utilisation : le champ d'application
drive.filefonctionne avec toutes les ressources REST de l'API Drive, ce qui signifie que vous pouvez l'utiliser de la même manière que les champs d'application OAuth plus larges.Fonctionnalités : l'API Google Picker fournit une interface semblable à l'interface utilisateur Drive. Cela inclut plusieurs vues affichant des aperçus et des miniatures des fichiers Drive, ainsi qu'une fenêtre modale intégrée pour que les utilisateurs ne quittent jamais l'application principale.
Commodité : les applications peuvent appliquer des filtres pour certains types de fichiers Drive (tels que Google Docs, Sheets et Photos) lorsqu'elles utilisent un filtre sur les fichiers Google Picker.
Validation simple : comme
drive.filen'est pas sensible, le processus de validation est plus simple.
Stocker les jetons d'actualisation de manière sécurisée
Pour accéder à des données privées à l'aide de l'API Drive, votre application doit obtenir un jeton d'accès qui lui accorde l'accès à cette API. Un même jeton d'accès peut accorder différents niveaux d'accès à plusieurs API, en fonction des autorisations que vous demandez.
Comme les jetons d'accès sont de courte durée, vous devez utiliser des jetons d'actualisation pour accéder à l'API Drive sur le long terme. Un jeton d'actualisation permet à votre application de demander de nouveaux jetons d'accès.
Enregistrez les jetons d'actualisation dans un espace de stockage sécurisé à long terme et continuez à les utiliser tant qu'ils restent valides.
Pour en savoir plus, consultez Utiliser OAuth 2.0 pour accéder aux API Google.
Articles associés
- Pour obtenir une présentation de l'authentification et de l'autorisation dans Google Workspace, consultez En savoir plus sur l'authentification et l'autorisation.
- Pour obtenir une présentation de l'authentification et de l'autorisation dans Google Cloud, consultez la page Présentation de l'authentification.
- Pour en savoir plus sur les comptes de service, consultez Comptes de service.
- Pour obtenir de l'aide sur le dépannage, consultez Résoudre les erreurs.