最新消息:在推特Mastodon

approver-policy API 参考

policy.cert-manager.io/v1alpha1

资源类型

CertificateRequestPolicy

CertificateRequestPolicy 是一个用于描述“策略配置文件”的对象,该配置文件决定是否批准或拒绝适用的 CertificateRequests。

名称类型描述必需
apiVersionstringpolicy.cert-manager.io/v1alpha1true
kindstringCertificateRequestPolicytrue
metadataobject请参阅 Kubernetes API 文档以了解 metadata 字段的字段。true
specobject

CertificateRequestPolicySpec 定义 CertificateRequestPolicy 的期望状态。


false
statusobject

CertificateRequestPolicyStatus 定义 CertificateRequestPolicy 的观察到的状态。


false

CertificateRequestPolicy.spec

CertificateRequestPolicySpec 定义 CertificateRequestPolicy 的期望状态。

名称类型描述必需
selectorobject

Selector 用于选择此 CertificateRequestPolicy 适用的 CertificateRequests,并将用于其批准评估。


true
allowedobject

Allowed 定义 CertificateRequest 的允许属性。CertificateRequest 可以请求少于允许的属性,但不能多于,即 CertificateRequest 可以请求策略声明为允许的属性子集。省略的字段声明等效 CertificateRequest 字段必须被省略或具有空值才能允许请求。


false
constraintsobject

Constraints 定义 CertificateRequest 必须满足的字段,才能允许此策略批准请求。省略的字段不会对请求中相应的属性施加任何限制。


false
pluginsmap[string]object

Plugins 是在 approver-policy 编译时内置的批准者。这是一种高级功能,通常用于扩展 approver-policy 的核心功能。此字段定义插件及其配置,这些配置应在使用此策略评估 CertificateRequest 时执行。


false

CertificateRequestPolicy.spec.selector

Selector 用于选择此 CertificateRequestPolicy 适用的 CertificateRequests,并将用于其批准评估。

名称类型描述必需
issuerRefobject

IssuerRef 用于按发行者匹配,这意味着 CertificateRequestPolicy 仅评估引用匹配发行者的 CertificateRequests。如果发行者不匹配,CertificateRequests 不会被处理,无论请求者是否受 RBAC 绑定。

以下值将匹配所有发行者

issuerRef: {}

false
namespaceobject

Namespace 用于按命名空间匹配,这意味着 CertificateRequestPolicy 仅匹配在匹配命名空间中创建的 CertificateRequests。如果省略此字段,则会检查所有命名空间中的资源。


false

CertificateRequestPolicy.spec.selector.issuerRef

IssuerRef 用于按发行者匹配,这意味着 CertificateRequestPolicy 仅评估引用匹配发行者的 CertificateRequests。如果发行者不匹配,CertificateRequests 不会被处理,无论请求者是否受 RBAC 绑定。

以下值将匹配所有发行者

issuerRef: {}
名称类型描述必需
groupstring

Group 是用于匹配请求上的 spec.issuerRef.group 字段的通配符选择器。接受通配符“*”。省略的字段匹配所有组。


false
kindstring

Kind 是用于匹配请求上的 spec.issuerRef.kind 字段的通配符选择器。接受通配符“*”。省略的字段匹配所有种类。


false
namestring

Name 是一个支持通配符的选择器,它匹配请求的 spec.issuerRef.name 字段。接受通配符“*”。省略的字段匹配所有名称。


false

CertificateRequestPolicy.spec.selector.namespace

Namespace 用于按命名空间匹配,这意味着 CertificateRequestPolicy 仅匹配在匹配命名空间中创建的 CertificateRequests。如果省略此字段,则会检查所有命名空间中的资源。

名称类型描述必需
matchLabelsmap[string]string

MatchLabels 是选择在与选择器匹配的命名空间中创建的 CertificateRequests 的命名空间标签集。


false
matchNames[]string

MatchNames 是选择在与选择器匹配的命名空间中创建的 CertificateRequests 的命名空间名称集。接受通配符“*”。TODO: 在 v1alpha2 中添加 x-kubernetes-list-type: set


false

CertificateRequestPolicy.spec.allowed

