Pod Security Standards
Pas Pod Security Standards toe om best practices voor beveiliging op Pod-niveau af te dwingen.
Pod Security Standards is een gratis DevOps-bootcamp-les op CoddyKit. Dit is les 3 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject DevOps-bootcamp. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus DevOps-bootcamp bevat in totaal 4 lessen.
Wat zijn PSS?
Kubernetes Pod Security Standards (PSS) zijn richtlijnen en beheersmaatregelen om aanbevolen beveiligingspraktijken voor je Pods af te dwingen.
Ze helpen je cluster te beschermen tegen veelvoorkomende beveiligingsproblemen en aanvallen waarbij rechten worden uitgebreid, door te beperken wat Pods mogen doen.
Zie ze als een beveiligingschecklist voor je Pods!
Drie beveiligingsniveaus
PSS definieert drie afzonderlijke beveiligingsniveaus, die elk een andere mate van bescherming bieden:
- Privileged: zonder beperkingen en het minst veilig.
- Baseline: voorkomt bekende uitbreidingen van rechten.
- Restricted: dwingt geharde aanbevolen beveiligingspraktijken af.
Deze niveaus zijn cumulatief: Restricted bevat alle beveiligingen van Baseline, en Baseline bevat alle mogelijkheden van Privileged (of beter gezegd: heeft geen beperkingen).
Privileged: onbeperkte toegang
Het PSS-niveau Privileged biedt een beveiligingsbeleid zonder beperkingen.
Dit betekent dat Pods die onder dit beleid worden uitgevoerd elke capability kunnen aanvragen en volledige toegang hebben tot de resources en namespaces van de host, vergelijkbaar met uitvoeren als root op de hostmachine.
Dit wordt over het algemeen als zeer onveilig beschouwd en mag alleen worden gebruikt voor systeemwerklasten die deze toegang absoluut nodig hebben.
Baseline: exploits voorkomen
Het PSS-niveau Baseline is bedoeld om bekende uitbreidingen van rechten te voorkomen.
Dit is een goed uitgangspunt voor de meeste toepassingen die je zelf definieert.
Belangrijke beperkingen zijn:
- Geen geprivilegieerde containers.
- Geen hostPath-volumes (behalve specifieke veilige typen).
- Geen hostnetwerk en geen gedeelde PID-namespace.
- Beperkte capabilities.
Dit niveau helpt veelvoorkomende aanvalsvectoren te beperken.
Restricted: geharde beveiliging
Het PSS-niveau Restricted dwingt geharde aanbevolen beveiligingspraktijken af.
Het is ontworpen voor toepassingen waarbij beveiliging zeer belangrijk is en vereist dat Pods met minimale rechten worden uitgevoerd.
Naast de beperkingen van Baseline dwingt Restricted het volgende af:
- Uitvoeren als een niet-rootgebruiker.
- Alle Linux-capabilities verwijderen en alleen specifieke vereiste capabilities toevoegen.
- Het gebruik van
seccomp- enAppArmor-profielen verplicht stellen.
Dit is het veiligste en strengste PSS-niveau.
PSS afdwingen met Admission
Pod Security Standards worden afgedwongen met een Kubernetes-functie die Pod Security Admission heet.
Deze admission-controller onderschept aanvragen voor het aanmaken van Pods en controleert ze aan de hand van het PSS-niveau dat voor de namespace van de Pod is geconfigureerd.
Je past PSS-niveaus toe op namespaces door er specifieke labels aan toe te voegen. Bijvoorbeeld:
kubectl label namespace <namespace-name> pod-security.kubernetes.io/enforce=restrictedPod-beveiliging beheren
Om ervoor te zorgen dat je Pods voldoen aan PSS, gebruik je vaak het veld securityContext in je Pod-definitie.
Met dit veld kun je instellingen voor bevoegdheden en toegangsbeheer definiëren voor een Pod of afzonderlijke containers daarin.
Veelgebruikte instellingen zijn:
runAsUser: geeft de gebruikers-ID voor het containerproces op.allowPrivilegeEscalation: voorkomt dat een proces meer bevoegdheden krijgt dan het bovenliggende proces.capabilities: beheert Linux-mogelijkheden.
Voorbeeld van een onveilige Pod
Bekijk een Pod-definitie die niet voldoet aan de PSS Baseline vanwege de beveiligingscontext. Dit is over het algemeen onveilig:
apiVersion: v1
kind: Pod
metadata:
name: unsafe-pod
spec:
containers:
- name: my-container
image: nginx
securityContext:
privileged: true
# This allows the container to run with root capabilities
# and access host devices directly.
# Violates Baseline PSS.Voorbeeld van een Pod die aan Baseline voldoet
Zo definieer je een Pod die voldoet aan het PSS-niveau Baseline. Let op dat privileged: true en andere beperkingen ontbreken.
Voor nog strengere naleving van Restricted voeg je runAsNonRoot: true en readOnlyRootFilesystem: true toe en verwijder je alle capabilities.
apiVersion: v1
kind: Pod
metadata:
name: safe-pod
spec:
containers:
- name: my-container
image: nginx
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
# This Pod runs with minimal privileges and
# adheres to the Baseline PSS.Snelle PSS-controle
Welke van de volgende uitspraken over Pod Security Standards (PSS) is WAAR?
Samenvatting: Pod Security Standards
In deze les heb je geleerd wat Kubernetes Pod Security Standards (PSS) zijn en waarom ze belangrijk zijn voor het beveiligen van je cluster.
- PSS definieert drie niveaus: Privileged, Baseline en Restricted.
- Baseline voorkomt bekende escalaties van bevoegdheden en is geschikt voor de meeste apps.
- Restricted dwingt strengere beveiliging af en vereist minimale bevoegdheden.
- Met het veld
securityContextkun je Pods configureren zodat ze aan PSS voldoen.
PSS toepassen is een belangrijke stap naar veiligere Kubernetes-omgevingen!
Leer DevOps-bootcamp 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
- 142
- Lessen
- 568
Veelgestelde vragen
Is de les “Pod Security Standards” gratis?
Ja — je kunt hier op het web alle 3 lessen van het leerpad DevOps-bootcamp, waaronder “Pod Security Standards”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus DevOps-bootcamp bevat in totaal 4 lessen.
Wat leer ik in “Pod Security Standards”?
Pas Pod Security Standards toe om best practices voor beveiliging op Pod-niveau af te dwingen. Je oefent met DevOps-bootcamp 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 DevOps-bootcamp te beginnen?
Ervaring vooraf is niet nodig. DevOps-bootcamp 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 3 van 4.
Hoe lang duurt de les “Pod Security Standards”?
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 DevOps-bootcamp?
Ja. Elke les over DevOps-bootcamp 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
- Role-Based Access Control (RBAC)
- Network Policies voor isolatie
- Pod Security Standards
- Serviceaccounts en workload identity