Airflow 3This feature is only available for Airflow 3.x Deployments.
- Privileged: No restrictions (least secure)
- Baseline: Prevents known privilege escalations
- Restricted: Highly-constrained settings following security best practices (most secure)
- Runs containers as non-root users
- Prevents privilege escalation
- Drops all Linux capabilities
- Uses read-only root filesystems when possible
- Requires a runtime default seccomp profile
Step 1: Create a restricted namespace
Create a Namespace in your Kubernetes manifest with the followingrestricted Pod security standards:
namespace.yaml
Step 2: Configure Global Security Settings
Modify your Agent’svalues.yaml file to set global security context settings that apply to all Agent components’ Pods and containers:
values.yaml
Step 3: Configure component-specific settings
When using the Agent in a restricted namespace, you must configure volume mounts because:- The container security context sets
readOnlyRootFilesystem: true - These directories need write access during runtime
- Using
emptyDirvolumes provides isolated, writable storage that meets security requirements
Worker configuration
values.yaml
Dag processor configuration
values.yaml
Triggerer configuration
values.yaml
Step 4: (Optional) Add logging sidecar configuration
values.yaml