Kryptera en enskild variabel inline
Blanda klartext och hemliga variabler
Kryptera en enskild variabel inline är en gratis lektion i DevOps-bootcamp på CoddyKit. Detta är lektion 3 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för DevOps-bootcamp, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i DevOps-bootcamp innehåller totalt 4 lektioner.
Allt är inte hemligt
Ibland är ett värde i en fil känsligt medan resten är ofarligt. Att kryptera hela filen känns då överdrivet. 🤔
Kryptera bara en variabel
Vault kan kryptera ett enskilt värde och låta resten av YAML-filen vara läsbar. Då förblir diffar tydliga och konfigurationen lätt att bläddra i.
Kommandot encrypt_string
Använd ansible-vault encrypt_string för att omvandla ett klartextvärde till ett krypterat block som ni kan klistra in i valfri vars-fil.
ansible-vault encrypt_string 's3cr3t' --name 'db_password'Det här skrivs ut
Kommandot skriver ut en YAML-nyckel vars värde använder taggen !vault, följd av ett indraget chiffertextblock.
db_password: !vault |
$ANSIBLE_VAULT;1.1;AES256
39653764...Klistra in i era vars
Kopiera blocket direkt till group_vars eller till ett plays vars, precis bredvid vanliga klartextvariabler.
vars:
app_user: deploy
db_password: !vault |
$ANSIBLE_VAULT;1.1;AES256
39653764...Taggen !vault
Taggen !vault signalerar till Ansible att just detta värde är krypterat och måste dekrypteras innan det används.
Används som vilken variabel som helst
Vid körning dekrypteras värdet transparent. Ni refererar till det med vanlig syntax för {{ }}, precis som till en vanlig variabel.
- name: Set DB password
debug:
msg: "{{ db_password }}"Undvik klartext på kommandoraden
Att skriva en hemlighet i shellhistoriken är riskabelt. Lägg till --stdin-name för att i stället ange värdet interaktivt.
ansible-vault encrypt_string --stdin-name 'db_password'Inline kontra hel fil
Inline-kryptering passar bra för ett fåtal hemligheter bland offentlig konfiguration. För filer som är helt hemliga är det enklare att kryptera hela filen.
Samma lösenord i båda fallen
Inline-värden använder samma Vault-lösenord som kryptering av hela filer, så Ansible dekrypterar båda med en enda lösenfras per körning.
Diffar förblir granskningsbara
En stor fördel är att bara den hemliga raden är chiffertext, så kodgranskning och git diff fortfarande visar alla ändringar som inte rör hemligheter tydligt.
Snabb kontroll
Ni vill kryptera ett värde medan resten av vars-filen förblir läsbar.
Sammanfattning
Med encrypt_string krypterar ni ett värde till ett !vault-block och blandar hemligheter och klartext i samma läsbara fil. ✨
Lär dig DevOps-bootcamp med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 142
- Lektioner
- 568
Vanliga frågor
Är lektionen ”Kryptera en enskild variabel inline” gratis?
Ja – du kan läsa vilka 3 lektioner som helst i lärvägen DevOps-bootcamp, inklusive ”Kryptera en enskild variabel inline”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i DevOps-bootcamp innehåller totalt 4 lektioner.
Vad lär jag mig i ”Kryptera en enskild variabel inline”?
Blanda klartext och hemliga variabler Ni övar på DevOps-bootcamp med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig DevOps-bootcamp?
Du behöver inga förkunskaper. Utbildningen i DevOps-bootcamp på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 3 av 4.
Hur lång tid tar lektionen ”Kryptera en enskild variabel inline”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här DevOps-bootcamp-lektionen?
Ja. Varje DevOps-bootcamp-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Kryptera en fil med ansible-vault create
- Redigera, visa och byt nyckel för vault-filer
- Kryptera en enskild variabel inline
- Dekryptera vid körning med --ask-vault-pass