From 612eeec263ac59181a9f3f45307806f9dd37159d Mon Sep 17 00:00:00 2001 From: Qiming Teng Date: Fri, 7 Jan 2022 21:00:28 +0800 Subject: [PATCH] [zh] Translate enforce-standards-admission-controller.md --- .../enforce-standards-admission-controller.md | 120 ++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100644 content/zh/docs/tasks/configure-pod-container/enforce-standards-admission-controller.md diff --git a/content/zh/docs/tasks/configure-pod-container/enforce-standards-admission-controller.md b/content/zh/docs/tasks/configure-pod-container/enforce-standards-admission-controller.md new file mode 100644 index 0000000000..d578c8686f --- /dev/null +++ b/content/zh/docs/tasks/configure-pod-container/enforce-standards-admission-controller.md @@ -0,0 +1,120 @@ +--- +title: 通过配置内置准入控制器实施 Pod 安全标准 +content_type: task +min-kubernetes-server-version: v1.22 +--- + + + + +在 v1.22 版本中,Kubernetes 提供一种内置的[准入控制器](/zh/docs/reference/access-authn-authz/admission-controllers/#podsecurity) +用来强制实施 [Pod 安全标准](/zh/docs/concepts/security/pod-security-standards)。 +你可以配置此准入控制器来设置集群范围的默认值和[豁免选项](/zh/docs/concepts/security/pod-security-admission/#exemptions)。 + +## {{% heading "prerequisites" %}} + +{{% version-check %}} + + +- 确保 `PodSecurity` [特性门控](/zh/docs/reference/command-line-tools-reference/feature-gates/#feature-gates-for-alpha-or-beta-features)已被启用。 + + +## 配置准入控制器 {#configure-the-admission-controller} + +{{< tabs name="PodSecurityConfiguration_example_1" >}} +{{% tab name="pod-security.admission.config.k8s.io/v1beta1" %}} + +```yaml +apiVersion: apiserver.config.k8s.io/v1 +kind: AdmissionConfiguration +plugins: +- name: PodSecurity + configuration: + apiVersion: pod-security.admission.config.k8s.io/v1beta1 + kind: PodSecurityConfiguration + # 当未设置 mode 标签时会应用的默认设置 + # + # level 标签必须是以下取值之一: + # - "privileged" (默认) + # - "baseline" + # - "restricted" + # + # version 标签必须是如下取值之一: + # - "latest" (默认) + # - 诸如 "v{{< skew latestVersion >}}" 这类版本号 + defaults: + enforce: "privileged" + enforce-version: "latest" + audit: "privileged" + audit-version: "latest" + warn: "privileged" + warn-version: "latest" + exemptions: + # 要豁免的已认证用户名列表 + usernames: [] + # 要豁免的运行时类名称列表 + runtimeClassNames: [] + # 要豁免的名字空间列表 + namespaces: [] +``` + +{{< note >}} + +v1beta1 配置结构需要使用 v1.23+ 版本;对于 v1.22 版本,可使用 v1alpha1。 +{{< /note >}} + +{{% /tab %}} +{{% tab name="pod-security.admission.config.k8s.io/v1alpha1" %}} +```yaml +apiVersion: apiserver.config.k8s.io/v1 +kind: AdmissionConfiguration +plugins: +- name: PodSecurity + configuration: + apiVersion: pod-security.admission.config.k8s.io/v1alpha1 + kind: PodSecurityConfiguration + # 当未设置 mode 标签时会应用的默认设置 + # + # level 标签必须是以下取值之一: + # - "privileged" (默认) + # - "baseline" + # - "restricted" + # + # version 标签必须是如下取值之一: + # - "latest" (默认) + # - 诸如 "v{{< skew latestVersion >}}" 这类版本号 + defaults: + enforce: "privileged" + enforce-version: "latest" + audit: "privileged" + audit-version: "latest" + warn: "privileged" + warn-version: "latest" + exemptions: + # 要豁免的已认证用户名列表 + usernames: [] + # 要豁免的运行时类名称列表 + runtimeClasses: [] + # 要豁免的名字空间列表 + namespaces: [] +``` +{{% /tab %}} +{{< /tabs >}} +