SOPS (Secrets OPerationS) chiffre uniquement les valeurs des fichiers de configuration, en laissant les clés lisibles, ce qui permet de versionner des secrets chiffrés directement dans Git. Il s'appuie sur age, GPG ou un service de clés (KMS) et s'intègre aux chaînes GitOps. C'est une solution simple et éprouvée pour éliminer les secrets en clair des dépôts et des déploiements.
SOPS
Autorisé
- Usage commercial
- Modification
- Redistribution
- Usage privé
- Concession de brevets
À respecter
- Publier le code des fichiers modifiés
- Conserver la même licence sur ces fichiers
- Conserver la licence et le copyright
Exclu
- Aucune garantie
- Aucune responsabilité de l’auteur
- Pas de droit sur les marques
Chiffre les fichiers de configuration (YAML, JSON, .env) valeur par valeur avec age, GPG ou un KMS. Parfait pour versionner des secrets chiffrés en toute sécurité dans Git.
Déploiement
Valeur ajoutée
Permet de versionner des secrets chiffrés sans risque de fuite.
Risques contre lesquels cette solution protège
- Secrets en clair commités dans un dépôt Git Suffit seule
Intégration
De la mise en place au premier résultat concret. Les commandes sont indicatives : le guide d’installation officiel fait foi.
Ingrédients
Préparation
-
Installer SOPS et générer une clé age 5 min
brew install sops age && age-keygen -o key.txtRésultat Outil prêt et clé de chiffrement créée
-
Chiffrer un fichier de secrets 5 min
sops --encrypt --age <clé_publique> secrets.yaml > secrets.enc.yamlRésultat Valeurs chiffrées, clés lisibles (versionnable)
-
Déchiffrer à la volée lors du déploiement 2 min
sops --decrypt secrets.enc.yamlRésultat Secrets disponibles uniquement à l'exécution
Interactions avec l’infrastructure
Développeurs / GitOps Dépôt Git — Commit des fichiers de configuration avec leurs valeurs sensibles chiffrées
Ressources officielles
Risques traités, dans la matrice
Ouvrez un risque pour voir son impact estimé et les autres solutions qui le réduisent.