Security Context & PSS
Security Context & PSS Compliance
Dieser Leitfaden behandelt die Konfiguration von Pod Security Standards (PSS) und Security Contexts.
Was ist ein Security Context?
Ein Security Context definiert die Zugriffsrechte und Privilegien für Pods oder Container. Er regelt kritische Aspekte wie: "Läuft der Container als Root?", "Ist der Zugriff auf das Host-Dateisystem erlaubt?" oder "Welche Linux-Capabilities werden gewährt?". Eine korrekte Konfiguration ist essenziell für die Cluster-Sicherheit und den Schutz vor Container-Compromises.
Offizielle Dokumentation zum Security Context
Pod Security Standards (PSS)
Kubernetes definiert drei PSS-Richtlinien, um unterschiedliche Sicherheitsanforderungen abzudecken:
- Baseline: Eine minimal restriktive Richtlinie, die vor bekannten Privilegien-Eskalationen schützt.
- Restricted: Eine stark restriktive Richtlinie, die aktuellen Best Practices für Pod-Hardening folgt.
Konfigurationsbeispiel
Detaillierte Informationen zu Hardening-Techniken (Capabilities, Seccomp) finden Sie im Workload Hardening Guide.
Nachfolgend eine empfohlene Konfiguration für securityContext und podSecurityContext in sicherheitskritischen Umgebungen (Restricted):
# Pod Level
podSecurityContext:
runAsNonRoot: true
runAsUser: 1001
runAsGroup: 1001
fsGroup: 1001
seccompProfile:
type: RuntimeDefault
# Container Level
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
readOnlyRootFilesystem: true
runAsNonRoot: true
runAsUser: 1001
runAsGroup: 1001TODO: Klären, welche Namespaces die Restricted PSS Policy erzwingen.