Allowed 定义 CertificateRequest 的允许属性。CertificateRequest 可以请求少于允许的属性,但不能多于,即 CertificateRequest 可以请求策略声明为允许的属性子集。省略的字段声明等效 CertificateRequest 字段必须被省略或具有空值才能允许请求。

名称类型描述必需
commonNameobject

CommonName 定义可以请求的 X.509 通用名称。


false
dnsNamesobject

DNSNames 定义可以请求的 X.509 DNS SAN。


false
emailAddressesobject

EmailAddresses 定义可以请求的 X.509 电子邮件 SAN。


false
ipAddressesobject

IPAddresses 定义可以请求的 X.509 IP SAN。


false
isCAboolean

IsCA 定义 CertificateRequest 是否允许将 spec.isCA 字段设置为 true。如果为 true,则 spec.isCA 字段可以为 truefalse。如果为 false 或未设置,则 spec.isCA 字段必须为 false


false
subjectobject

Subject 声明 CertificateRequest 中允许的 X.509 主题属性。省略的字段禁止请求任何主题属性。CertificateRequest 可以请求允许的 X.509 主题属性的子集。


false
urisobject

URIs 定义可以请求的 X.509 URI SAN。


false
usages[]enum

Usages 定义可以在 CertificateRequest spec.keyUsages 字段中包含的密钥用途。如果已设置,则 CertificateRequest 中的 spec.keyUsages 必须是指定值的子集。如果为 [] 或未设置,则不允许任何 spec.keyUsages。TODO: 在 v1alpha2 中添加 x-kubernetes-list-type: set


false

CertificateRequestPolicy.spec.allowed.commonName

CommonName 定义可以请求的 X.509 通用名称。

名称类型描述必需
requiredboolean

Required 标记相关字段必须提供且不能是空字符串。默认为 false


false
validations[]object

Validations 使用通用表达式语言 (CEL) 应用规则来验证请求上存在的属性值,这些属性值超出了使用 value/required 可以表达的范围。相关 CertificateRequest 字段上的属性值必须通过所有验证,才能使请求通过此策略批准。


false
valuestring

Value 定义相关 CertificateRequest 字段上允许的属性值。接受通配符“*”。如果已设置,则相关字段必须与指定模式匹配。

注意: value: ""required: true 配合使用,可以建立一个永远不会授予 CertificateRequest 的策略,但其他策略可以授予。


false

CertificateRequestPolicy.spec.allowed.commonName.validations[index]

ValidationRule 描述用 CEL 表达的验证规则。

名称类型描述必需
rulestring

Rule 表示将由 CEL 评估的表达式。参考: https://github.com/google/cel-spec Rule 的范围限定在架构中验证的所在位置。CEL 表达式中的 self 变量绑定到范围内的值。为了支持更高级的验证规则,approver-policy 为 CEL 表达式提供了 cr (map) 变量,其中包含 namespacenameCertificateRequest 资源。

示例(针对命名空间 DNSNames 的规则)

rule: self.endsWith(cr.namespace + '.svc.cluster.local')

true
messagestring

Message 是验证失败时显示的消息。如果 Rule 包含换行符,则 Message 是必需的。请注意,Message 绝不能包含换行符。如果未设置,则使用备用消息:“failed rule: <rule>”。例如:“必须是主机与 spec.host 匹配的 URL”


false

CertificateRequestPolicy.spec.allowed.dnsNames

DNSNames 定义可以请求的 X.509 DNS SAN。

名称类型描述必需
requiredboolean

Required 控制相关字段是否必须至少有一个值。默认为 false


false
validations[]object

Validations 使用通用表达式语言 (CEL) 应用规则来验证请求上存在的属性值,这些属性值超出了使用 values/required 可以表达的范围。相关 CertificateRequest 字段上的所有属性值必须通过所有验证,才能使请求通过此策略批准。


false
values[]string

Values 定义相关 CertificateRequest 字段上允许的属性值。接受通配符“*”。如果已设置,则相关字段只能包含允许的值中的项。

注意:values: []required: true 结合在一起,建立了一项永远不会授予 CertificateRequest 的策略,但其他策略可能会授予。待办事项:在 v1alpha2 中添加 x-kubernetes-list-type: set。


false

CertificateRequestPolicy.spec.allowed.dnsNames.validations[index]

