ClusterTrustBundle v1beta1

ClusterTrustBundle 是一个集群范围的容器,用于存放 X。

apiVersion: certificates.k8s.io/v1beta1

import "k8s.io/api/certificates/v1beta1"

ClusterTrustBundle

ClusterTrustBundle 是一个集群范围的容器,用于存放 X.509 信任锚(根证书)。

ClusterTrustBundle 对象被认为是集群中任何经过身份验证的用户都可以读取的,因为 Pod 可以通过 `clusterTrustBundle` 投影来挂载它们。默认情况下,所有服务帐户都对 ClusterTrustBundles 具有读取权限。只有命名空间级别访问权限的用户可以通过冒充他们有权访问的服务帐户来读取 ClusterTrustBundles。

它可以选择性地与特定的签名者关联,在这种情况下,它包含该签名者的一个有效信任锚集。签名者可以有多个关联的 ClusterTrustBundles;每个都是该签名者的一个独立信任锚集。Admission Control 用于强制只有拥有签名者权限的用户才能创建或修改相应的 bundle。


  • apiVersion: certificates.k8s.io/v1beta1

  • kind: ClusterTrustBundle

  • metadata (ObjectMeta)

    metadata 包含对象元数据。

  • spec (ClusterTrustBundleSpec), required

    spec 包含签名者(如果存在)和信任锚。

ClusterTrustBundleSpec

ClusterTrustBundleSpec 包含签名者和信任锚。


  • trustBundle (string), required

    trustBundle 包含此 bundle 的各个 X.509 信任锚,格式为 PEM bundle,其中包含 PEM 包装的 DER 格式的 X.509 证书。

    数据必须只包含可以解析为有效 X.509 证书的 PEM 证书块。每个证书必须包含一个 basic constraints 扩展,其中 CA 位已设置。API 服务器将拒绝包含重复证书或使用 PEM 块头的对象。

    ClusterTrustBundles 的用户,包括 Kubelet,可以根据自己的逻辑自由地重新排序和去重此文件中的证书块,也可以删除 PEM 块头和块间数据。

  • signerName (string)

    signerName 指示关联的签名者(如果存在)。

    要创建或更新设置了 signerName 的 ClusterTrustBundle,您必须具有以下集群范围的权限:group=certificates.k8s.io resource=signers resourceName=<签名者名称> verb=attest。

    如果 signerName 非空,则 ClusterTrustBundle 对象必须以签名者名称作为前缀命名(将斜杠翻译为冒号)。例如,对于签名者名称 `example.com/foo`,有效的 ClusterTrustBundle 对象名称包括 `example.com:foo:abc` 和 `example.com:foo:v1`。

    如果 signerName 为空,则 ClusterTrustBundle 对象名称不应有此类前缀。

    对 ClusterTrustBundles 的列表/监视请求可以使用 `spec.signerName=NAME` 字段选择器在此字段上进行过滤。

ClusterTrustBundleList

ClusterTrustBundleList 是 ClusterTrustBundle 对象的集合


  • apiVersion: certificates.k8s.io/v1beta1

  • kind: ClusterTrustBundleList

  • metadata (ListMeta)

    metadata 包含列表元数据。

  • items ([]ClusterTrustBundle), required

    items 是 ClusterTrustBundle 对象的集合

操作


get 读取指定的 ClusterTrustBundle

HTTP 请求

GET /apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}

参数

  • name (在路径中): string,必填

    ClusterTrustBundle 的名称

  • pretty (在查询中): string

    pretty

响应

200 (ClusterTrustBundle): OK

401: 未授权

list 列出或监视 ClusterTrustBundle 类型的对象

HTTP 请求

GET /apis/certificates.k8s.io/v1beta1/clustertrustbundles

参数

响应

200 (ClusterTrustBundleList): OK

401: 未授权

create 创建一个 ClusterTrustBundle

HTTP 请求

POST /apis/certificates.k8s.io/v1beta1/clustertrustbundles

参数

响应

200 (ClusterTrustBundle): OK

201 (ClusterTrustBundle): Created

202 (ClusterTrustBundle): Accepted

401: 未授权

update 替换指定的 ClusterTrustBundle

HTTP 请求

PUT /apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}

参数

响应

200 (ClusterTrustBundle): OK

201 (ClusterTrustBundle): Created

401: 未授权

patch 部分更新指定的 ClusterTrustBundle

HTTP 请求

PATCH /apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}

参数

  • name (在路径中): string,必填

    ClusterTrustBundle 的名称

  • body: Patch,必需

  • dryRun (在查询中): string

    dryRun

  • fieldManager (在查询中): string

    fieldManager

  • fieldValidation (在查询中): string

    fieldValidation

  • force (在查询中): boolean

    force

  • pretty (在查询中): string

    pretty

响应

200 (ClusterTrustBundle): OK

201 (ClusterTrustBundle): Created

401: 未授权

delete 删除一个 ClusterTrustBundle

HTTP 请求

DELETE /apis/certificates.k8s.io/v1beta1/clustertrustbundles/{name}

参数

响应

200 (Status): OK

202 (Status): 已接受

401: 未授权

deletecollection 删除 ClusterTrustBundle 的集合

HTTP 请求

DELETE /apis/certificates.k8s.io/v1beta1/clustertrustbundles

参数

响应

200 (Status): OK

401: 未授权

本页面是自动生成的。

如果你打算报告此页面存在的问题,请在问题描述中提及此页面是自动生成的。修复可能需要在 Kubernetes 项目的其他地方进行。

最后修改时间:2025 年 4 月 24 日上午 9:14 PST:v1.33 的 Markdown API 参考 (b84ec30bbb)