De basis van Kubernetes · Les

Pod Security Standards

Pas Pod Security Standards toe om best practices voor beveiliging op Pod-niveau af te dwingen.

Les 3 van 411 stappen

Pod Security Standards is een gratis De basis van Kubernetes-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 De basis van Kubernetes. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus De basis van Kubernetes 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- en AppArmor-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=restricted

Pod-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 securityContext kun je Pods configureren zodat ze aan PSS voldoen.

PSS toepassen is een belangrijke stap naar veiligere Kubernetes-omgevingen!

Gratis beginnen

Leer De basis van Kubernetes 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 “Pod Security Standards” gratis?

Ja — je kunt hier op het web alle 3 lessen van het leerpad De basis van Kubernetes, 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 De basis van Kubernetes 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 De basis van Kubernetes 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 De basis van Kubernetes te beginnen?

Ervaring vooraf is niet nodig. De basis van Kubernetes 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 De basis van Kubernetes?

Ja. Elke les over De basis van Kubernetes 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

  1. Role-Based Access Control (RBAC)
  2. Network Policies voor isolatie
  3. Pod Security Standards
  4. Serviceaccounts en workload identity
← Terug naar De basis van Kubernetes