Зіставлення PodSecurityPolicies зі стандартами безпеки Podʼів

Нижче наведено таблиці, що перераховують параметри конфігурації обʼєктів PodSecurityPolicy, чи поле змінює або перевіряє контейнери, та як значення конфігурації зіставляються з Стандартами безпеки Podʼів.

Для кожного параметра, до якого це застосовується, перераховані допустимі значення для Baseline та Restricted профілів. Все, що перебуває за межами допустимих значень для цих профілів, підпадає під Privileged профіль. "Немає думки" означає, що всі значення допустимі для всіх стандартів безпеки Podʼів.

Для покрокового керівництва міграції див. Міграція з PodSecurityPolicy до вбудованого контролера допуску PodSecurity.

Специфікація PodSecurityPolicy

Поля, перераховані в цій таблиці, є частиною PodSecurityPolicySpec, яка вказана в шляху поля .spec.

Зіставлення політики безпеки PodSecurityPolicySpec зі стандартами безпеки Podʼів
PodSecurityPolicySpec Тип Еквівалент стандартів безпеки Podʼів
privileged Перевірка Baseline & Restricted: false / undefined / nil
defaultAddCapabilities Зміна & Перевірка Вимоги відповідають allowedCapabilities нижче.
allowedCapabilities Перевірка

Baseline: підмножина

  • AUDIT_WRITE
  • CHOWN
  • DAC_OVERRIDE
  • FOWNER
  • FSETID
  • KILL
  • MKNOD
  • NET_BIND_SERVICE
  • SETFCAP
  • SETGID
  • SETPCAP
  • SETUID
  • SYS_CHROOT

Обмежений: пустий / undefined / nil АБО список, що містить тільки NET_BIND_SERVICE

requiredDropCapabilities Зміна & Перевірка

Baseline: немає думки

Baseline: повинен містити ALL

volumes Перевірка

Baseline: будь-що крім

  • hostPath
  • *

Restricted: підмножина

  • configMap
  • csi
  • downwardAPI
  • emptyDir
  • ephemeral
  • persistentVolumeClaim
  • projected
  • secret
hostNetwork Перевірка Baseline & Restricted: false / undefined / nil
hostPorts Перевірка Baseline & Restricted: undefined / nil / пустий
hostPID Перевірка Baseline & Restricted: false / undefined / nil
hostIPC Перевірка Baseline & Restricted: false / undefined / nil
seLinux Зміна & Перевірка

Baseline & Restricted: seLinux.rule is MustRunAs, з наступними options

  • user не встановлено ("" / undefined / nil)
  • role не встановлено ("" / undefined / nil)
  • type не встановлено або один із: container_t, container_init_t, container_kvm_t, container_engine_t
  • level є будь-чим
runAsUser Зміна & Перевірка

Baseline: Будь-що

Restricted: rule є MustRunAsNonRoot

runAsGroup Зміна (MustRunAs) & Перевірка Немає думки
supplementalGroups Зміна & Перевірка Немає думки
fsGroup Зміна & Перевірка Немає думки
readOnlyRootFilesystem Зміна & Перевірка Немає думки
defaultAllowPrivilegeEscalation Зміна Немає думки
allowPrivilegeEscalation Зміна & Перевірка

Лише зміна, якщо встановлено false

Baseline: Немає думки

Restricted: false

allowedHostPaths Перевірка Немає думки (пріоритет мають volumes)
allowedFlexVolumes Перевірка Немає думки (пріоритет мають volumes)
allowedCSIDrivers Перевірка Немає думки (пріоритет мають volumes)
allowedUnsafeSysctls Перевірка Baseline & Restricted: undefined / nil / empty
forbiddenSysctls Перевірка Немає думки
allowedProcMountTypes
(альфа-функція)
Перевірка Baseline & Restricted: ["Default"] АБО undefined / nil / empty
runtimeClass
 .defaultRuntimeClassName
Зміна Немає думки
runtimeClass
 .allowedRuntimeClassNames
Перевірка Немає думки

Анотації PodSecurityPolicy

Анотації, перераховані в цій таблиці, можуть бути вказані у .metadata.annotations обʼєкту PodSecurityPolicy.

Зіставлення анотацій PodSecurityPolicy зі стандартами безпеки Podʼів
Анотація PSP Тип Еквівалент стандартів безпеки Podʼів
seccomp.security.alpha.kubernetes.io
/defaultProfileName
Зміна Немає думки
seccomp.security.alpha.kubernetes.io
/allowedProfileNames
Перевірка

Baseline: "runtime/default," (Кома в кінці, щоб встановити unset)

Restricted: "runtime/default" (Без коми в кінці)

Значення localhost/* також дозволені як для Baseline, так і для Restricted.

apparmor.security.beta.kubernetes.io
/defaultProfileName
Зміна Немає думки
apparmor.security.beta.kubernetes.io
/allowedProfileNames
Перевірка

Baseline: "runtime/default," (Кома в кінці, щоб встановити unset)

Restricted: "runtime/default" (Без коми в кінці)

Значення localhost/* також дозволені як для Baseline, так і для Restricted.


Змінено March 09, 2026 at 3:31 PM PST: [uk] Ukrainian translation (all-in-one) (085108619a)