Pod Security Standards (PSS)
Overview
PSS provides policy-based enforcement for pod security across namespaces.
Security Modes
| Mode | Description |
|---|---|
| Privileged | No restrictions |
| Baseline | Minimal restrictions |
| Restricted | Heavily restricted, best practice |
Apply Baseline Policy
apiVersion: v1
kind: Namespace
metadata:
name: production
labels:
pod-security.kubernetes.io/enforce: baseline
pod-security.kubernetes.io/audit: restricted
pod-security.kubernetes.io/warn: restrictedRestricted Policy Requirements
Non-privileged containers
securityContext:
privileged: false
allowPrivilegeEscalation: falseRead-only root filesystem
securityContext:
readOnlyRootFilesystem: trueNon-root user
securityContext:
runAsNonRoot: true
runAsUser: 10000Example Compliant Pod
apiVersion: v1
kind: Pod
metadata:
name: secure-app
spec:
securityContext:
runAsNonRoot: true
runAsUser: 10000
seccompProfile:
type: RuntimeDefault
containers:
- name: app
image: nginx
securityContext:
privileged: false
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
capabilities:
drop:
- ALL