L'API Map Management est compatible avec l'utilisation d'OAuth 2.0 pour l'authentification. Google est compatible avec les scénarios OAuth 2.0 courants, tels que ceux d'un serveur Web.
Ce document explique comment transmettre un jeton OAuth à l'appel de l'API Map Management dans votre environnement de développement. Pour savoir comment utiliser OAuth dans un environnement de production, consultez Authentification chez Google.
Avant de commencer
Avant de pouvoir utiliser l'API Map Management, vous devez disposer d'un projet avec un compte de facturation et l'API Map Management doit être activée. Pour en savoir plus, consultez Configurer vos projets dans la console Cloud.
À propos d'OAuth
Vous pouvez créer et gérer des jetons d'accès avec OAuth de plusieurs manières, en fonction de votre environnement de déploiement.
Par exemple, le système Google OAuth 2.0 est compatible avec les interactions entre serveurs, par exemple entre votre application et un service Google. Pour ce scénario, vous avez besoin d'un compte de service. Ce compte appartient à votre application et non à un utilisateur spécifique. Votre application appelle les API Google au nom du compte de service, car les utilisateurs ne sont pas directement impliqués. Pour en savoir plus sur les méthodes d'authentification, consultez Authentification chez Google.
Vous pouvez également utiliser l'API Map Management dans une application mobile Android ou iOS. Pour en savoir plus sur l'utilisation d'OAuth avec l'API Map Management, y compris sur la gestion des jetons d'accès pour différents environnements de déploiement, consultez Utiliser OAuth 2.0 pour accéder aux API Google.
À propos des champs d'application OAuth
Pour utiliser OAuth avec l'API Map Management, le jeton OAuth doit avoir le champ d'application https://www.googleapis.com/auth/cloud-platform.
Tester des appels d'API REST dans votre environnement de développement local
Si vous souhaitez essayer l'API Map Management à l'aide d'un jeton OAuth, mais que vous ne disposez pas d'un environnement configuré pour générer des jetons, vous pouvez suivre la procédure décrite dans cette section pour effectuer l'appel.
Cet exemple explique comment utiliser le jeton OAuth fourni par les identifiants par défaut de l'application (ADC) pour effectuer l'appel. Pour en savoir plus sur l'utilisation des ADC pour appeler des API Google à l'aide de bibliothèques clientes, consultez S'authentifier à l'aide de bibliothèques clientes.
Prérequis
Pour pouvoir effectuer une requête REST à l'aide d'ADC, utilisez la Google Cloud CLI pour fournir des identifiants à ADC :
- Si vous ne l'avez pas déjà fait, créez un projet et activez la facturation en suivant les étapes de la section Configurer dans la console Cloud.
- Installez et initialisez gcloud CLI.
Pour créer votre fichier d'identifiants, exécutez la commande
gcloudsur votre ordinateur local :gcloud auth application-default login
- Lorsque vous y êtes invité, connectez-vous. Une fois que vous êtes connecté, vos identifiants sont stockés dans le fichier d'identifiants local utilisé par ADC.
Pour en savoir plus, consultez la section Environnement de développement local de la documentation Fournir des identifiants pour les identifiants par défaut de l'application.
Effectuer une requête REST
Dans cet exemple, vous transmettez deux en-têtes de requête :
Transmettez le jeton OAuth dans l'en-tête
Authorizationen utilisant la commande suivante pour générer le jeton :gcloud auth application-default print-access-tokenLe jeton renvoyé a un champ d'application de
https://www.googleapis.com/auth/cloud-platform.- Transmettez l'ID ou le nom de votre projet Google Cloud pour lequel la facturation est activée dans l'en-tête
X-Goog-User-Project. Pour en savoir plus, consultez Configurer vos projets dans la console Cloud.
Appelez l'API Map Management à l'aide d'un jeton OAuth :
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "X-Goog-User-Project: PROJECT_ID" \ https://mapmanagement.googleapis.com/v2beta/projects/PROJECT_NUMBER_OR_ID/mapConfigs/
Dépannage
Si votre requête renvoie un message d'erreur indiquant que les identifiants utilisateur ne sont pas compatibles avec cette API, consultez Les identifiants utilisateur ne fonctionnent pas.