Aller au contenu
Lecture · 2 min

Gestion des secrets

Hygiène systématique : rien en clair dans Git, rien en clair en base, un coffre comme source de vérité.

SécuriséMaintenablePrivé

Contexte / besoin

Une plateforme de services, ce sont des dizaines de credentials : mots de passe de bases de données, tokens d’API, clés d’accès à l’API du registrar pour le TLS. Le risque n’a rien d’exotique : un secret committé par erreur, une variable d’environnement qui fuite dans un log ou un docker inspect, un token stocké en clair côté serveur.

Contraintes

Décision & pourquoi

Plutôt qu’un outillage lourd, une hygiène systématique, appliquée partout.

Tradeoff assumé

Pas de gestionnaire de secrets centralisé côté serveur (type Vault ou sops/age). À l’échelle d’un mainteneur unique, la discipline de fichiers et le coffre couvrent le besoin sans ajouter une pièce critique de plus. Si la plateforme grossit (plusieurs opérateurs, rotation automatique), ce choix sera revu.

Résultat

Posture : auditer, trouver, corriger

L’hygiène n’est pas un état, c’est une pratique. Repasser régulièrement sur l’existant, chercher les secrets qui traînent (historique Git, configurations, logs), corriger, et révoquer ce qui a été exposé, même brièvement. Un secret qui a fui reste compromis tant qu’il n’est pas remplacé.

Exemple vécu, juillet 2026. Un audit de sécurité volontaire des dépôts de la plateforme révèle une clé privée WireGuard committée en clair dans un docker-compose, depuis le premier commit du dépôt, soit plusieurs semaines d’exposition potentielle. Doctrine appliquée : un secret exposé est un secret compromis. La clé est retirée du fichier puis rendue définitivement caduque (le VPN qu’elle servait a été décommissionné). Et comme l’historique Git garde tout, la règle de publication en a été durcie : un dépôt rendu public repart d’un historique neuf.

L’audit reste manuel aujourd’hui ; son outillage (scan automatique de l’historique, hooks de pre-commit) est un chantier de la roadmap.