DevOps-bootcamp · leksjon

Hvorfor Secrets ikke hører hjemme i values.yaml

Risikoen ved klartekst-secrets i charts og Git

Leksjon 1 av 413 trinn

Hvorfor Secrets ikke hører hjemme i values.yaml er en gratis leksjon i DevOps-bootcamp på CoddyKit. Dette er leksjon 1 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i DevOps-bootcamp, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i DevOps-bootcamp inneholder totalt 4 leksjoner.

Values er klartekst

Et charts values.yaml er en vanlig tekstfil uten kryptering. Alt De skriver der, inkludert passord, kan leses av alle som åpner filen.

Git husker for alltid

Charts ligger vanligvis i Git. En hemmelighet som er committet én gang, blir værende i historikken selv etter at De sletter den, så en lekkasje er permanent. 🔒

En fristende feil

Det kan være fristende å legge et ekte passord direkte i values.yaml for å få ting til å fungere. Unngå det, fordi verdien spres overalt.

database:
  password: super-secret-123

Helm lagrer release-data

Ved installasjon lagrer Helm de sammenslåtte verdiene i en release-Secret i klyngen. Klartekstpassordet Deres ligger nå også der.

helm get values avslører det

Alle med tilgang til releasen kan kjøre helm get values og lese nøyaktig det De sendte inn, inkludert klartekstpassordet.

helm get values myapp

CI-logger lekker også

Når De sender hemmeligheter via --set i en pipeline, blir de ofte skrevet ut i byggelogger, der hele teamet kan se dem.

helm install myapp ./chart --set db.password=secret

Kjerneregelen

Regelen er enkel: hemmeligheter må aldri ligge i klartekst i et chart, i Git eller på kommandolinjen. Hold dem utenfor.

Referer, ikke bygg inn

Det sikre mønsteret er å referere til en hemmelighet i stedet for å bygge den inn. Malene peker på en Secret-ressurs som klyngen allerede har.

valueFrom:
  secretKeyRef:
    name: db-credentials
    key: password

Krypter hvis De må lagre

Når hemmelige verdier faktisk må ligge i Git, må De lagre dem kryptert, slik at den committede filen er ubrukelig uten dekrypteringsnøkkelen.

Tre vanlige fremgangsmåter

Tre fremgangsmåter løser dette: å kryptere verdier med verktøy, hente hemmeligheter fra et eksternt lager eller lage Secret-objekter fra injiserte data.

Koding er ikke sikkerhet

Base64 i Kubernetes Secrets er bare koding, ikke kryptering. Det skjuler ingenting, så en kodet verdi må aldri behandles som beskyttet.

Hurtigsjekk

Hvorfor er et passord i values.yaml så risikabelt?

Oppsummering

De så hvorfor klartekst-hemmeligheter i values.yaml lekker gjennom Git, release-data og CI-logger, og hvorfor De i stedet må referere til eller kryptere dem. 🎉

Gratis å komme i gang

Lær deg DevOps-bootcamp med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
142
Leksjoner
568

Ofte stilte spørsmål

Er leksjonen «Hvorfor Secrets ikke hører hjemme i values.yaml» gratis?

Ja – du kan lese valgfritt 3 av leksjonene i læringsstien DevOps-bootcamp, inkludert «Hvorfor Secrets ikke hører hjemme i values.yaml», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i DevOps-bootcamp inneholder totalt 4 leksjoner.

Hva lærer jeg i «Hvorfor Secrets ikke hører hjemme i values.yaml»?

Risikoen ved klartekst-secrets i charts og Git Du øver på DevOps-bootcamp med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med DevOps-bootcamp?

Ingen tidligere erfaring er nødvendig. DevOps-bootcamp på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 4.

Hvor lang tid tar leksjonen «Hvorfor Secrets ikke hører hjemme i values.yaml»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne DevOps-bootcamp-leksjonen?

Ja. Alle DevOps-bootcamp-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Hvorfor Secrets ikke hører hjemme i values.yaml
  2. Kryptere verdier med helm-secrets og SOPS
  3. Hente fra External Secrets Operators
  4. Template Kubernetes Secret-ressurser
← Tilbake til DevOps-bootcamp