Sécurité & bonnes pratiques

Sécurité & bonnes pratiques

Recommandations pour stockage, rotation, expiration et révocation des clés API

Protégez vos accès programmatiques : comment stocker, faire tourner, expirer et révoquer vos clés API en toute sécurité, et comment tirer parti de la traçabilité.

Une courte introduction Cette page détaille les pratiques à appliquer pour gérer les clés API en production : comment stocker une clé après sa création (elle est affichée une seule fois), comment planifier et exécuter une rotation sécurisée, comment utiliser l’information de dernière utilisation (last_used_at) pour auditer et nettoyer, et la procédure de révocation (sélectionner la clé → confirmer suppression). Vous trouverez des workflows pas-à-pas, des astuces pratiques et des scénarios adaptés aux différents environnements (serveurs, CI/CD, applications clientes).

Fonctionnalités couvertes

Affichage unique

La clé complète est affichée uniquement lors de la création. Après cela, elle est masquée et ne peut pas être récupérée.

Traçabilité

Chaque utilisation met à jour la date de dernière utilisation (last_used_at), utile pour audits et nettoyage.

Expiration & activation

Vous pouvez définir une date d’expiration (expires_at) et activer/désactiver une clé (is_active) pour limiter la durée de vie.

Révocation simple

Révoquer une clé se fait en sélectionnant la clé dans la liste, puis en confirmant la suppression.

Permissions minimales

Attribuez le moins de permissions possibles à chaque clé et segmentez les usages (production, staging, intégrations).

Monitoring

Surveillez régulièrement last_used_at pour détecter les clés inactives ou compromises.

Rappel important

La clé visible à la création ne sera plus affichée ensuite. Sauvegardez-la immédiatement dans un emplacement sécurisé (gestionnaire de secrets, coffre-fort CI, etc.). Si vous la perdez, créez-en une nouvelle et révoquez l’ancienne.

Workflows détaillés — chaque opération expliquée pas à pas

1) Créer une clé API et la sauvegarder (étape critique)

1

Étape 1 — Préparez un nom descriptif

Choisissez un nom explicite (ex : “service-backend-prod”, “ci-deploy”, “webhook-payments”) pour comprendre immédiatement l’usage.

2

Étape 2 — Définissez une date d'expiration si possible

Si l’utilisation est temporaire, fixez une date d’expiration raisonnable (ex : 30–90 jours) pour limiter la fenêtre d’exposition.

3

Étape 3 — Créez la clé via l'interface

Suivez la création dans l’interface. Après validation, la clé sera affichée une seule fois.

4

Étape 4 — Sauvegardez la clé immédiatement dans un coffre sécurisé

Copiez la clé dans : gestionnaire de secrets hébergé (ex : Vault, Secrets Manager), variables d’environnement chiffrées dans votre plateforme CI, ou un coffre d’équipe. Evitez les fichiers en clair et les notes partagées.

5

Étape 5 — Validez l'intégration

Testez l’utilisation de la clé depuis l’environnement cible (serveur, job CI) et vérifiez que la date de dernière utilisation (last_used_at) se met à jour.

6

Étape 6 — Notez la politique de rotation

Documentez où la clé est utilisée et quand vous prévoyez la prochaine rotation.

Astuce : où stocker la clé en toute sécurité

Privilégiez un gestionnaire de secrets centralisé ou le système de secrets de votre fournisseur CI. Les variables d’environnement chiffrées évitent l’inclusion accidentelle dans le code.

2) Révoquer (supprimer) une clé — procédure sûre et sans ambiguïté

1

Étape 1 — Identifier la clé à révoquer

Dans la liste des clés, repérez la clé par son nom descriptif et vérifiez last_used_at pour confirmer son usage récent ou ancien.

2

Étape 2 — Vérifier l'impact potentiel

Recensez les systèmes qui utilisent la clé. Prévenez les équipes concernées si la révocation peut provoquer une interruption.

3

Étape 3 — Sélectionner la clé

Choisissez la clé dans l’interface de gestion.

4

Étape 4 — Confirmer la suppression

Confirmez la suppression lorsque l’interface demande la confirmation. Cette action est irréversible et arrêtera l’accès pour toute intégration utilisant la clé.

5

Étape 5 — Suivre les effets

Après révocation, contrôlez vos services et journaux pour vous assurer qu’il n’y a pas d’effets secondaires non souhaités.

Attention — suppression irréversible

La suppression d’une clé est définitive. Si la clé est utilisée en production sans plan de bascule, la suppression provoquera des erreurs immédiates. Toujours préparer un plan de remplacement avant la suppression.

3) Rotation régulière des clés (meilleure pratique recommandée)

1

Étape 1 — Planifiez la politique de rotation

Définissez une fréquence (ex : tous les 90 jours) et notez les responsables et fenêtres de maintenance.

2

Étape 2 — Créez la nouvelle clé avant de supprimer l'ancienne

Générez une nouvelle clé, sauvegardez-la immédiatement dans le coffre sécurisé.

3

Étape 3 — Déployez la nouvelle clé progressivement

Mettez à jour les environnements un par un (staging → prod), ou mettez à jour les jobs CI et validatez le fonctionnement.

