通过配置内置准入控制器来强制执行 Pod 安全标准

Kubernetes 提供了一个内置的 准入控制器 来执行 Pod 安全标准。您可以配置此准入控制器来设置集群范围的默认值和 豁免

在开始之前

在 Kubernetes v1.22 中的 alpha 版本发布之后,Pod 安全准入在 Kubernetes v1.23 中作为 beta 版本默认可用。从版本 1.25 开始,Pod 安全准入已普遍可用。

要检查版本,请输入 kubectl version

如果您未运行 Kubernetes 1.31,您可以切换到在您正在运行的 Kubernetes 版本的文档中查看此页面。

配置准入控制器

apiVersion: apiserver.config.k8s.io/v1
kind: AdmissionConfiguration
plugins:
- name: PodSecurity
  configuration:
    apiVersion: pod-security.admission.config.k8s.io/v1 # see compatibility note
    kind: PodSecurityConfiguration
    # Defaults applied when a mode label is not set.
    #
    # Level label values must be one of:
    # - "privileged" (default)
    # - "baseline"
    # - "restricted"
    #
    # Version label values must be one of:
    # - "latest" (default) 
    # - specific version like "v1.31"
    defaults:
      enforce: "privileged"
      enforce-version: "latest"
      audit: "privileged"
      audit-version: "latest"
      warn: "privileged"
      warn-version: "latest"
    exemptions:
      # Array of authenticated usernames to exempt.
      usernames: []
      # Array of runtime class names to exempt.
      runtimeClasses: []
      # Array of namespaces to exempt.
      namespaces: []
上次修改时间:2023 年 10 月 17 日下午 2:00 PST:更新 enforce-standards-admission-controller.md (2d8edf7829)