Kubernetes Secret-resources templaten
Secret-objecten renderen zonder waarden bloot te geven
Kubernetes Secret-resources templaten is een gratis Helm Academy-les op CoddyKit. Dit is les 4 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Helm Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Helm Academy bevat in totaal 4 lessen.
Charts kunnen Secrets genereren
Soms moet je chart zelf een Kubernetes-Secret-object maken. Als je dit zorgvuldig doet, kun je er een templaten zonder de waarde te lekken.
De vorm van het Secret-manifest
Een Kubernetes Secret is gewoon een manifest met een datagedeelte. Elke waarde onder data moet gecodeerde tekst in Base64 zijn.
apiVersion: v1
kind: Secret
metadata:
name: db-credentialsGegevens coderen met b64enc
Onder data codeer je elke waarde. De Sprig-helper b64enc zet een tekenreeks in platte tekst om naar de Base64-vorm die Kubernetes verwacht.
data:
password: {{ .Values.password | b64enc }}stringData gebruiken om coderen over te slaan
Gebruik bij voorkeur stringData als je b64enc niet handmatig wilt gebruiken. Kubernetes codeert die waarden aan de serverkant voor je.
stringData:
password: {{ .Values.password | quote }}Coderen maakt iets nog geen geheim
Onthoud dat de waarde die in het manifest terechtkomt alleen encoded is. Iedereen die deze kan lezen, kan haar direct decoderen.
Print het niet in NOTES
Een veelvoorkomend lek is het afdrukken van de waarde in NOTES.txt. Print in plaats daarvan hoe je de waarde kunt ophalen, zodat de platte tekst nooit in de uitvoer van een opdracht terechtkomt.
Een bestaand Secret hergebruiken
Nog beter is het om gebruikers te laten verwijzen naar een existingSecret dat ze buiten de chart om hebben gemaakt. Zo ontvangt je chart de waarde helemaal niet.
{{- if not .Values.existingSecret }}
kind: Secret
{{- end }}Een verplichte waarde vereisen
Wanneer een geheim echt verplicht is, stopt de functie required het renderen met een duidelijke melding als de waarde ontbreekt.
password: {{ required "password is required" .Values.password | b64enc }}Koppelen, niet inline opnemen
Laat pods het Secret lezen via secretKeyRef of een aangekoppeld volume, in plaats van de letterlijke waarde rechtstreeks in een containeromgevingvariabele te zetten.
valueFrom:
secretKeyRef:
name: db-credentials
key: passwordEen annotatie toevoegen voor rouleren
Voeg een checksum-annotation toe aan de implementatie om pods opnieuw te starten wanneer een Secret verandert, zodat een nieuwe waarde een herstart activeert.
checksum/secret: {{ include (print $.Template.BasePath "/secret.yaml") . | sha256sum }}De strategieën combineren
De sterkste charts combineren ideeën: geef de voorkeur aan bestaande of externe geheimen, codeer alleen als dat nodig is en druk de waarde nooit af.
Snelle controle
Hoe laat je Kubernetes de Base64-codering voor je uitvoeren?
Samenvatting
Je hebt geleerd hoe je veilig een Secret templated: codeer met b64enc of stringData, geef de voorkeur aan bestaande geheimen en druk de waarde nooit af. 🎉
Leer YAML met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 30
- Lessen
- 120
Veelgestelde vragen
Is de les “Kubernetes Secret-resources templaten” gratis?
Ja — de volledige tekst van “Kubernetes Secret-resources templaten” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Helm Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Helm Academy bevat in totaal 4 lessen.
Wat leer ik in “Kubernetes Secret-resources templaten”?
Secret-objecten renderen zonder waarden bloot te geven Je oefent met Helm Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Helm Academy te beginnen?
Ervaring vooraf is niet nodig. Helm Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 4 van 4.
Hoe lang duurt de les “Kubernetes Secret-resources templaten”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Helm Academy?
Ja. Elke les over Helm Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- Waarom Secrets niet thuishoren in values.yaml
- Waarden versleutelen met helm-secrets en SOPS
- Secrets ophalen uit External Secrets Operators
- Kubernetes Secret-resources templaten