Secrets veilig beheren met externe secretstores
Stop met het committen van Secrets in platte tekst en integreer Kubernetes met externe vaults zoals HashiCorp Vault met behulp van de External Secrets Operator.
Secrets veilig beheren met externe secretstores is een gratis Docker en Kubernetes voor ontwikkelaars-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 Docker en Kubernetes voor ontwikkelaars. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Docker en Kubernetes voor ontwikkelaars bevat in totaal 4 lessen.
Kubernetes Secrets zijn alleen gecodeerd
Een Kubernetes Secret is standaard alleen met base64 gecodeerd, niet versleuteld. Iedereen met toegang tot de API of tot etcd kan het lezen, tenzij extra bescherming wordt toegevoegd.
Versleuteling tijdens opslag
Een eerste stap is het inschakelen van versleuteling tijdens opslag in de API-server, zodat Secret-gegevens worden versleuteld voordat ze naar etcd worden geschreven.
apiVersion: apiserver.config.k8s.io/v1
kind: EncryptionConfiguration
resources:
- resources: ["secrets"]
providers:
- aescbc:
keys:
- name: key1
secret: <base64-key>Het Git-probleem
In GitOps lekken inloggegevens wanneer je Secret-YAML naar een repository commit. We hebben Secrets nodig die buiten git blijven, maar toch naar het cluster worden doorgegeven.
Externe Secret-opslagplaatsen
Tools zoals HashiCorp Vault, AWS Secrets Manager en GCP Secret Manager slaan Secrets centraal op, met controleerbaarheid, rotatie en fijnmazige toegang.
De External Secrets Operator
De External Secrets Operator (ESO) synchroniseert waarden uit een externe opslagplaats naar systeemeigen Kubernetes Secrets, zodat werklasten ze normaal kunnen gebruiken.
Een SecretStore definiëren
Een SecretStore vertelt ESO hoe het zich bij de backend moet authenticeren.
apiVersion: external-secrets.io/v1beta1
kind: SecretStore
metadata:
name: vault-backend
spec:
provider:
vault:
server: https://vault.example.com
path: secret
auth:
kubernetes:
role: my-appEen ExternalSecret definiëren
Een ExternalSecret koppelt een sleutel in de opslagplaats aan een gegenereerde Kubernetes Secret.
apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
name: db-creds
spec:
secretStoreRef:
name: vault-backend
kind: SecretStore
target:
name: db-creds
data:
- secretKey: password
remoteRef:
key: database/prod
property: passwordAutomatische rotatie
ESO ververst gesynchroniseerde Secrets met vaste tussenpozen. Daardoor wordt een gewijzigde waarde in Vault naar het cluster doorgegeven zonder nieuwe implementaties.
spec:
refreshInterval: 1hAlternatief: Sealed Secrets
Als Secrets in git moeten blijven, versleutelt Sealed Secrets ze met een sleutel die alleen in het cluster aanwezig is. Het resultaat is een SealedSecret die je veilig kunt committen en die alleen de controller kan ontsleutelen.
Toegang beperken met RBAC
Beperk met RBAC wie Secrets mag lezen en geef de voorkeur aan het koppelen van Secrets als bestanden boven omgevingsvariabelen, om onbedoeld loggen te beperken.
Lekken voorkomen
Schrijf Secrets nooit naar logs of CI-uitvoer en voeg Secret-scanning toe aan je pijplijn om onbedoelde commits te detecteren.
Korte controle
Test wat je hebt geleerd.
Samenvatting
Je hebt geleerd dat Secrets alleen met base64 zijn gecodeerd, hoe versleuteling tijdens opslag helpt en hoe de External Secrets Operator synchroniseert vanuit Vault en vergelijkbare opslagplaatsen. Ook heb je Sealed Secrets, rotatie en RBAC geleerd om inloggegevens veilig te houden.
Leer Docker en Kubernetes voor ontwikkelaars 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
- 12
- Lessen
- 48
Veelgestelde vragen
Is de les “Secrets veilig beheren met externe secretstores” gratis?
Ja — de volledige tekst van “Secrets veilig beheren met externe secretstores” 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 Docker en Kubernetes voor ontwikkelaars wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Docker en Kubernetes voor ontwikkelaars bevat in totaal 4 lessen.
Wat leer ik in “Secrets veilig beheren met externe secretstores”?
Stop met het committen van Secrets in platte tekst en integreer Kubernetes met externe vaults zoals HashiCorp Vault met behulp van de External Secrets Operator. Je oefent met Docker en Kubernetes voor ontwikkelaars 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 Docker en Kubernetes voor ontwikkelaars te beginnen?
Ervaring vooraf is niet nodig. Docker en Kubernetes voor ontwikkelaars 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 “Secrets veilig beheren met externe secretstores”?
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 Docker en Kubernetes voor ontwikkelaars?
Ja. Elke les over Docker en Kubernetes voor ontwikkelaars 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
- Op rollen gebaseerde toegangscontrole (RBAC)
- Podbeveiliging en images scannen
- Netwerkverkeer in Kubernetes beveiligen
- Secrets veilig beheren met externe secretstores