ValidationRule 描述用 CEL 表达的验证规则。

名称类型描述必需
rulestring

Rule 表示将由 CEL 评估的表达式。参考: https://github.com/google/cel-spec Rule 的范围限定在架构中验证的所在位置。CEL 表达式中的 self 变量绑定到范围内的值。为了支持更高级的验证规则,approver-policy 为 CEL 表达式提供了 cr (map) 变量,其中包含 namespacenameCertificateRequest 资源。

示例(针对命名空间 DNSNames 的规则)

rule: self.endsWith(cr.namespace + '.svc.cluster.local')

true
messagestring

Message 是验证失败时显示的消息。如果 Rule 包含换行符,则 Message 是必需的。请注意,Message 绝不能包含换行符。如果未设置,则使用备用消息:“failed rule: <rule>”。例如:“必须是主机与 spec.host 匹配的 URL”


false

CertificateRequestPolicy.spec.allowed.emailAddresses

EmailAddresses 定义可以请求的 X.509 电子邮件 SAN。

名称类型描述必需
requiredboolean

Required 控制相关字段是否必须至少有一个值。默认为 false


false
validations[]object

Validations 使用通用表达式语言 (CEL) 应用规则来验证请求上存在的属性值,这些属性值超出了使用 values/required 可以表达的范围。相关 CertificateRequest 字段上的所有属性值必须通过所有验证,才能使请求通过此策略批准。


false
values[]string

Values 定义相关 CertificateRequest 字段上允许的属性值。接受通配符“*”。如果已设置,则相关字段只能包含允许的值中的项。

注意:values: []required: true 结合在一起,建立了一项永远不会授予 CertificateRequest 的策略,但其他策略可能会授予。待办事项:在 v1alpha2 中添加 x-kubernetes-list-type: set。


false

CertificateRequestPolicy.spec.allowed.emailAddresses.validations[index]

ValidationRule 描述用 CEL 表达的验证规则。

名称类型描述必需
rulestring

Rule 表示将由 CEL 评估的表达式。参考: https://github.com/google/cel-spec Rule 的范围限定在架构中验证的所在位置。CEL 表达式中的 self 变量绑定到范围内的值。为了支持更高级的验证规则,approver-policy 为 CEL 表达式提供了 cr (map) 变量,其中包含 namespacenameCertificateRequest 资源。

示例(针对命名空间 DNSNames 的规则)

rule: self.endsWith(cr.namespace + '.svc.cluster.local')

true
messagestring

Message 是验证失败时显示的消息。如果 Rule 包含换行符,则 Message 是必需的。请注意,Message 绝不能包含换行符。如果未设置,则使用备用消息:“failed rule: <rule>”。例如:“必须是主机与 spec.host 匹配的 URL”


false

CertificateRequestPolicy.spec.allowed.ipAddresses

IPAddresses 定义可以请求的 X.509 IP SAN。

名称类型描述必需
requiredboolean

Required 控制相关字段是否必须至少有一个值。默认为 false


false
validations[]object

Validations 使用通用表达式语言 (CEL) 应用规则来验证请求上存在的属性值,这些属性值超出了使用 values/required 可以表达的范围。相关 CertificateRequest 字段上的所有属性值必须通过所有验证,才能使请求通过此策略批准。


false
values[]string

Values 定义相关 CertificateRequest 字段上允许的属性值。接受通配符“*”。如果已设置,则相关字段只能包含允许的值中的项。

注意:values: []required: true 结合在一起,建立了一项永远不会授予 CertificateRequest 的策略,但其他策略可能会授予。待办事项:在 v1alpha2 中添加 x-kubernetes-list-type: set。


false

CertificateRequestPolicy.spec.allowed.ipAddresses.validations[index]

ValidationRule 描述用 CEL 表达的验证规则。

名称类型描述必需
rulestring

Rule 表示将由 CEL 评估的表达式。参考: https://github.com/google/cel-spec Rule 的范围限定在架构中验证的所在位置。CEL 表达式中的 self 变量绑定到范围内的值。为了支持更高级的验证规则,approver-policy 为 CEL 表达式提供了 cr (map) 变量,其中包含 namespacenameCertificateRequest 资源。

示例(针对命名空间 DNSNames 的规则)

