Decrittografare a runtime con --ask-vault-pass
Fornisca la password a un play
Decrittografare a runtime con --ask-vault-pass è una lezione DevOps Bootcamp gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento DevOps Bootcamp, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso DevOps Bootcamp include 4 lezioni in totale.
Decrittografare al momento giusto
I segreti protetti da Vault restano crittografati sul disco. Il punto è fornire ad Ansible la password esattamente quando un play deve leggerli. 🔑
Chiedere la password
Aggiunga --ask-vault-pass ad ansible-playbook: Ansible chiederà la password del Vault una volta, prima dell'inizio dell'esecuzione.
ansible-playbook site.yml --ask-vault-passUna password per l'intera esecuzione
Questa singola richiesta sblocca ogni file protetto da Vault e ogni valore inline utilizzato dal play. Ansible li decrittografa esclusivamente in memoria. 🧠
L'assenza della password interrompe subito l'esecuzione
Esegua un play che richiede Vault senza fornire una password: Ansible si interromperà con un chiaro errore di decrittografia, prima di causare danni.
ERROR! Attempting to decrypt but no vault secrets foundUsare un file di password
Per le esecuzioni non interattive, indichi un --vault-password-file invece di digitare la password. Mantenga quel file fuori da Git e adeguatamente protetto.
ansible-playbook site.yml --vault-password-file ~/.vault_passImpostarla in ansible.cfg
Per evitare di specificare l'opzione ogni volta, dichiari il file di password nella voce vault_password_file di ansible.cfg.
[defaults]
vault_password_file = ~/.vault_passOppure usare una variabile d'ambiente
La variabile d'ambiente ANSIBLE_VAULT_PASSWORD_FILE svolge la stessa funzione ed è utile in CI, dove non può modificare la configurazione.
export ANSIBLE_VAULT_PASSWORD_FILE=~/.vault_passVault ID per più segreti
Gestisca più password con --vault-id, assegnando un'etichetta a ciascuna, così i segreti di dev e prod usano chiavi diverse.
ansible-playbook site.yml --vault-id prod@~/.vault_prodAnche gli altri comandi
Gli stessi flag funzionano con i comandi ad hoc di ansible e con ansible-vault stesso, non solo con ansible-playbook.
ansible all -m debug -a "msg={{ db_password }}" --ask-vault-passProteggere la password
Vault è sicuro solo quanto il luogo in cui si memorizza la sua password. Usare un gestore dei segreti o un file con accesso limitato; non eseguire mai il commit.
Creare uno script per la sorgente della password
Un file della password di Vault può persino essere uno script eseguibile che stampa la password, consentendo di recuperare i segreti da un server Vault.
ansible-playbook site.yml --vault-password-file get-pass.shVerifica rapida
Si esegue un playbook che legge variabili cifrate con Vault e si vuole digitare la password una sola volta.
Riepilogo
I segreti vengono sbloccati durante l'esecuzione con --ask-vault-pass, un file della password o una variabile d'ambiente. Ansible decritta i segreti solo in memoria. ✨
Domande Frequenti
La lezione «Decrittografare a runtime con --ask-vault-pass» è gratuita?
Sì — il testo completo di «Decrittografare a runtime con --ask-vault-pass» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso DevOps Bootcamp, passa a CoddyKit PRO. Il corso DevOps Bootcamp include 4 lezioni in totale.
Cosa imparerò in «Decrittografare a runtime con --ask-vault-pass»?
Fornisca la password a un play Eserciti DevOps Bootcamp con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare DevOps Bootcamp?
Non è richiesta alcuna esperienza precedente. DevOps Bootcamp su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.
Quanto tempo richiede la lezione «Decrittografare a runtime con --ask-vault-pass»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione DevOps Bootcamp?
Sì. Ogni lezione DevOps Bootcamp include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Crittografare un file con ansible-vault create
- Modificare, visualizzare e ricreare le chiavi dei file Vault
- Crittografare una singola variabile inline
- Decrittografare a runtime con --ask-vault-pass