Lorsque votre application demande des données privées, la requête doit être autorisée par un utilisateur authentifié qui a accès à ces données.
Lorsque votre application demande des données publiques, la requête n'a pas besoin d'être autorisée, mais elle doit être accompagnée d'un identifiant, comme une clé API.
Chaque requête que votre application envoie à l'API Resource Manager doit identifier votre application auprès de Google. Pour cela, vous pouvez procéder de deux manières : à l'aide d'un jeton OAuth 2.0 (qui autorise également la requête) et/ou à l'aide de la clé API de l'application. Voici comment déterminer l'option à utiliser :
- Si la requête nécessite une autorisation (par exemple, les données privées d'un individu), l'application doit fournir un jeton OAuth 2.0 avec la requête. L'application peut également fournir la clé API, mais ce n'est pas obligatoire.
- Si la demande ne nécessite pas d'autorisation (par exemple, s'il s'agit d'une demande de données publiques), l'application doit fournir soit la clé API, soit un jeton OAuth 2.0, soit les deux, selon ce qui vous convient le mieux.
À propos des protocoles d'autorisation
Votre application doit autoriser les requêtes via le protocole OAuth 2.0. Les autres protocoles d'autorisation ne sont pas acceptés. Si votre application utilise la fonctionnalité Se connecter avec Google, certains aspects de l'autorisation sont traités pour vous.
Autoriser des requêtes avec OAuth 2.0
Les requêtes adressées à l'API Resource Manager portant sur des données utilisateur non publiques doivent être autorisées par un utilisateur authentifié.
Les détails de la procédure d'autorisation (ou "flux") concernant OAuth 2.0 varient légèrement selon le type d'application que vous développez. La procédure générale suivante s'applique à tous les types d'applications :
- Lorsque vous créez votre application, vous l'enregistrez dans la console Google Cloud. Google fournit ensuite des informations dont vous aurez besoin ultérieurement, dont un ID client et un code secret du client.
- Activez l'API Resource Manager dans la console Google Cloud. (Si l'API n'y est pas répertoriée, ignorez cette étape.)
- Lorsque votre application requiert l'accès aux données utilisateur, elle demande à Google un champ d'application particulier.
- Google affiche alors un écran d'autorisation, dans lequel l'utilisateur est invité à autoriser votre application à demander certaines de ses données.
- Si l'utilisateur accepte, Google attribue à votre application un jeton d'accès temporaire.
- Votre application demande des données utilisateur en joignant le jeton d'accès à la requête.
- Dès lors que Google valide la demande et le jeton, les données demandées sont renvoyées.
Certains flux comportent des étapes supplémentaires, comme l'utilisation de jetons d'actualisation en vue de l'acquisition de nouveaux jetons d'accès. Pour en savoir plus sur les flux concernant divers types d'applications, consultez la documentation OAuth 2.0 de Google.
Vous trouverez ci-dessous des informations relatives au champ d'application OAuth 2.0 pour l'API Resource Manager :
Portée | Signification |
---|---|
https://www.googleapis.com/auth/cloud-platform |
Accès en lecture/écriture |
Pour demander l'accès via OAuth 2.0, vous avez besoin du champ d'application ainsi que des informations fournies par Google lors de l'enregistrement de l'application (l'identifiant client et le code secret du client, par exemple).
Conseil : Les bibliothèques clientes des API Google peuvent gérer une partie de la procédure d'autorisation à votre place. Elles sont proposées pour une grande variété de langages de programmation. Pour en savoir plus, explorez les bibliothèques clientes et les exemples de code présentés sur la page Installer les bibliothèques clientes.
Obtenir et utiliser une clé API
Les requêtes adressées à l'API Resource Manager qui interrogent des données publiques doivent être accompagnées d'un identifiant, qui peut être une clé API ou un jeton d'accès.
Pour obtenir une clé API :
- Ouvrez la page Identifiants dans la console Google Cloud.
-
Deux types d'identifiants sont disponibles pour cette API.
Créez les identifiants adaptés à votre projet :
-
OAuth 2.0 : chaque fois que votre application demande des données utilisateur privées, elle doit envoyer un jeton OAuth 2.0 en même temps que la requête. Votre application envoie d'abord un identifiant client, puis éventuellement un code secret du client pour obtenir un jeton. Vous pouvez générer des identifiants OAuth 2.0 pour des applications Web, des comptes de service ou des applications installées.
Pour en savoir plus, consultez la documentation OAuth 2.0.
-
Clés API : une demande qui ne fournit pas de jeton OAuth 2.0 doit envoyer une clé API. Cette clé identifie votre projet et vous donne accès à l'API, aux quotas et aux rapports.
L'API propose plusieurs types de restrictions applicables aux clés API. Si la clé API dont vous avez besoin n'existe pas déjà, créez-en une dans la console en cliquant sur Créer des identifiants > Clé API. Vous pouvez restreindre la clé avant de l'utiliser en production en cliquant sur Restreindre la clé et en sélectionnant l'une des restrictions.
-
Pour sécuriser vos clés API, suivez les Bonnes pratiques pour utiliser des clés API en toute sécurité.
Une fois la clé API obtenue, votre application peut ajouter le paramètre de requête key=yourAPIKey
à toutes les URL de requête.
La clé API peut s'intégrer aux URL en toute sécurité et ne nécessite pas d'encodage.