rule: self.endsWith(cr.namespace + '.svc.cluster.local')

true
messagestring

Message 是验证失败时显示的消息。如果 Rule 包含换行符,则 Message 是必需的。请注意,Message 绝不能包含换行符。如果未设置,则使用备用消息:“failed rule: <rule>”。例如:“必须是主机与 spec.host 匹配的 URL”


false

CertificateRequestPolicy.spec.allowed.subject

Subject 声明 CertificateRequest 中允许的 X.509 主题属性。省略的字段禁止请求任何主题属性。CertificateRequest 可以请求允许的 X.509 主题属性的子集。

名称类型描述必需
国家object

国家定义了可以请求的 X.509 主题国家。


false
地区object

地区定义了可以请求的 X.509 主题地区。


false
组织单位object

组织单位定义了可以请求的 X.509 主题组织单位。


false
组织object

组织定义了可以请求的 X.509 主题组织。


false
邮政编码object

邮政编码定义了可以请求的 X.509 主题邮政编码。


false
省份object

省份定义了可以请求的 X.509 主题省份。


false
序列号object

序列号定义了可以请求的 X.509 主题序列号。


false
街道地址object

街道地址定义了可以请求的 X.509 主题街道地址。


false

CertificateRequestPolicy.spec.allowed.subject.countries

国家定义了可以请求的 X.509 主题国家。

名称类型描述必需
requiredboolean

Required 控制相关字段是否必须至少有一个值。默认为 false


false
validations[]object

Validations 使用通用表达式语言 (CEL) 应用规则来验证请求上存在的属性值,这些属性值超出了使用 values/required 可以表达的范围。相关 CertificateRequest 字段上的所有属性值必须通过所有验证,才能使请求通过此策略批准。


false
values[]string

Values 定义相关 CertificateRequest 字段上允许的属性值。接受通配符“*”。如果已设置,则相关字段只能包含允许的值中的项。

注意:values: []required: true 结合在一起,建立了一项永远不会授予 CertificateRequest 的策略,但其他策略可能会授予。待办事项:在 v1alpha2 中添加 x-kubernetes-list-type: set。


false

CertificateRequestPolicy.spec.allowed.subject.countries.validations[index]

ValidationRule 描述用 CEL 表达的验证规则。

名称类型描述必需
rulestring

Rule 表示将由 CEL 评估的表达式。参考: https://github.com/google/cel-spec Rule 的范围限定在架构中验证的所在位置。CEL 表达式中的 self 变量绑定到范围内的值。为了支持更高级的验证规则,approver-policy 为 CEL 表达式提供了 cr (map) 变量,其中包含 namespacenameCertificateRequest 资源。

示例(针对命名空间 DNSNames 的规则)

rule: self.endsWith(cr.namespace + '.svc.cluster.local')

true
messagestring

Message 是验证失败时显示的消息。如果 Rule 包含换行符,则 Message 是必需的。请注意,Message 绝不能包含换行符。如果未设置,则使用备用消息:“failed rule: <rule>”。例如:“必须是主机与 spec.host 匹配的 URL”


false

CertificateRequestPolicy.spec.allowed.subject.localities

地区定义了可以请求的 X.509 主题地区。

名称类型描述必需
requiredboolean

Required 控制相关字段是否必须至少有一个值。默认为 false


false
validations[]object

Validations 使用通用表达式语言 (CEL) 应用规则来验证请求上存在的属性值,这些属性值超出了使用 values/required 可以表达的范围。相关 CertificateRequest 字段上的所有属性值必须通过所有验证,才能使请求通过此策略批准。


false
values[]string

Values 定义相关 CertificateRequest 字段上允许的属性值。接受通配符“*”。如果已设置,则相关字段只能包含允许的值中的项。

注意:values: []required: true 结合在一起,建立了一项永远不会授予 CertificateRequest 的策略,但其他策略可能会授予。待办事项:在 v1alpha2 中添加 x-kubernetes-list-type: set。


false

CertificateRequestPolicy.spec.allowed.subject.localities.validations[index]

ValidationRule 描述用 CEL 表达的验证规则。

名称类型描述必需
rulestring

