From 2b6b63264756af6e169b8388a1936d8be56815fe Mon Sep 17 00:00:00 2001 From: Qiming Teng Date: Thu, 30 Jun 2022 16:02:18 +0800 Subject: [PATCH] [zh] Update CSR v1 API reference The misplaced `` are disrupting the structure of the document page. This PR fixes the indentation of these marks. --- .../certificate-signing-request-v1.md | 117 ++++++++---------- 1 file changed, 52 insertions(+), 65 deletions(-) diff --git a/content/zh-cn/docs/reference/kubernetes-api/authentication-resources/certificate-signing-request-v1.md b/content/zh-cn/docs/reference/kubernetes-api/authentication-resources/certificate-signing-request-v1.md index 8038b32484..9c9d6131af 100644 --- a/content/zh-cn/docs/reference/kubernetes-api/authentication-resources/certificate-signing-request-v1.md +++ b/content/zh-cn/docs/reference/kubernetes-api/authentication-resources/certificate-signing-request-v1.md @@ -5,13 +5,11 @@ api_metadata: kind: "CertificateSigningRequest" content_type: "api_reference" description: "CertificateSigningRequest 对象提供了一种通过提交证书签名请求并异步批准和颁发 x509 证书的机制。" -title: "证书签名请求" +title: CertificateSigningRequest weight: 4 -auto_generated: true --- - - -## 证书签名请求规范 CertificateSigningRequestSpec {#CertificateSigningRequestSpec} +## CertificateSigningRequestSpec {#CertificateSigningRequestSpec} CertificateSigningRequestSpec 包含证书请求。 - -
- **request** ([]byte),必需 @@ -153,7 +138,7 @@ CertificateSigningRequestSpec 包含证书请求。 CertificateSigningRequests 的 list/watch 请求可以使用 “spec.signerName=NAME” 字段选择器进行过滤。 - + --> 众所周知的 Kubernetes 签名者有: + 1. “kubernetes.io/kube-apiserver-client”:颁发客户端证书,用于向 kube-apiserver 进行身份验证。 对此签名者的请求永远不会被 kube-controller-manager 自动批准, 可以由 kube-controller-manager 中的 “csrsigning” 控制器颁发。 @@ -180,7 +166,7 @@ CertificateSigningRequestSpec 包含证书请求。 更多详细信息,请访问 https://kubernetes.io/zh-cn/docs/reference/access-authn-authz/certificate-signing-requests/#kubernetes-signers - + --> 也可以指定自定义 signerName。签名者定义如下: + 1. 信任分发:信任(CA 证书包)是如何分发的。 2. 许可的主体:当请求不允许的主体时的行为。 3. 请求中必需、许可或禁止的 x509 扩展(包括是否允许 subjectAltNames、哪些类型、对允许值的限制) @@ -214,16 +201,16 @@ CertificateSigningRequestSpec 包含证书请求。 证书签署者可以颁发具有不同有效期的证书, 因此客户端必须检查颁发证书中 notBefore 和 notAfter 字段之间的增量以确定实际持续时间。 - + --> 众所周知的 Kubernetes 签名者在 v1.22+ 版本内实现将遵守此字段, 只要请求的持续时间不大于最大持续时间,它们将遵守 Kubernetes 控制管理器的 --cluster-signing-duration CLI 标志。 - + --> 由于各种原因,证书签名者可能忽略此字段: 1. 不认识此字段的旧签名者(如 v1.22 版本之前的实现) @@ -299,7 +286,7 @@ CertificateSigningRequestSpec 包含证书请求。 TLS 服务证书的请求通常要求:"key encipherment"、"digital signature"、"server auth"。 - + --> 有效值: - "signing"、"digital signature"、"content commitment"、 - "key encipherment"、"key agreement"、"data encipherment"、 - "cert sign"、"crl sign"、"encipher only"、"decipher only"、"any"、 - "server auth"、"client auth"、 - "code signing"、"email protection"、"s/mime"、 - "ipsec end system"、"ipsec tunnel"、"ipsec user"、 - "timestamping"、"ocsp signing"、"microsoft sgc"、"netscape sgc"。 + "signing"、"digital signature"、"content commitment"、 + "key encipherment"、"key agreement"、"data encipherment"、 + "cert sign"、"crl sign"、"encipher only"、"decipher only"、"any"、 + "server auth"、"client auth"、 + "code signing"、"email protection"、"s/mime"、 + "ipsec end system"、"ipsec tunnel"、"ipsec user"、 + "timestamping"、"ocsp signing"、"microsoft sgc"、"netscape sgc"。 -## 证书签名请求状态 CertificateSigningRequestStatus {#CertificateSigningRequestStatus} +## CertificateSigningRequestStatus {#CertificateSigningRequestStatus} CertificateSigningRequestStatus 包含用于指示请求的批准/拒绝/失败状态和颁发证书的状况。 @@ -363,30 +350,31 @@ CertificateSigningRequestStatus 包含用于指示请求的批准/拒绝/失败 如果证书签名请求被拒绝,则添加类型为 “Denied” 的状况,并且保持该字段为空。 如果签名者不能颁发证书,则添加类型为 “Failed” 的状况,并且保持该字段为空。 - + --> 验证要求: + 1. 证书必须包含一个或多个 PEM 块。 2. 所有的 PEM 块必须有 “CERTIFICATE” 标签,不包含头和编码的数据, 必须是由 BER 编码的 ASN.1 证书结构,如 RFC5280 第 4 节所述。 3. 非 PEM 内容可能出现在 “CERTIFICATE”PEM 块之前或之后,并且是未验证的, 允许如 RFC7468 5.2 节中描述的解释性文本。 - + --> 如果存在多个 PEM 块,并且所请求的 spec.signerName 的定义没有另外说明, 那么第一个块是颁发的证书,后续的块应该被视为中间证书并在 TLS 握手中呈现。 - + --> 证书编码为 PEM 格式。 当序列化为 JSON 或 YAML 时,数据额外采用 base64 编码,它包括: + ``` base64( -----BEGIN CERTIFICATE----- @@ -407,6 +396,7 @@ CertificateSigningRequestStatus 包含用于指示请求的批准/拒绝/失败 -----END CERTIFICATE----- ) ``` + + --> - **conditions.status** (string),必需 状况的状态,True、False、Unknown 之一。Approved、Denied 与 Failed 的状况不可以是 "False" 或 "Unknown"。 - + --> - **conditions.type** (string),必需 状况的类型。已知的状况是 "Approved"、"Denied" 与 "Failed"。 @@ -462,7 +452,7 @@ CertificateSigningRequestStatus 包含用于指示请求的批准/拒绝/失败 给定类型只允许设置一种状况。 - + --> - **conditions.lastTransitionTime** (Time) @@ -482,7 +472,7 @@ CertificateSigningRequestStatus 包含用于指示请求的批准/拒绝/失败 **Time 是 time.Time 的包装器,支持正确编码为 YAML 和 JSON。为 time 包提供的许多工厂方法提供了包装器。** - + --> - **conditions.lastUpdateTime** (Time) lastUpdateTime 是该状况最后一次更新的时间。 @@ -498,20 +488,20 @@ CertificateSigningRequestStatus 包含用于指示请求的批准/拒绝/失败 **Time 是 time.Time 的包装器,支持正确编组为 YAML 和 JSON。为 time 包提供的许多工厂方法提供了包装器。** - + --> - **conditions.message** (string) message 包含一个人类可读的消息,包含关于请求状态的详细信息。 - + --> - **conditions.reason** (string) reason 表示请求状态的简短原因。 @@ -523,7 +513,7 @@ CertificateSigningRequestList is a collection of CertificateSigningRequest objec
--> -## 证书签名请求列表 CertificateSigningRequestList {#CertificateSigningRequestList} +## CertificateSigningRequestList {#CertificateSigningRequestList} CertificateSigningRequestList 是 CertificateSigningRequest 对象的集合。 @@ -550,11 +540,8 @@ CertificateSigningRequestList 是 CertificateSigningRequest 对象的集合。 items 是 CertificateSigningRequest 对象的集合。 - ## 操作 {#Operations} @@ -1597,4 +1584,4 @@ DELETE /apis/certificates.k8s.io/v1/certificatesigningrequests 200 (}}">Status): OK -401: Unauthorized \ No newline at end of file +401: Unauthorized