Configurer OAuth pour votre application

Pour configurer OAuth pour votre application, vous devez configurer un workflow OAuth et activer les champs d'application OAuth de l'API Data Portability.

Configurer un workflow OAuth

Pour configurer un flux OAuth pour votre application, suivez les étapes de base décrites dans la documentation Google Identity.

La plupart des développeurs utilisent le flux Applications Web côté serveur pour obtenir le consentement OAuth, mais vous pouvez également utiliser le flux d'application Web JavaScript ou le flux d'application mobile et de bureau.

Champs d'application OAuth de l'API Data Portability

Lorsque vous configurez votre application API Data Portability pour OAuth, activez les champs d'application OAuth de l'API Data Portability qui sont pertinents pour votre application. Certains champs d'application sont sensitive et restricted et sont soumis à des exigences supplémentaires.

Lorsque vous ajoutez les champs d'application de l'API Data Portability à votre flux OAuth, il est possible que votre utilisateur donne son consentement à certains, mais pas à tous. Votre application doit pouvoir gérer ces cas en:

  • Autoriser l'exportation partielle des données
  • Informer l'utilisateur qu'il n'a pas sélectionné tous les champs d'application nécessaires (et échouer de manière élégante)
  • Demander à l'utilisateur les autres consentements

Notez que le consentement d'un utilisateur vous permet d'exporter une seule fois des données pour ce consentement spécifique. Pour télécharger à nouveau les données, vous avez besoin d'un nouveau consentement de l'utilisateur.

Notez également que pendant le flux OAuth, votre application ne sait pas quel compte Google a été utilisé pour donner son autorisation. Le jeton OAuth que votre application reçoit est opaque.

Pour en savoir plus sur la façon dont les utilisateurs partagent des données, consultez Partager une copie de vos données avec un tiers.

Restrictions concernant les champs d'application

Cette section traite des restrictions dans les champs d'application qui entraînent des erreurs.

Champs d'application mixtes

Les requêtes pour les champs d'application de l'API Portabilité des données (par exemple, https://www.googleapis.com/auth/dataportability.*) ne peuvent pas être mélangées à d'autres champs d'application (par exemple, https://www.googleapis.com/auth/userinfo.email). Voici un exemple de requête incorrecte, avec la partie limitée en gras:

https://accounts.google.com/o/oauth2/v2/auth?
client_id=client_id&
redirect_uri=redirect_uri&
response_type=token&
scope=https://www.googleapis.com/auth/dataportability.myactivity.search+https://www.googleapis.com/auth/userinfo.email&
include_granted_scopes=false

Étendues précédemment accordées

Vous ne devez jamais définir include_granted_scopes=true lorsque vous demandez des champs d'application DPAPI. Voici un exemple de requête incorrecte, avec la partie restreinte en gras:

https://accounts.google.com/o/oauth2/v2/auth?
client_id=client_id&
redirect_uri=redirect_uri&
response_type=token&
scope=https://www.googleapis.com/auth/dataportability.myactivity.search&
include_granted_scopes=true

Catégories de champs d'application

Pour obtenir la liste de tous les champs d'application OAuth compatibles avec l'API Data Portability et leurs catégories, consultez la section Champs d'application OAuth disponibles. Pour obtenir la liste de tous les groupes de ressources et des habilitations OAuth compatibles avec un service particulier, consultez la page de référence du schéma de ce service.