website/content/zh-cn/examples/policy/restricted-psp.yaml

50 lines
1.3 KiB
YAML

apiVersion: policy/v1beta1
kind: PodSecurityPolicy
metadata:
name: restricted
annotations:
# docker/default 标识 seccomp 的配置文件,但它与 Docker 运行时没有特别关联
seccomp.security.alpha.kubernetes.io/allowedProfileNames: 'docker/default,runtime/default'
apparmor.security.beta.kubernetes.io/allowedProfileNames: 'runtime/default'
apparmor.security.beta.kubernetes.io/defaultProfileName: 'runtime/default'
spec:
privileged: false
# 防止权限升级到 root
allowPrivilegeEscalation: false
requiredDropCapabilities:
- ALL
# 允许的核心卷类型.
volumes:
- 'configMap'
- 'emptyDir'
- 'projected'
- 'secret'
- 'downwardAPI'
# 假设集群管理员设置的临时 CSI 驱动程序和持久卷可以安全使用
- 'csi'
- 'persistentVolumeClaim'
- 'ephemeral'
hostNetwork: false
hostIPC: false
hostPID: false
runAsUser:
# 要求容器在没有 root 权限的情况下运行
rule: 'MustRunAsNonRoot'
seLinux:
# 此策略假定节点使用 AppArmor 而不是 SELinux
rule: 'RunAsAny'
supplementalGroups:
rule: 'MustRunAs'
ranges:
# 禁止添加 root 组
- min: 1
max: 65535
fsGroup:
rule: 'MustRunAs'
ranges:
# 禁止添加 root 组
- min: 1
max: 65535
readOnlyRootFilesystem: false