Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 670

Admission Controller Kubernetes

ПроверилCybersecurity entrepreneur & security researcher

Что такое Admission Controller Kubernetes?

Admission Controller KubernetesAdmission controller — плагин API-сервера Kubernetes, перехватывающий аутентифицированные запросы до сохранения, чтобы по политике валидировать, изменять или отклонять объекты.


Допуск в Kubernetes находится в конвейере запросов API-сервера после аутентификации и авторизации, но до записи объекта в etcd. Он выполняется в две упорядоченные фазы: mutating-контроллеры могут переписать объект (задать значения по умолчанию, внедрить sidecar Istio/Envoy), затем validating-контроллеры принимают или отклоняют его. Встроенные контроллеры включают NamespaceLifecycle, ResourceQuota, ServiceAccount, PodSecurity и ImagePolicyWebhook. Внешние движки политик регистрируются как MutatingWebhookConfiguration/ValidatingWebhookConfiguration, получают JSON-нагрузку AdmissionReview и возвращают вердикт allow/deny — именно сюда подключаются OPA Gatekeeper и Kyverno. С версии 1.30 (GA) ValidatingAdmissionPolicy встраивает выражения CEL прямо в API-сервер, устраняя сетевой переход к вебхуку.

Допуск — главная точка применения политик цепочки поставок и рабочих нагрузок: проверка подписи образов (Sigstore/cosign), Pod Security Standards и гигиена меток. Это делает сам вебхук мишенью. Инцидент IngressNightmare в марте 2025 года (CVE-2025-1974, CVSS 9.8, вместе с CVE-2025-1097/1098/24514) позволил неаутентифицированному злоумышленнику достичь эндпоинта admission ingress-nginx и внедрить директивы NGINX, добившись RCE в pod контроллера и потенциальной кражи секретов в масштабах всего кластера — суровое напоминание о том, что эндпоинты допуска никогда не должны быть доступны из сети.

В эксплуатации failurePolicy: Fail при недоступном вебхуке может вывести кластер из строя, поэтому ограничивайте вебхуки с помощью namespaceSelector, задавайте жёсткие timeoutSeconds и исключайте kube-system.

flowchart LR
  U[kubectl / клиент] --> API[API server]
  API --> AUTHN[Аутентификация]
  AUTHN --> AUTHZ[Авторизация RBAC]
  AUTHZ --> MUT[Mutating-допуск -> внедрение / default]
  MUT --> SCH[Валидация схемы и объекта]
  SCH --> VAL[Validating-допуск + VAP CEL]
  VAL --> D{Разрешено?}
  D -->|Отклонить| ERR[Запрос отклонён клиенту]
  D -->|Разрешить| ETCD[(Persist to etcd)]
  VAL -.policy.-> ENG[OPA Gatekeeper / Kyverno]

Примеры

  1. 01

    Mutating-вебхук внедряет sidecar Istio/Envoy в каждый новый pod в помеченном namespace.

  2. 02

    ValidatingAdmissionPolicy отклоняет Deployments без настройки runAsNonRoot.

Частые вопросы

Что такое Admission Controller Kubernetes?

Admission controller — плагин API-сервера Kubernetes, перехватывающий аутентифицированные запросы до сохранения, чтобы по политике валидировать, изменять или отклонять объекты. Относится к категории Облачная безопасность в кибербезопасности.

Что означает Admission Controller Kubernetes?

Admission controller — плагин API-сервера Kubernetes, перехватывающий аутентифицированные запросы до сохранения, чтобы по политике валидировать, изменять или отклонять объекты.

Как защититься от Admission Controller Kubernetes?

Защита от Admission Controller Kubernetes обычно сочетает технические меры и операционные практики, как описано в определении выше.

Какие есть другие названия Admission Controller Kubernetes?

Распространённые альтернативные названия: Admission webhook, ValidatingAdmissionPolicy.

Связанные термины