Comment obtenir une clé API ?

Une clé API est une chaîne de caractères unique qui identifie un projet ou une application lorsqu’elle envoie des requêtes à un service distant. Elle sert à la fois de jeton d’identification et de mécanisme de suivi de la consommation. Obtenir une clé API passe, dans la majorité des cas, par la console du fournisseur de services cloud concerné, avec quelques étapes de configuration qui varient selon le niveau de sécurité souhaité.

Clé API, jeton OAuth et compte de service : ce que chaque méthode authentifie

Avant de générer quoi que ce soit, distinguer les trois principaux modes d’authentification évite de choisir le mauvais. Une clé API identifie le projet appelant, pas l’utilisateur final. Elle convient aux appels serveur-à-serveur où l’accès aux données personnelles n’est pas requis.

Lire également : C'est quoi l'UX d'un site ?

Un jeton OAuth 2.0, à l’inverse, authentifie un utilisateur précis et lui accorde des permissions granulaires sur ses propres ressources. Un compte de service fonctionne comme un utilisateur technique, avec un fichier de credentials JSON, adapté aux traitements automatisés qui tournent sans intervention humaine.

Si le service visé manipule des données utilisateur (e-mails, fichiers, agenda), la clé API ne suffira pas. Pour interroger une API publique, récupérer des résultats de géocodage ou appeler un modèle Gemini depuis un backend, la clé API reste le chemin le plus court.

A découvrir également : Comment les médias sociaux influencent-ils la société d’aujourd’hui ?

Créer une clé API dans la console Google Cloud

La procédure décrite ici s’applique aux API Google Cloud et Google Maps Platform, qui partagent la même console d’administration. Le principe reste similaire chez d’autres fournisseurs (OpenAI, Stripe, Mapbox), mais les écrans diffèrent.

Prérequis : projet et facturation

Toute clé API est rattachée à un projet Google Cloud. Si aucun projet n’existe, la console en propose la création dès la première connexion. Un compte de facturation actif doit ensuite être associé au projet, même pour les API disposant d’un quota gratuit.

Google propose un mode Express avec un environnement d’essai sans frais de 90 jours, pensé pour les développeurs qui veulent tester rapidement une API sans engager de budget. La clé est alors créée automatiquement à l’issue du parcours simplifié.

Génération proprement dite

Dans la console Google Cloud, le chemin est le suivant : menu « API et services », puis « Identifiants », puis « Créer des identifiants » et enfin « Clé API ». La clé apparaît immédiatement à l’écran. Elle est active, sans restriction, et peut déjà être utilisée dans un appel HTTP.

Ce fonctionnement par défaut est volontairement permissif pour accélérer le prototypage. La clé générée ne comporte aucune limitation d’usage, ce qui la rend vulnérable si elle est exposée dans un dépôt Git public ou embarquée dans une application côté client sans protection.

Développeur consultant une documentation API sur grand écran dans un bureau open space moderne

Restreindre une clé API pour éviter les abus

Une clé sans restriction peut être exploitée par n’importe qui, depuis n’importe quelle adresse IP, pour appeler n’importe quelle API activée sur le projet. Les conséquences vont de la facturation imprévue au blocage du quota.

Deux catégories de restrictions se superposent dans la console :

  • Restrictions d’application : elles limitent les contextes depuis lesquels la clé peut être utilisée. On filtre par référent HTTP (pour un site web), par adresse IP (pour un serveur), par identifiant de package Android ou par identifiant de bundle iOS.
  • Restrictions d’API : elles définissent quelles API la clé est autorisée à appeler. Une clé destinée uniquement à Google Maps ne devrait pas pouvoir interroger l’API Gemini ou l’API YouTube Data.
  • Quotas par clé : certains services permettent de plafonner le nombre de requêtes quotidiennes ou par seconde, ce qui constitue un filet de sécurité supplémentaire contre les pics de consommation anormaux.

Appliquer ces restrictions juste après la création de la clé, et non « plus tard », reste la pratique la plus fiable pour protéger un projet en production.

Permissions IAM nécessaires pour générer une clé

Sur un projet personnel, le créateur du projet dispose de droits suffisants. La situation change dans un projet rattaché à une organisation Google Cloud. Un administrateur doit alors attribuer explicitement des rôles IAM qui incluent la permission apikeys.keys.create.

Pour les clés API Gemini créées via Google AI Studio, les permissions requises vont plus loin. Il faut disposer de serviceusage.services.enable pour activer l’API concernée, de iam.serviceAccounts.create pour le compte de service lié, et de la permission spécifique iam.serviceAccountApiKeyBindings.create si la clé doit être liée à un compte de service.

Ce durcissement des contrôles d’accès reflète une tendance récente : les fournisseurs cloud séparent de plus en plus finement les droits de création, de lecture et de suppression des clés, pour limiter les risques liés aux accès trop larges.

Clé API liée à un compte de service : le cas des clés d’autorisation

La création de clés d’autorisation, qui lient une clé API à un compte de service, est désormais supportée dans la console et via la commande gcloud. Ce mécanisme permet de combiner la simplicité d’utilisation d’une clé API avec les permissions attachées à un compte de service.

En pratique, la clé hérite des rôles IAM du compte de service auquel elle est liée. Le service appelé ne reçoit toujours qu’une simple chaîne de caractères dans l’en-tête de requête, mais le backend résout cette chaîne vers un compte de service précis, avec ses autorisations propres.

Ce modèle hybride convient aux architectures où un fichier JSON de credentials ne peut pas être stocké de façon sécurisée, par exemple dans certains environnements serverless ou des outils no-code qui n’acceptent qu’un champ « API key ».

Vue de dessus d'un smartphone affichant une interface de génération de clé API avec un carnet de notes développeur

Reconnaître et gérer le format d’une clé API Google

Les clés API Google récentes utilisent un préfixe « AQ. » qui les distingue des anciennes clés. Ce changement de format facilite le tri dans les projets qui accumulent plusieurs dizaines de clés au fil du temps.

Chaque clé possède un nom d’affichage modifiable (champ displayName), un identifiant unique, et un historique de création et de dernière utilisation consultable dans la console. Supprimer une clé la place dans un état de suppression temporaire avant purge définitive, ce qui laisse une fenêtre pour la restaurer en cas d’erreur.

Le réflexe à conserver : ne jamais stocker une clé API en clair dans un fichier versionné. Les variables d’environnement, les gestionnaires de secrets (Secret Manager, Vault) ou les fichiers .env exclus du dépôt restent les méthodes de stockage adaptées à un contexte de production.

Ne ratez rien de l'actu