Rule 表示将由 CEL 评估的表达式。参考: https://github.com/google/cel-spec Rule 的范围限定在架构中验证的所在位置。CEL 表达式中的 self 变量绑定到范围内的值。为了支持更高级的验证规则,approver-policy 为 CEL 表达式提供了 cr (map) 变量,其中包含 namespacenameCertificateRequest 资源。

示例(针对命名空间 DNSNames 的规则)

rule: self.endsWith(cr.namespace + '.svc.cluster.local')

true
messagestring

Message 是验证失败时显示的消息。如果 Rule 包含换行符,则 Message 是必需的。请注意,Message 绝不能包含换行符。如果未设置,则使用备用消息:“failed rule: <rule>”。例如:“必须是主机与 spec.host 匹配的 URL”


false

CertificateRequestPolicy.spec.allowed.subject.organizationalUnits

组织单位定义了可以请求的 X.509 主题组织单位。

名称类型描述必需
requiredboolean

Required 控制相关字段是否必须至少有一个值。默认为 false


false
validations[]object

Validations 使用通用表达式语言 (CEL) 应用规则来验证请求上存在的属性值,这些属性值超出了使用 values/required 可以表达的范围。相关 CertificateRequest 字段上的所有属性值必须通过所有验证,才能使请求通过此策略批准。


false
values[]string

Values 定义相关 CertificateRequest 字段上允许的属性值。接受通配符“*”。如果已设置,则相关字段只能包含允许的值中的项。

注意:values: []required: true 结合在一起,建立了一项永远不会授予 CertificateRequest 的策略,但其他策略可能会授予。待办事项:在 v1alpha2 中添加 x-kubernetes-list-type: set。


false

CertificateRequestPolicy.spec.allowed.subject.organizationalUnits.validations[index]

ValidationRule 描述用 CEL 表达的验证规则。

名称类型描述必需
rulestring

Rule 表示将由 CEL 评估的表达式。参考: https://github.com/google/cel-spec Rule 的范围限定在架构中验证的所在位置。CEL 表达式中的 self 变量绑定到范围内的值。为了支持更高级的验证规则,approver-policy 为 CEL 表达式提供了 cr (map) 变量,其中包含 namespacenameCertificateRequest 资源。

示例(针对命名空间 DNSNames 的规则)

rule: self.endsWith(cr.namespace + '.svc.cluster.local')

true
messagestring

Message 是验证失败时显示的消息。如果 Rule 包含换行符,则 Message 是必需的。请注意,Message 绝不能包含换行符。如果未设置,则使用备用消息:“failed rule: <rule>”。例如:“必须是主机与 spec.host 匹配的 URL”


false

CertificateRequestPolicy.spec.allowed.subject.organizations

组织定义了可以请求的 X.509 主题组织。

名称类型描述必需
requiredboolean

Required 控制相关字段是否必须至少有一个值。默认为 false


false
validations[]object

Validations 使用通用表达式语言 (CEL) 应用规则来验证请求上存在的属性值,这些属性值超出了使用 values/required 可以表达的范围。相关 CertificateRequest 字段上的所有属性值必须通过所有验证,才能使请求通过此策略批准。


false
values[]string

Values 定义相关 CertificateRequest 字段上允许的属性值。接受通配符“*”。如果已设置,则相关字段只能包含允许的值中的项。

注意:values: []required: true 结合在一起,建立了一项永远不会授予 CertificateRequest 的策略,但其他策略可能会授予。待办事项:在 v1alpha2 中添加 x-kubernetes-list-type: set。


false

CertificateRequestPolicy.spec.allowed.subject.organizations.validations[index]

ValidationRule 描述用 CEL 表达的验证规则。

名称类型描述必需
rulestring

Rule 表示将由 CEL 评估的表达式。参考: https://github.com/google/cel-spec Rule 的范围限定在架构中验证的所在位置。CEL 表达式中的 self 变量绑定到范围内的值。为了支持更高级的验证规则,approver-policy 为 CEL 表达式提供了 cr (map) 变量,其中包含 namespacenameCertificateRequest 资源。

示例(针对命名空间 DNSNames 的规则)

rule: self.endsWith(cr.namespace + '.svc.cluster.local')

true
messagestring

Message 是验证失败时显示的消息。如果 Rule 包含换行符,则 Message 是必需的。请注意,Message 绝不能包含换行符。如果未设置,则使用备用消息:“failed rule: <rule>”。例如:“必须是主机与 spec.host 匹配的 URL”