4

Étape 4 — Vérifiez last_used_at pour valider l'adoption

Surveillez la dernière utilisation : lorsque la nouvelle clé apparaît dans last_used_at et l’ancienne n’est plus utilisée, vous pouvez supprimer l’ancienne.

5

Étape 5 — Révoquez l'ancienne clé

Supprimez l’ancienne clé une fois la migration confirmée.

6

Étape 6 — Enregistrez la rotation

Conservez un journal (date, responsable, services mis à jour) pour audit et conformité.

Astuce pour une rotation sans interruption

Lors d’une rotation, préférez une période de chevauchement (les deux clés actives temporairement) pour éviter un arrêt du service pendant la mise à jour des configurations.

4) Définir une expiration et (dés)activer une clé

1

Étape 1 — Choisir une date d'expiration adaptée

Pour les clés temporaires, sélectionnez une date d’expiration réaliste (ex : 7–30 jours pour accès ponctuels, 90–365 jours pour integrations permanentes).

2

Étape 2 — Appliquer l'expiration lors de la création ou de la modification

Indiquez la date d’expiration lors de la création ou modifier la clé existante pour ajouter une expiration.

3

Étape 3 — Désactiver temporairement si besoin

Si vous suspectez un problème mais voulez conserver la clé pour investigation, désactivez-la (is_active = false) plutôt que de supprimer aussitôt.

4

Étape 4 — Surveiller avant suppression finale

Pendant la désactivation, surveillez les erreurs et les tentatives d’accès. Si tout est OK, supprimez définitivement.

5) Enquêter et agir en cas de compromission suspectée

1

Étape 1 — Identifier la clé suspecte via last_used_at

Cherchez des comportements anormaux : utilisation depuis des heures inhabituelles, adresses IP ou services inconnus.

2

Étape 2 — Désactiver immédiatement la clé

Désactivez la clé pour couper l’accès sans supprimer immédiatement pour conserver les logs.

3

Étape 3 — Remplacer la clé compromise

Créez une nouvelle clé et mettez-la en place dans tous les environnements affectés.

4

Étape 4 — Révoquer l'ancienne après vérification

Lorsque vous avez confirmé que tous les systèmes utilisent la nouvelle clé, supprimez l’ancienne.

5

Étape 5 — Revue post‑incident

Analysez la cause (ex : mauvaise pratique de stockage, partage par email) et mettez à jour vos procédures pour éviter une récurrence.

  • Stockez la clé dans le gestionnaire de secrets de votre infrastructure ou comme variable d’environnement chiffrée.
  • Ne la mettez jamais dans du code ni dans un dépôt.
  • Renouvelez régulièrement et surveillez last_used_at.
  • Placez la clé dans le store de secrets du fournisseur CI et référencez-la via une variable protégée.
  • Limitez la portée des jobs (ex : accès uniquement lors du déploiement).
  • Testez la rotation sur un pipeline non critique avant la production.
  • Ne placez jamais une clé secrète dans une application cliente. Elle peut être extraite.
  • Si vous devez offrir une fonctionnalité cliente, proxifiez les appels via un serveur contrôlé ou utilisez des tokens publics limités (non sensibles).

Avant / risques

  • Clés partagées par email ou notes.
  • Clés en clair dans le code.
  • Clés non renouvelées.

Après / bonnes pratiques

  • Gestionnaire de secrets centralisé.
  • Rotation planifiée et chevauchement contrôlé.
  • Monitoring de last_used_at et révocation rapide.

Piège fréquent

Ne laissez pas de clés en clair dans vos dépôts ou scripts partagés. Même une clé masquée dans l’interface mais copiée ailleurs est une faille. Une fois exposée, la clé doit être considérée compromise et remplacée.

Utiliser last_used_at intelligemment

last_used_at est votre meilleur ami pour le nettoyage : triez les clés par date de dernière utilisation pour repérer celles non utilisées depuis plusieurs mois et supprimez-les.

6) Checklist rapide (procédure opérationnelle à garder sous la main)

1

Étape 1 — Après création

Sauvegarder la clé dans un coffre sécurisé immédiatement.

2

Étape 2 — Documentation

Lister les services qui utilisent la clé et la fréquence de rotation.

3

Étape 3 — Tests

Tester chaque intégration après modification d’une clé.

4

Étape 4 — Monitoring

Configurer des vérifications régulières de last_used_at et d’échecs d’authentification.

5

Étape 5 — Révocation planifiée

Toujours créer la clé de remplacement avant de révoquer l’ancienne.

Frequently Asked Questions

Bonnes pratiques résumées

  • Sauvegarder la clé à la création (affichée une seule fois).
  • Utiliser un gestionnaire de secrets chiffré ou les secrets du CI.
  • Appliquer la rotation régulière avec chevauchement.
  • Définir expiration pour les accès temporaires.
  • Surveiller last_used_at pour audits et nettoyage.
  • Révoquer (sélection → confirmer) si compromis ou inutile.

Besoin d'aide pour gérer vos clés ?

Accédez à la gestion des clés pour créer, expirer, désactiver ou révoquer vos clés en suivant les bonnes pratiques ci‑dessus.