Обратитесь к официальной документации Kubernetes: Pod Security Admission
Pod Security Admission (PSA) — это контроллер допуска Kubernetes, который обеспечивает выполнение политик безопасности на уровне namespace, проверяя спецификации Pod на соответствие предопределённым стандартам.
PSA определяет три режима для управления обработкой нарушений политики:
Режим | Поведение | Сценарий использования |
---|---|---|
Enforce | Запрещает создание/изменение Pod, не соответствующих требованиям. | Производственные среды, требующие строгого соблюдения безопасности. |
Audit | Позволяет создавать Pod, но регистрирует нарушения в аудит-логах. | Мониторинг и анализ инцидентов безопасности без блокировки рабочих нагрузок. |
Warn | Позволяет создавать Pod, но возвращает клиенту предупреждения о нарушениях. | Тестовые среды или переходные этапы для корректировки политик. |
Ключевые замечания:
PSA определяет три стандарта безопасности для ограничения привилегий Pod:
Стандарт | Описание | Основные ограничения |
---|---|---|
Privileged | Неограниченный доступ. Подходит для доверенных рабочих нагрузок (например, системных компонентов). | Нет проверки полей securityContext . |
Baseline | Минимальные ограничения для предотвращения известных эскалаций привилегий. | Блокирует hostNetwork , hostPID , привилегированные контейнеры и неограниченные тома hostPath . |
Restricted | Самая строгая политика, обеспечивающая лучшие практики безопасности. | Требует: - runAsNonRoot: true - seccompProfile.type: RuntimeDefault - Удалённые Linux capabilities. |
Применяйте метки к namespace для определения политик PSA.
Пример YAML-файла
Команда CLI
Исключайте конкретных пользователей, namespace или runtime классы из проверок PSA.
Пример конфигурации: