Chiffreur/Déchiffreur Ansible Vault
Chiffrez et déchiffrez des secrets Ansible Vault directement dans le navigateur à l'aide d'AES-256
Entrée
Sortie
Documentation
Qu'est-ce qu'Ansible Vault ?
Ansible Vault est une fonctionnalité intégrée d'Ansible qui chiffre les données sensibles telles que les mots de passe, les clés API et les certificats afin qu'elles puissent être stockées en toute sécurité aux côtés des playbooks et des rôles dans le contrôle de version. Il utilise le chiffrement symétrique AES-256 avec dérivation de clé PBKDF2, ce qui signifie qu'un seul mot de passe est utilisé pour le chiffrement et le déchiffrement. Le contenu chiffré par Vault est identifié par l'en-tête $ANSIBLE_VAULT;1.1;AES256 suivi du texte chiffré codé en hexadécimal.
Ansible Vault résout un défi fondamental de DevOps : comment conserver les secrets dans le même référentiel que le code d'infrastructure sans les exposer. Au lieu de gérer des magasins de secrets séparés ou de s'appuyer sur des variables d'environnement, les équipes peuvent valider directement les fichiers chiffrés dans Git et les déchiffrer à l'exécution pendant l'exécution du playbook.
Description de l'outil
Cet outil chiffre et déchiffre le contenu Ansible Vault directement dans le navigateur. Entrez un mot de passe vault et du texte brut pour produire un blob vault chiffré entièrement compatible, ou collez un blob vault existant pour révéler le secret original. Aucune donnée ne quitte le navigateur — toutes les opérations cryptographiques s'exécutent côté client.
Exemples
Chiffrement du texte brut :
Entrée (texte brut) :
db_password: s3cur3P@ss!Sortie (vault chiffré) :
$ANSIBLE_VAULT;1.1;AES256
33383239333036363833303565653032383832663162356533343630623030613133623032636566
6536303436646561356461623866386133623462383832620a646363626137626635353462386430
34333937313366383038346135656563316236313139333933383139376333353266666436316536
6335376265313432610a313537363637383264646261303637646631346137393964386432313633
3666Déchiffrement du contenu vault :
Collez le bloc chiffré ci-dessus avec le mot de passe correct pour récupérer la valeur originale db_password: s3cur3P@ss!.
Fonctionnalités
- Chiffrement AES-256 entièrement compatible avec le format Ansible Vault 1.1
- Côté client uniquement — aucune donnée n'est envoyée à un serveur
- Prend en charge le chiffrement et le déchiffrement avec un seul champ de mot de passe
- Conversion instantanée avec aperçu en direct au fur et à mesure de la saisie
- Fonctionne avec les secrets multi-lignes, les fragments YAML et le texte arbitraire
Cas d'utilisation
- Chiffrer rapidement un nouveau secret avant de le valider dans un référentiel Git contenant des playbooks Ansible
- Déchiffrer et inspecter le contenu vault lors du débogage sans avoir besoin d'Ansible installé localement
- Partager des secrets chiffrés avec les coéquipiers qui peuvent les déchiffrer dans le navigateur en utilisant un mot de passe vault partagé
Fonctionnement
Ansible Vault 1.1 utilise le processus suivant :
- Dérivation de clé — PBKDF2-HMAC-SHA256 dérive une clé de 80 octets à partir du mot de passe et d'un salt aléatoire (10 000 itérations). La clé est divisée en une clé de chiffrement de 32 octets, une clé HMAC de 32 octets et un IV de 16 octets.
- Chiffrement — Le texte brut est chiffré avec AES-256-CTR en utilisant la clé et l'IV dérivés.
- Authentification — Un HMAC-SHA256 est calculé sur le texte chiffré pour assurer l'intégrité.
- Codage — Le salt, le digest HMAC et le texte chiffré sont codés en hexadécimal et combinés sous l'en-tête
$ANSIBLE_VAULT;1.1;AES256.
Le déchiffrement inverse le processus : le mot de passe redérive les mêmes clés, vérifie le HMAC et déchiffre le texte chiffré.
Limitations
- Prend en charge uniquement le format Ansible Vault 1.1 avec chiffrement AES-256
- Ne prend pas en charge les étiquettes d'ID vault pour les configurations multi-mots de passe
- Les fichiers volumineux peuvent causer de brefs délais d'interface utilisateur en raison de l'étape de dérivation de clé gourmande en CPU