false

CertificateRequestPolicy.spec.allowed.subject.postalCodes

邮政编码定义了可以请求的 X.509 主题邮政编码。

名称类型描述必需
requiredboolean

Required 控制相关字段是否必须至少有一个值。默认为 false


false
validations[]object

Validations 使用通用表达式语言 (CEL) 应用规则来验证请求上存在的属性值,这些属性值超出了使用 values/required 可以表达的范围。相关 CertificateRequest 字段上的所有属性值必须通过所有验证,才能使请求通过此策略批准。


false
values[]string

Values 定义相关 CertificateRequest 字段上允许的属性值。接受通配符“*”。如果已设置,则相关字段只能包含允许的值中的项。

注意:values: []required: true 结合在一起,建立了一项永远不会授予 CertificateRequest 的策略,但其他策略可能会授予。待办事项:在 v1alpha2 中添加 x-kubernetes-list-type: set。


false

CertificateRequestPolicy.spec.allowed.subject.postalCodes.validations[index]

ValidationRule 描述用 CEL 表达的验证规则。

名称类型描述必需
rulestring

Rule 表示将由 CEL 评估的表达式。参考: https://github.com/google/cel-spec Rule 的范围限定在架构中验证的所在位置。CEL 表达式中的 self 变量绑定到范围内的值。为了支持更高级的验证规则,approver-policy 为 CEL 表达式提供了 cr (map) 变量,其中包含 namespacenameCertificateRequest 资源。

示例(针对命名空间 DNSNames 的规则)

rule: self.endsWith(cr.namespace + '.svc.cluster.local')

true
messagestring

Message 是验证失败时显示的消息。如果 Rule 包含换行符,则 Message 是必需的。请注意,Message 绝不能包含换行符。如果未设置,则使用备用消息:“failed rule: <rule>”。例如:“必须是主机与 spec.host 匹配的 URL”


false

CertificateRequestPolicy.spec.allowed.subject.provinces

省份定义了可以请求的 X.509 主题省份。

名称类型描述必需
requiredboolean

Required 控制相关字段是否必须至少有一个值。默认为 false


false
validations[]object

Validations 使用通用表达式语言 (CEL) 应用规则来验证请求上存在的属性值,这些属性值超出了使用 values/required 可以表达的范围。相关 CertificateRequest 字段上的所有属性值必须通过所有验证,才能使请求通过此策略批准。


false
values[]string

Values 定义相关 CertificateRequest 字段上允许的属性值。接受通配符“*”。如果已设置,则相关字段只能包含允许的值中的项。

注意:values: []required: true 结合在一起,建立了一项永远不会授予 CertificateRequest 的策略,但其他策略可能会授予。待办事项:在 v1alpha2 中添加 x-kubernetes-list-type: set。


false

CertificateRequestPolicy.spec.allowed.subject.provinces.validations[index]

ValidationRule 描述用 CEL 表达的验证规则。

名称类型描述必需
rulestring

Rule 表示将由 CEL 评估的表达式。参考: https://github.com/google/cel-spec Rule 的范围限定在架构中验证的所在位置。CEL 表达式中的 self 变量绑定到范围内的值。为了支持更高级的验证规则,approver-policy 为 CEL 表达式提供了 cr (map) 变量,其中包含 namespacenameCertificateRequest 资源。

示例(针对命名空间 DNSNames 的规则)

rule: self.endsWith(cr.namespace + '.svc.cluster.local')

true
messagestring

Message 是验证失败时显示的消息。如果 Rule 包含换行符,则 Message 是必需的。请注意,Message 绝不能包含换行符。如果未设置,则使用备用消息:“failed rule: <rule>”。例如:“必须是主机与 spec.host 匹配的 URL”


false

CertificateRequestPolicy.spec.allowed.subject.serialNumber

序列号定义了可以请求的 X.509 主题序列号。

名称类型描述必需
requiredboolean

Required 标记相关字段必须提供且不能是空字符串。默认为 false


false
validations[]object

Validations 使用通用表达式语言 (CEL) 应用规则来验证请求上存在的属性值,这些属性值超出了使用 value/required 可以表达的范围。相关 CertificateRequest 字段上的属性值必须通过所有验证,才能使请求通过此策略批准。


