pki.security.gdc.goog/v1
包含 PKI v1 API 组的 API 架构定义。
ACMEConfig
来源: - CertificateAuthoritySpec
字段 | 说明 |
---|---|
enabled 布尔值 |
是否通过 ACME 协议部署和访问 CA。 |
ACMEIssuerConfig
来源: - CertificateIssuerSpec
字段 | 说明 |
---|---|
rootCACertificate 整数数组 |
此文件包含由 ACME 服务器颁发的证书的根 CA 数据。 |
acme ACMEIssuer |
ACME 会配置此签发者与 RFC 8555 (ACME) 服务器通信,以获取已签名的证书。ACME 是 acme.cert-manager.io/v1 ACMEIssuer。 |
ACMEStatus
来源: - CertificateAuthorityStatus
字段 | 说明 |
---|---|
uri 字符串 |
URI 是唯一的账号标识符,也可用于从 CA 检索账号详细信息 |
BYOCertIssuerConfig
BYOCertIssuerConfig 根据自带证书模型定义了发布者。
来源: - CertificateIssuerSpec
字段 | 说明 |
---|---|
fallbackCertificateAuthority CAReference |
FallbackCertificateAuthority 是对默认 CAaaS 运营的 CA 的引用。API 类型: - Group:pki.security.gdc.goog - Kind:CertificateAuthority |
BYOCertStatus
来源: - CertificateStatus
字段 | 说明 |
---|---|
csrStatus CSRStatus |
证书签名请求 (CSR) 状态 |
signedCertStatus SignedCertStatus |
外部签名的证书状态 |
BYOCertificate
外部签名的证书
来源: - CertificateSpec
字段 | 说明 |
---|---|
certificate 整数数组 |
客户上传的 PEM 编码的 x509 证书。 |
ca 整数数组 |
用于签署证书的签名者 CA 的 PEM 编码 x509 证书。 |
CACertificateConfig
CACertificateConfig 定义了 CA 证书的预配方式。 在任何时间点,只会设置其中一个。
来源: - CertificateAuthoritySpec
字段 | 说明 |
---|---|
externalCA ExternalCAConfig |
从外部根 CA 获取证书。如果设置,系统将在状态中生成 CSR,并且可以使用此字段上传已签名的证书。 |
selfSignedCA SelfSignedCAConfig |
颁发自签名证书。(根 CA) |
managedSubCA ManagedSubCAConfig |
从 GDC 管理的 CA 颁发 SubCA 证书。(受管理的从属 CA) |
CACertificateProfile
CACertificateProfile 用于定义 CA 证书的配置文件。
来源: - CertificateAuthoritySpec
字段 | 说明 |
---|---|
commonName 字符串 |
CA 证书的通用名称。 |
organizations 字符串数组 |
证书上要使用的组织。 |
countries 字符串数组 |
证书上要使用的国家/地区。 |
organizationalUnits 字符串数组 |
证书上要使用的组织部门。 |
localities 字符串数组 |
要在证书上使用的城市。 |
provinces 字符串数组 |
证书上要使用的州/省。 |
streetAddresses 字符串数组 |
证书上要使用的街道地址。 |
postalCodes 字符串数组 |
证书上要使用的邮政编码。 |
duration 时长 |
所请求的 CA 证书的“时长”(即有效期)。 |
renewBefore 时长 |
RenewBefore 表示在 CA 证书过期之前的轮替时间。 |
maxPathLength 整数 |
CA 证书的最大路径长度。 |
CAReference
CAReference 表示 CertificateAuthority 引用。它包含用于检索任何命名空间中的 CA 的信息。
来源: - BYOCertIssuerConfig - CAaaSIssuerConfig - CertificateRequestSpec - ManagedSubCAConfig
字段 | 说明 |
---|---|
name 字符串 |
名称在命名空间中是唯一的,用于引用 CA 资源。 |
namespace 字符串 |
命名空间定义了 CA 名称必须在其中具有唯一性的空间。 |
CAaaSIssuerConfig
CAaaSIssuerConfig 定义了一个从使用 CAaaS 服务创建的 CA 请求证书的颁发者。
来源: - CertificateIssuerSpec
字段 | 说明 |
---|---|
certificateAuthorityRef CAReference |
对将签署证书的 CertificationAuthority 的引用。API 类型: - Group:pki.security.gdc.goog - Kind:CertificateAuthority |
CSRStatus
来源: - BYOCertStatus
字段 | 说明 |
---|---|
conditions 条件数组 |
用于指示自带证书 CSR 状态的状态条件列表 - WaitingforSigning:表示已生成新的 CSR,等待客户签名。- Ready:表示 CSR 已签名 |
csr 整数数组 |
存储 CSR 以供客户签名。 |
证书
Certificate 表示受管理的证书。
来源: - CertificateList
字段 | 说明 |
---|---|
apiVersion 字符串 |
pki.security.gdc.goog/v1 |
kind 字符串 |
Certificate |
metadata ObjectMeta |
如需了解 metadata 的字段,请参阅 Kubernetes API 文档。 |
spec CertificateSpec |
|
status CertificateStatus |
CertificateAuthority
CertificateAuthority 表示将用于颁发证书的各个证书授权机构。
来源: - CertificateAuthorityList
字段 | 说明 |
---|---|
apiVersion 字符串 |
pki.security.gdc.goog/v1 |
kind 字符串 |
CertificateAuthority |
metadata ObjectMeta |
如需了解 metadata 的字段,请参阅 Kubernetes API 文档。 |
spec CertificateAuthoritySpec |
|
status CertificateAuthorityStatus |
CertificateAuthorityList
CertificateAuthorityList 表示证书授权机构的集合。
字段 | 说明 |
---|---|
apiVersion 字符串 |
pki.security.gdc.goog/v1 |
kind 字符串 |
CertificateAuthorityList |
metadata ListMeta |
如需了解 metadata 的字段,请参阅 Kubernetes API 文档。 |
items CertificateAuthority 数组 |
CertificateAuthoritySpec
来源: - CertificateAuthority
字段 | 说明 |
---|---|
caProfile CACertificateProfile |
CertificateAuthority 的配置文件。 |
caCertificate CACertificateConfig |
CA 证书配置。 |
secretConfig SecretConfig |
CA Secret 的配置 |
certificateProfile CertificateProfile |
定义将颁发的证书的配置文件。 |
acme ACMEConfig |
与启用 ACME 协议相关的配置。 |
CertificateAuthorityStatus
来源: - CertificateAuthority
字段 | 说明 |
---|---|
externalCA ExternalCAStatus |
ExternalCA 用于指定由外部根 CA 签名的 SunCA 的状态选项。 |
errorStatus ErrorStatus |
ErrorStatus 包含当前错误的列表以及相应字段的更新时间戳。 |
conditions 条件数组 |
用于指示证书授权机构状态的状态条件列表。- 待处理:CSR 正在等待客户签名。- 就绪:表示证书授权机构已准备就绪,可以开始使用。 |
acme ACMEStatus |
ACME 特定的状态选项。只有在配置了已启用 ACME 的证书授权机构时,才应设置此字段。 |
CertificateConfig
CertificateConfig 表示已颁发证书中的正文信息。
来源: - CertificateRequestSpec
字段 | 说明 |
---|---|
subjectConfig SubjectConfig |
这些值用于在 X.509 证书中创建标识名和主题备用名称字段。 |
privateKeyConfig CertificatePrivateKey |
私钥选项。其中包括密钥算法和大小。 |
CertificateIssuer
CertificateIssuer 表示证书即服务的颁发者。
您可以通过添加/设置标签 pki.security.gdc.goog/is-default-issuer: true
将 CertificateIssuer 标记为默认签发者。
来源: - CertificateIssuerList
字段 | 说明 |
---|---|
apiVersion 字符串 |
pki.security.gdc.goog/v1 |
kind 字符串 |
CertificateIssuer |
metadata ObjectMeta |
如需了解 metadata 的字段,请参阅 Kubernetes API 文档。 |
spec CertificateIssuerSpec |
|
status CertificateIssuerStatus |
CertificateIssuerList
CertificateIssuerList 表示证书颁发机构的集合。
字段 | 说明 |
---|---|
apiVersion 字符串 |
pki.security.gdc.goog/v1 |
kind 字符串 |
CertificateIssuerList |
metadata ListMeta |
如需了解 metadata 的字段,请参阅 Kubernetes API 文档。 |
items CertificateIssuer 数组 |
CertificateIssuerSpec
来源: - CertificateIssuer
字段 | 说明 |
---|---|
byoCertConfig BYOCertIssuerConfig |
BYOCertConfig 在自带证书模式下配置此颁发者。 |
caaasConfig CAaaSIssuerConfig |
CAaaSConfig 会将此颁发者配置为使用由 CertificateAuthority API 部署的 CA 对证书进行签名。 |
acmeConfig ACMEIssuerConfig |
ACMEConfig 会配置此颁发者以使用 ACME 服务器对证书进行签名。 |
CertificateIssuerStatus
来源: - CertificateIssuer
字段 | 说明 |
---|---|
ca 整数数组 |
存储当前证书签发者使用的根 CA。 |
conditions 条件数组 |
用于指示 CertificateIssuer 状态的状态条件列表。- Ready:表示 CertificateIssuer 已准备就绪,可以使用。 |
CertificateList
CertificateList 表示证书集合。
字段 | 说明 |
---|---|
apiVersion 字符串 |
pki.security.gdc.goog/v1 |
kind 字符串 |
CertificateList |
metadata ListMeta |
如需了解 metadata 的字段,请参阅 Kubernetes API 文档。 |
items 证书数组 |
CertificatePrivateKey
来源: - CertificateConfig
字段 | 说明 |
---|---|
algorithm PrivateKeyAlgorithm |
算法是相应私钥的私钥算法。如果提供,允许的值为 RSA 、Ed25519 或 ECDSA 。如果指定了 algorithm 但未提供 size ,则 ECDSA 密钥算法将使用 384 的密钥大小,RSA 密钥算法将使用 3072 的密钥大小。使用 Ed25519 密钥算法时,系统会忽略密钥大小。如需了解详情,请参阅 github.com/cert-manager/cert-manager/pkg/apis/certmanager/v1/types_certificate.go。 |
size 整数 |
大小是指相应私钥的密钥位数。如果 algorithm 设置为 RSA ,有效值为 2048 、3072 、4096 或 8192 ,如果未指定,则默认为 3072 。如果 algorithm 设置为 ECDSA ,则有效值为 256 、384 或 521 ,如果未指定,则默认为 384 。如果 algorithm 设置为 Ed25519 ,系统会忽略 Size。不允许使用其他值。如需了解详情,请参阅 github.com/cert-manager/cert-manager/pkg/apis/certmanager/v1/types_certificate.go。 |
CertificateProfile
CertificateProfile 定义了已颁发证书的配置文件的规范。
来源: - CertificateAuthoritySpec
字段 | 说明 |
---|---|
keyUsage KeyUsageBits 数组 |
根据此配置文件颁发的证书允许使用的密钥用途。 |
extendedKeyUsage ExtendedKeyUsageBits 数组 |
根据此配置文件颁发的证书允许使用的扩展密钥用途。对于 SelfSignedCA,此参数是可选的;对于 ManagedSubCA 和 ExternalCA,此参数是必需的。 |
CertificateRequest
CertificateRequest 表示从引用的 CertificateAuthority 颁发证书的请求。
CertificateRequest 的 spec
中的所有字段在创建后都不可变。
来源: - CertificateRequestList
字段 | 说明 |
---|---|
apiVersion 字符串 |
pki.security.gdc.goog/v1 |
kind 字符串 |
CertificateRequest |
metadata ObjectMeta |
如需了解 metadata 的字段,请参阅 Kubernetes API 文档。 |
spec CertificateRequestSpec |
|
status CertificateRequestStatus |
CertificateRequestList
CertificateRequestList 表示证书请求的集合。
字段 | 说明 |
---|---|
apiVersion 字符串 |
pki.security.gdc.goog/v1 |
kind 字符串 |
CertificateRequestList |
metadata ListMeta |
如需了解 metadata 的字段,请参阅 Kubernetes API 文档。 |
items CertificateRequest 数组 |
CertificateRequestSpec
CertificateRequestSpec 定义了证书颁发请求。
来源: - CertificateRequest
字段 | 说明 |
---|---|
csr 整数数组 |
使用 CA 进行签名的证书签名请求。 |
certificateConfig CertificateConfig |
将用于创建 CSR 的证书配置。 |
notBefore 时间 |
证书的有效开始时间。如果未设置,我们将使用请求的当前时间。 |
notAfter 时间 |
证书的有效结束时间。如果未设置,我们将使用从 notBefore 时间开始的 90 天作为默认值。 |
signedCertificateSecret 字符串 |
用于存储已签名证书的 Secret 的名称。 |
certificateAuthorityRef CAReference |
将对证书进行签名的 CertificateAuthority 的引用。API 类型: - Group:pki.security.gdc.goog - Kind:CertificateAuthority |
CertificateRequestStatus
来源: - CertificateRequest
字段 | 说明 |
---|---|
conditions 条件数组 |
状态条件列表,用于指明待签发证书的状态。- PENDING:CSR 正在等待签名。- Ready:表示 certificateRequest 已完成。 |
autoGeneratedPrivateKey SecretReference |
如果未提供 CSR,系统将使用自动生成的私钥。可选 |
CertificateSpec
来源: - 证书
字段 | 说明 |
---|---|
issuer IssuerReference |
将用于颁发证书的 CertificateIssuer 的引用。如果未设置,则需要设置名为 pki.security.gdc.goog/use-default-issuer: true 的标签,以便使用默认签发者签发证书。API 类型: - Group:pki.security.gdc.goog - Kind:CertificateIssuer |
commonName 字符串 |
请求的通用名称 X509 证书主题属性。长度应不超过 64 个字符。 为了实现向后兼容,行为如下:如果为 nil,则使用当前行为将 commonName 设置为第一个 DNSName(如果长度不超过 64 个字符)。如果为空字符串,则不设置。如果已设置,则确保它是 SAN 的一部分。 |
dnsNames 字符串数组 |
DNSNames 是要设置在证书上的完全限定主机名的列表。 |
ipAddresses 字符串数组 |
IPAddresses 是要设置在证书上的 IPAddress subjectAltNames 的列表。 |
duration 时长 |
证书的请求“时长”(即有效期)。 |
renewBefore 时长 |
RenewBefore 表示在证书过期前进行轮换的时间。 |
secretConfig SecretConfig |
证书 Secret 的配置。 |
byoCertificate BYOCertificate |
包含外部签名的证书 |
CertificateStatus
来源: - 证书
字段 | 说明 |
---|---|
conditions 条件数组 |
用于指示证书状态的状态条件列表。- 就绪:表示证书已准备就绪,可以使用。 |
issuedBy IssuerReference |
用于颁发证书的 CertificateIssuer 的引用。API 类型: - Group:pki.security.gdc.goog - Kind:CertificateIssuer |
byoCertStatus BYOCertStatus |
BYOCertStatus 指定了自带证书模式的状态选项。 |
errorStatus ErrorStatus |
ErrorStatus 包含当前错误的列表以及相应字段的更新时间戳。 |
ExtendedKeyUsageBits
底层类型: string
ExtendedKeyUsageBits 根据 RFC 5280 4.2.1.12 定义了不同的允许的扩展密钥用法。后续 RFC 定义了许多扩展密钥用法,如果需要签发此类证书(例如用于个人身份验证、代码签名或 IPSec 的证书),则可以作为后续功能来实现。
来源: - CertificateProfile
ExternalCAConfig
来源: - CACertificateConfig
字段 | 说明 |
---|---|
signedCertificate SignedCertificateConfig |
存储由外部根 CA 签名的已签名证书。 |
ExternalCAStatus
来源: - CertificateAuthorityStatus
字段 | 说明 |
---|---|
csr 整数数组 |
等待由外部 CA 签名的证书签名请求。 |
IssuerReference
IssuerReference 表示发卡机构参考。它包含在任何命名空间中检索签发者的信息。
来源: - CertificateSpec - CertificateStatus
字段 | 说明 |
---|---|
name 字符串 |
名称在命名空间中是唯一的,用于引用签发者资源。 |
namespace 字符串 |
命名空间定义了签发者名称必须在其中具有唯一性的空间。 |
KeyUsageBits
底层类型: string
KeyUsageBits 根据 RFC 5280 4.2.1.3 定义了不同的允许密钥用途。请注意,以下许多密钥用途都用于 TLS 上下文之外的证书,而设置非 TLS 位数的实现可以作为后续功能来实现。
来源: - CertificateProfile
ManagedSubCAConfig
ManagedSubCAConfig 定义了 SubCA CA 证书的配置。
来源: - CACertificateConfig
字段 | 说明 |
---|---|
certificateAuthorityRef CAReference |
对将签署 SubCA 证书的 CertificateAuthority 的引用。API 类型: - Group:pki.security.gdc.goog - Kind:CertificateAuthority |
PrivateKeyAlgorithm
基础类型: string
来源: - CertificatePrivateKey - PrivateKeyConfig
PrivateKeyConfig
PrivateKeyConfig 用于定义证书私钥的配置
来源: - SecretConfig
字段 | 说明 |
---|---|
algorithm PrivateKeyAlgorithm |
算法是相应私钥的私钥算法。如果提供,允许的值为 RSA 、Ed25519 或 ECDSA 。如果指定了 algorithm 但未提供 size ,则 ECDSA 密钥算法将使用 384 的密钥大小,RSA 密钥算法将使用 3072 的密钥大小。使用 Ed25519 密钥算法时,系统会忽略密钥大小。 |
size 整数 |
大小是指相应私钥的密钥位数。如果 algorithm 设置为 RSA ,有效值为 2048 、3072 、4096 或 8192 ,如果未指定,则默认为 3072 。如果 algorithm 设置为 ECDSA ,则有效值为 256 、384 或 521 ,如果未指定,则默认为 384 。如果 algorithm 设置为 Ed25519 ,系统会忽略 Size。不允许使用其他值。 |
SecretConfig
SecretConfig 定义了证书 Secret 的配置。
来源: - CertificateAuthoritySpec - CertificateSpec
字段 | 说明 |
---|---|
secretName 字符串 |
将保存私钥和签名证书的 Secret 的名称。 |
secretTemplate SecretTemplate |
定义要复制到 Secret 的注释和标签。 |
privateKeyConfig PrivateKeyConfig |
证书私钥的选项 |
SecretTemplate
SecretTemplate 定义了要复制到 SecretConfig.SecretName
中命名的 Kubernetes Secret 资源的默认标签和注释。
来源: - SecretConfig
字段 | 说明 |
---|---|
annotations 对象(键:字符串,值:字符串) |
Annotations 是要复制到目标 Kubernetes Secret 的键值对映射。 |
labels 对象(键:字符串,值:字符串) |
标签是要复制到目标 Kubernetes Secret 的键值映射。 |
SelfSignedCAConfig
SelfSignedCAConfig 定义根 CA 证书的配置。
来源: - CACertificateConfig
SignedCertStatus
来源: - BYOCertStatus
字段 | 说明 |
---|---|
conditions 条件数组 |
用于指示自带证书状态的状态条件列表。- Rejected:表示证书与 CSR 不匹配 - Ready:表示证书已准备就绪,可供使用。 |
SignedCertificateConfig
来源: - ExternalCAConfig
字段 | 说明 |
---|---|
certificate 整数数组 |
客户上传的 PEM 编码的 x509 证书。 |
ca 整数数组 |
用于签署证书的签名者 CA 的 PEM 编码 x509 证书。 |
SubjectConfig
来源: - CertificateConfig
字段 | 说明 |
---|---|
commonName 字符串 |
证书的通用名称。 |
organization 字符串 |
证书的组织。 |
locality 字符串 |
证书的地点。 |
state 字符串 |
证书的状态。 |
country 字符串 |
证书的签发国家/地区。 |
dnsNames 字符串数组 |
DNSNames 是要设置在证书上的 dNSName subjectAltNames 的列表。 |
ipAddresses 字符串数组 |
IPAddresses 是要设置在证书上的 ipAddress subjectAltNames 的列表。 |
rfc822Names 字符串数组 |
RFC822Names 是要设置在证书上的 rfc822Name subjectAltNames 的列表。 |
uris 字符串数组 |
URI 是要设置在证书上的 uniformResourceIdentifier subjectAltNames 的列表。 |