false
valuestring

Value 定义相关 CertificateRequest 字段上允许的属性值。接受通配符“*”。如果已设置,则相关字段必须与指定模式匹配。

注意: value: ""required: true 配合使用,可以建立一个永远不会授予 CertificateRequest 的策略,但其他策略可以授予。


false

CertificateRequestPolicy.spec.allowed.subject.serialNumber.validations[index]

ValidationRule 描述用 CEL 表达的验证规则。

名称类型描述必需
rulestring

Rule 表示将由 CEL 评估的表达式。参考: https://github.com/google/cel-spec Rule 的范围限定在架构中验证的所在位置。CEL 表达式中的 self 变量绑定到范围内的值。为了支持更高级的验证规则,approver-policy 为 CEL 表达式提供了 cr (map) 变量,其中包含 namespacenameCertificateRequest 资源。

示例(针对命名空间 DNSNames 的规则)

rule: self.endsWith(cr.namespace + '.svc.cluster.local')

true
messagestring

Message 是验证失败时显示的消息。如果 Rule 包含换行符,则 Message 是必需的。请注意,Message 绝不能包含换行符。如果未设置,则使用备用消息:“failed rule: <rule>”。例如:“必须是主机与 spec.host 匹配的 URL”


false

CertificateRequestPolicy.spec.allowed.subject.streetAddresses

街道地址定义了可以请求的 X.509 主题街道地址。

名称类型描述必需
requiredboolean

Required 控制相关字段是否必须至少有一个值。默认为 false


false
validations[]object

Validations 使用通用表达式语言 (CEL) 应用规则来验证请求上存在的属性值,这些属性值超出了使用 values/required 可以表达的范围。相关 CertificateRequest 字段上的所有属性值必须通过所有验证,才能使请求通过此策略批准。


false
values[]string

Values 定义相关 CertificateRequest 字段上允许的属性值。接受通配符“*”。如果已设置,则相关字段只能包含允许的值中的项。

注意:values: []required: true 结合在一起,建立了一项永远不会授予 CertificateRequest 的策略,但其他策略可能会授予。待办事项:在 v1alpha2 中添加 x-kubernetes-list-type: set。


false

CertificateRequestPolicy.spec.allowed.subject.streetAddresses.validations[index]

ValidationRule 描述用 CEL 表达的验证规则。

名称类型描述必需
rulestring

Rule 表示将由 CEL 评估的表达式。参考: https://github.com/google/cel-spec Rule 的范围限定在架构中验证的所在位置。CEL 表达式中的 self 变量绑定到范围内的值。为了支持更高级的验证规则,approver-policy 为 CEL 表达式提供了 cr (map) 变量,其中包含 namespacenameCertificateRequest 资源。

示例(针对命名空间 DNSNames 的规则)

rule: self.endsWith(cr.namespace + '.svc.cluster.local')

true
messagestring

Message 是验证失败时显示的消息。如果 Rule 包含换行符,则 Message 是必需的。请注意,Message 绝不能包含换行符。如果未设置,则使用备用消息:“failed rule: <rule>”。例如:“必须是主机与 spec.host 匹配的 URL”


false

CertificateRequestPolicy.spec.allowed.uris

URIs 定义可以请求的 X.509 URI SAN。

名称类型描述必需
requiredboolean

Required 控制相关字段是否必须至少有一个值。默认为 false


false
validations[]object

Validations 使用通用表达式语言 (CEL) 应用规则来验证请求上存在的属性值,这些属性值超出了使用 values/required 可以表达的范围。相关 CertificateRequest 字段上的所有属性值必须通过所有验证,才能使请求通过此策略批准。


false
values[]string

Values 定义相关 CertificateRequest 字段上允许的属性值。接受通配符“*”。如果已设置,则相关字段只能包含允许的值中的项。

注意:values: []required: true 结合在一起,建立了一项永远不会授予 CertificateRequest 的策略,但其他策略可能会授予。待办事项:在 v1alpha2 中添加 x-kubernetes-list-type: set。


false

CertificateRequestPolicy.spec.allowed.uris.validations[index]

ValidationRule 描述用 CEL 表达的验证规则。

名称类型描述必需
rulestring

Rule 表示将由 CEL 评估的表达式。参考: https://github.com/google/cel-spec Rule 的范围限定在架构中验证的所在位置。CEL 表达式中的 self 变量绑定到范围内的值。为了支持更高级的验证规则,approver-policy 为 CEL 表达式提供了 cr (map) 变量,其中包含 namespacenameCertificateRequest 资源。

示例(针对命名空间 DNSNames 的规则)

rule: self.endsWith(cr.namespace + '.svc.cluster.local')

true
messagestring

Message 是验证失败时显示的消息。如果 Rule 包含换行符,则 Message 是必需的。请注意,Message 绝不能包含换行符。如果未设置,则使用备用消息:“failed rule: <rule>”。例如:“必须是主机与 spec.host 匹配的 URL”


false

CertificateRequestPolicy.spec.constraints

Constraints 定义 CertificateRequest 必须满足的字段,才能允许此策略批准请求。省略的字段不会对请求中相应的属性施加任何限制。

名称类型描述必需
maxDurationstring

MaxDuration 定义证书请求的最大持续时间。值是包含的(例如,值为 1h 将接受 1h 的持续时间)。MinDuration 和 MaxDuration 可以是相同的值。如果设置,则必须在 CertificateRequest 中请求持续时间。省略的字段不会对持续时间应用最大约束。


false
minDurationstring

MinDuration 定义证书请求的最小持续时间。值是包含的(例如,值为 1h 将接受 1h 的持续时间)。MinDuration 和 MaxDuration 可以是相同的值。如果设置,则必须在 CertificateRequest 中请求持续时间。省略的字段不会对持续时间应用最小约束。


false
privateKeyobject

PrivateKey 定义对 CertificateRequest 允许的私钥形状的约束。省略的字段不会应用任何私钥形状约束。


false

CertificateRequestPolicy.spec.constraints.privateKey

PrivateKey 定义对 CertificateRequest 允许的私钥形状的约束。省略的字段不会应用任何私钥形状约束。

名称类型描述必需
algorithmenum

Algorithm 定义请求中私钥的允许的加密算法。省略的字段允许任何算法。



枚举: RSA, ECDSA, Ed25519

false
maxSizeinteger

MaxSize 定义私钥的最大密钥大小。值是包含的(例如,最小值为 2048 将接受大小为 2048 的大小)。MaxSize 和 MinSize 可以是相同的值。省略的字段不会对大小应用最大约束。


false
minSizeinteger

MinSize 定义私钥的最小密钥大小。值是包含的(例如,最小值为 2048 将接受大小为 2048 的大小)。MinSize 和 MaxSize 可以是相同的值。省略的字段不会对大小应用最小约束。


false

CertificateRequestPolicy.spec.plugins[key]

CertificateRequestPolicyPluginData 是插件批准者评估此策略上的 CertificateRequest 所需的配置。

名称类型描述必需
valuesmap[string]string

值定义了一组对插件来说众所周知的键值对,这些键值对是插件根据此策略成功评估请求所需的。


false

CertificateRequestPolicy.status

CertificateRequestPolicyStatus 定义 CertificateRequestPolicy 的观察到的状态。

名称类型描述必需
conditions[]object

指示 CertificateRequestPolicy 状态的一系列状态条件。已知的条件类型为 Ready


false

CertificateRequestPolicy.status.conditions[index]

CertificateRequestPolicyCondition 包含 CertificateRequestPolicyStatus 的条件信息。

名称类型描述必需
statusstring

条件的状态, ('True', 'False', 'Unknown') 之一。


true
typestring

条件的类型,已知值为 (Ready)。


true
lastTransitionTimestring

LastTransitionTime 是与此条件的最后状态更改相对应的 timestamp。



格式: date-time

false
messagestring

Message 是对最后过渡细节的人类可读描述,补充了 reason。


false
observedGenerationinteger

如果设置,这表示设置条件的 .metadata.generation。例如,如果 .metadata.generation 当前为 12,但 .status.condition[x].observedGeneration 为 9,则条件相对于 CertificateRequestPolicy 的当前状态而言已过时。



格式: int64

false
reasonstring

Reason 是对条件的最后过渡的简短机器可读解释。


false