pki.security.gdc.goog/v1
Contains API Schema definitions for the PKI v1 API group.
ACMEConfig
Appears in: - CertificateAuthoritySpec
| Field | Description | 
|---|---|
| enabledboolean | Whether to deploy and access CA via ACME protocol. | 
ACMEIssuerConfig
Appears in: - CertificateIssuerSpec
| Field | Description | 
|---|---|
| rootCACertificateinteger array | This contains the Root CA data of certificates issued by ACME server. | 
| acmeACMEIssuer | ACME configures this issuer to communicate with a RFC 8555 (ACME) server to obtain signed certificates. ACME is an acme.cert-manager.io/v1 ACMEIssuer. | 
ACMEStatus
Appears in: - CertificateAuthorityStatus
| Field | Description | 
|---|---|
| uristring | URI is the unique account identifier, which can also be used to retrieve account details from the CA | 
BYOCertIssuerConfig
BYOCertIssuerConfig defines an issuer based on the BYO-Cert model.
Appears in: - CertificateIssuerSpec
| Field | Description | 
|---|---|
| fallbackCertificateAuthorityCAReference | FallbackCertificateAuthority is the reference to a default CAaaS operated CA. API type: - Group: pki.security.gdc.goog - Kind: CertificateAuthority | 
BYOCertStatus
Appears in: - CertificateStatus
| Field | Description | 
|---|---|
| csrStatusCSRStatus | Certificate Signing Request (CSR) status | 
| signedCertStatusSignedCertStatus | Externally signed certificate status | 
BYOCertificate
Externally signed certificate
Appears in: - CertificateSpec
| Field | Description | 
|---|---|
| certificateinteger array | The PEM encoded x509 certificate uploaded by the customer. | 
| cainteger array | The PEM encoded x509 certificate of the signer CA used to sign the certificate. | 
CACertificateConfig
CACertificateConfig defines how the CA certificate is going to be provisioned. Only one of them will be set at any point in time.
Appears in: - CertificateAuthoritySpec
| Field | Description | 
|---|---|
| externalCAExternalCAConfig | Get the certificate from an external root CA. If set, a CSR will be generated on the status and signed certificate can be upload using this field. | 
| selfSignedCASelfSignedCAConfig | Issue a self-signed certificate. (Root CA) | 
| managedSubCAManagedSubCAConfig | Issue a SubCA certificate from a GDC-managed CA. (Managed Sub CA) | 
CACertificateProfile
CACertificateProfile defines the profile for a CA certificate.
Appears in: - CertificateAuthoritySpec
| Field | Description | 
|---|---|
| commonNamestring | The common name of the CA Certificate. | 
| organizationsstring array | Organizations to be used on the Certificate. | 
| countriesstring array | Countries to be used on the Certificate. | 
| organizationalUnitsstring array | Organizational Units to be used on the Certificate. | 
| localitiesstring array | Cities to be used on the Certificate. | 
| provincesstring array | State/Provinces to be used on the Certificate. | 
| streetAddressesstring array | Street addresses to be used on the Certificate. | 
| postalCodesstring array | Postal codes to be used on the Certificate. | 
| durationDuration | The requested 'duration' (i.e. lifetime) of the CA Certificate. | 
| renewBeforeDuration | RenewBefore implies the rotation time before the CA certificate expires. | 
| maxPathLengthinteger | The maximum path length of the CA certificate. | 
CAReference
CAReference represents a CertificateAuthority reference. It has information to retrieve a CA in any namespace.
Appears in: - BYOCertIssuerConfig - CAaaSIssuerConfig - CertificateRequestSpec - ManagedSubCAConfig
| Field | Description | 
|---|---|
| namestring | Name is unique within a namespace to reference a CA resource. | 
| namespacestring | Namespace defines the space within which the CA name must be unique. | 
CAaaSIssuerConfig
CAaaSIssuerConfig defines an issuer that requests certificates from a CA created using the CAaaS service.
Appears in: - CertificateIssuerSpec
| Field | Description | 
|---|---|
| certificateAuthorityRefCAReference | A reference to a CertificationAuthority which will sign the certificate. API type: - Group: pki.security.gdc.goog - Kind: CertificateAuthority | 
CSRStatus
Appears in: - BYOCertStatus
| Field | Description | 
|---|---|
| conditionsCondition array | List of status conditions to indicate the status of a BYO Certificate CSR - WaitingforSigning: Indicates that a new CSR has been generated to be signed by the customer. - Ready: Indicates that the CSR has been signed | 
| csrinteger array | Stores the CSR for the customer to sign. | 
Certificate
A Certificate represents a managed certificate.
Appears in: - CertificateList
| Field | Description | 
|---|---|
| apiVersionstring | pki.security.gdc.goog/v1 | 
| kindstring | Certificate | 
| metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | 
| specCertificateSpec | |
| statusCertificateStatus | 
CertificateAuthority
CertificateAuthority represents the individual Certificate Authority that will be used to issue the certificates.
Appears in: - CertificateAuthorityList
| Field | Description | 
|---|---|
| apiVersionstring | pki.security.gdc.goog/v1 | 
| kindstring | CertificateAuthority | 
| metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | 
| specCertificateAuthoritySpec | |
| statusCertificateAuthorityStatus | 
CertificateAuthorityList
CertificateAuthorityList represents a collection of certiifcate authorities.
| Field | Description | 
|---|---|
| apiVersionstring | pki.security.gdc.goog/v1 | 
| kindstring | CertificateAuthorityList | 
| metadataListMeta | Refer to Kubernetes API documentation for fields of metadata. | 
| itemsCertificateAuthority array | 
CertificateAuthoritySpec
Appears in: - CertificateAuthority
| Field | Description | 
|---|---|
| caProfileCACertificateProfile | The profile of the CertificateAuthority. | 
| caCertificateCACertificateConfig | The CA Certificate provisioning configuration. | 
| secretConfigSecretConfig | Configuration of the CA secret | 
| certificateProfileCertificateProfile | Defines the profile of the certificates that will be issued. | 
| acmeACMEConfig | Config related to enable ACME protocol. | 
CertificateAuthorityStatus
Appears in: - CertificateAuthority
| Field | Description | 
|---|---|
| externalCAExternalCAStatus | ExternalCA specifies status options for SunCA signed by External root CA. | 
| errorStatusErrorStatus | ErrorStatus contain a list of current errors and the timestamp this field gets updated. | 
| conditionsCondition array | List of status conditions to indicate the status of a Certification Authority. - Pending: CSR are pending to be signed by the customer. - Ready: Indicates that the certificate authority is ready to use. | 
| acmeACMEStatus | ACME specific status options. This field should only be set if the Certificate Authority is configured with ACME enabled. | 
CertificateConfig
CertificateConfig represents the subject information in an issued certificate.
Appears in: - CertificateRequestSpec
| Field | Description | 
|---|---|
| subjectConfigSubjectConfig | These values are used to create the distinguished name and subject alternative name fields in an X.509 certificate. | 
| privateKeyConfigCertificatePrivateKey | Private key options. These include the key algorithm and size. | 
CertificateIssuer
CertificateIssuer represents an issuer for Certificate as a Service.
You can mark a CertificateIssuer as the default issuer by adding/setting
the label pki.security.gdc.goog/is-default-issuer: true.
Appears in: - CertificateIssuerList
| Field | Description | 
|---|---|
| apiVersionstring | pki.security.gdc.goog/v1 | 
| kindstring | CertificateIssuer | 
| metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | 
| specCertificateIssuerSpec | |
| statusCertificateIssuerStatus | 
CertificateIssuerList
CertificateIssuerList represents a collection of certiifcate issuers.
| Field | Description | 
|---|---|
| apiVersionstring | pki.security.gdc.goog/v1 | 
| kindstring | CertificateIssuerList | 
| metadataListMeta | Refer to Kubernetes API documentation for fields of metadata. | 
| itemsCertificateIssuer array | 
CertificateIssuerSpec
Appears in: - CertificateIssuer
| Field | Description | 
|---|---|
| byoCertConfigBYOCertIssuerConfig | BYOCertConfig configures this issuer in BYO-Cert mode. | 
| caaasConfigCAaaSIssuerConfig | CAaaSConfig configures this issuer to sign certificates using CA deployed by the CertificateAuthority API. | 
| acmeConfigACMEIssuerConfig | ACMEConfig configures this issuer to sign certificates using ACME server. | 
CertificateIssuerStatus
Appears in: - CertificateIssuer
| Field | Description | 
|---|---|
| cainteger array | Stores the root CA used by the current certificate issuer. | 
| conditionsCondition array | List of status conditions to indicate the status of the CertificateIssuer. - Ready: Indicates that the CertificateIssuer is ready to use. | 
CertificateList
CertificateList represents a collection of certificates.
| Field | Description | 
|---|---|
| apiVersionstring | pki.security.gdc.goog/v1 | 
| kindstring | CertificateList | 
| metadataListMeta | Refer to Kubernetes API documentation for fields of metadata. | 
| itemsCertificate array | 
CertificatePrivateKey
Appears in: - CertificateConfig
| Field | Description | 
|---|---|
| algorithmPrivateKeyAlgorithm | Algorithm is the private key algorithm of the corresponding private key for this certificate. If provided, allowed values are either RSA,Ed25519orECDSAIfalgorithmis specified andsizeis not provided, key size of 384 will be used forECDSAkey algorithm and key size of 3072 will be used forRSAkey algorithm. key size is ignored when using theEd25519key algorithm. See github.com/cert-manager/cert-manager/pkg/apis/certmanager/v1/types_certificate.go for more information. | 
| sizeinteger | Size is the key bit size of the corresponding private key for this certificate. If algorithmis set toRSA, valid values are2048,3072,4096or8192, and will default to3072if not specified. Ifalgorithmis set toECDSA, valid values are256,384or521, and will default to384if not specified. Ifalgorithmis set toEd25519, Size is ignored. No other values are allowed. See github.com/cert-manager/cert-manager/pkg/apis/certmanager/v1/types_certificate.go for more information. | 
CertificateProfile
CertificateProfile defines the specification of the profile of an issued certificate.
Appears in: - CertificateAuthoritySpec
| Field | Description | 
|---|---|
| keyUsageKeyUsageBits array | Allowed key usages for certificates issued under this profile. | 
| extendedKeyUsageExtendedKeyUsageBits array | Allowed extended key usages for certificates issued under this profile. This is optional for SelfSignedCA and is required for both ManagedSubCA and ExternalCA. | 
CertificateRequest
CertificateRequest represents a request to issue certificate from the referenced CertificateAuthority.
All fields within the CertificateRequest's spec are immutable after creation.
Appears in: - CertificateRequestList
| Field | Description | 
|---|---|
| apiVersionstring | pki.security.gdc.goog/v1 | 
| kindstring | CertificateRequest | 
| metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | 
| specCertificateRequestSpec | |
| statusCertificateRequestStatus | 
CertificateRequestList
CertificateRequestList represents a collection of certiifcate requests.
| Field | Description | 
|---|---|
| apiVersionstring | pki.security.gdc.goog/v1 | 
| kindstring | CertificateRequestList | 
| metadataListMeta | Refer to Kubernetes API documentation for fields of metadata. | 
| itemsCertificateRequest array | 
CertificateRequestSpec
CertificateRequestSpec defines a request for the issuance of a certificate.
Appears in: - CertificateRequest
| Field | Description | 
|---|---|
| csrinteger array | Certificate Signing Request to sign using CA. | 
| certificateConfigCertificateConfig | certificate config that will be use to create the CSR. | 
| notBeforeTime | Validity start time of the certificate. If not set, we will use the current time of the request. | 
| notAfterTime | Validity end time of the certificate. If not set, we will use 90 days from the notBefore time as default. | 
| signedCertificateSecretstring | Name of the secret to store the signed certificate. | 
| certificateAuthorityRefCAReference | A reference to a CertificateAuthority which will sign the certificate. API type: - Group: pki.security.gdc.goog - Kind: CertificateAuthority | 
CertificateRequestStatus
Appears in: - CertificateRequest
| Field | Description | 
|---|---|
| conditionsCondition array | List of status conditions to indicate the status of a certificate to be issued. - PENDING: CSR are pending to be signed. - Ready: Indicates that the certificateRequest is fulfilled. | 
| autoGeneratedPrivateKeySecretReference | If no CSR is provided, an auto-generated private key will be used. optional | 
CertificateSpec
Appears in: - Certificate
| Field | Description | 
|---|---|
| issuerIssuerReference | A reference to the CertificateIssuer that will be used for the issuance of the certificate. If not set, a label named pki.security.gdc.goog/use-default-issuer: trueneeds to be set in order to issue the certificate using the default issuer. API type:   - Group: pki.security.gdc.goog   - Kind: CertificateIssuer | 
| commonNamestring | Requested common name X509 certificate subject attribute. It should have a length of 64 characters or fewer. For backward compatibility, the behaviour is as follows: If nil, we use the current behavior to set commonName as first DNSName if length is 64 characters or fewer. if empty string, don't set it. if it is set, ensure it is a part of the SANs. | 
| dnsNamesstring array | DNSNames is a list of fully-qualified host names to be set on the Certificate. | 
| ipAddressesstring array | IPAddresses is a list of IPAddress subjectAltNames to be set on the Certificate. | 
| durationDuration | The requested 'duration' (i.e. lifetime) of the Certificate. | 
| renewBeforeDuration | RenewBefore implies the rotation time before the certificate expires. | 
| secretConfigSecretConfig | Configuration of the Certificate secret. | 
| byoCertificateBYOCertificate | Contains the externally signed certificate | 
CertificateStatus
Appears in: - Certificate
| Field | Description | 
|---|---|
| conditionsCondition array | List of status conditions to indicate the status of the certificate. - Ready: Indicates that the certificate is ready to use. | 
| issuedByIssuerReference | A reference to the CertificateIssuer that is used for the issuance of the certificate. API type: - Group: pki.security.gdc.goog - Kind: CertificateIssuer | 
| byoCertStatusBYOCertStatus | BYOCertStatus specifies status options for byo-certificates mode. | 
| errorStatusErrorStatus | ErrorStatus contain a list of current errors and the timestamp this field gets updated. | 
ExtendedKeyUsageBits
Underlying type: string
ExtendedKeyUsageBits defines the different allowed extended key usages according to RFC 5280 4.2.1.12.
Many extended key usages have been defined by follow-up RFCs, and can be implemented as a later feature
if issuance of such certificates is needed, for cases such as certificates used for personal
authentication, code signing or IPSec.
Appears in: - CertificateProfile
ExternalCAConfig
Appears in: - CACertificateConfig
| Field | Description | 
|---|---|
| signedCertificateSignedCertificateConfig | Stores a signed certificate signed by external root CA. | 
ExternalCAStatus
Appears in: - CertificateAuthorityStatus
| Field | Description | 
|---|---|
| csrinteger array | A certificate signing request waiting to be signed by an external CA. | 
IssuerReference
IssuerReference represents an Issuer Reference. It has information to retrieve an issuer in any namespace.
Appears in: - CertificateSpec - CertificateStatus
| Field | Description | 
|---|---|
| namestring | Name is unique within a namespace to reference an issuer resource. | 
| namespacestring | Namespace defines the space within which the issuer name must be unique. | 
KeyUsageBits
Underlying type: string
KeyUsageBits defines the different allowed key usages according to RFC 5280 4.2.1.3. Note that
many of the key usages below are used for certificates outside the context of TLS, and the
implementation of setting non-TLS bits can be implemented as a later feature.
Appears in: - CertificateProfile
ManagedSubCAConfig
ManagedSubCAConfig defines the configuration for a SubCA CA certificate.
Appears in: - CACertificateConfig
| Field | Description | 
|---|---|
| certificateAuthorityRefCAReference | A reference to a CertificateAuthority which will sign the SubCA certificate. API type: - Group: pki.security.gdc.goog - Kind: CertificateAuthority | 
PrivateKeyAlgorithm
Underlying type: string
Appears in: - CertificatePrivateKey - PrivateKeyConfig
PrivateKeyConfig
PrivateKeyConfig defines the configuration of the certificate private key
Appears in: - SecretConfig
| Field | Description | 
|---|---|
| algorithmPrivateKeyAlgorithm | Algorithm is the private key algorithm of the corresponding private key for this certificate. If provided, allowed values are either RSA,Ed25519orECDSAIfalgorithmis specified andsizeis not provided, key size of 384 will be used forECDSAkey algorithm and key size of 3072 will be used forRSAkey algorithm. key size is ignored when using theEd25519key algorithm. | 
| sizeinteger | Size is the key bit size of the corresponding private key for this certificate. If algorithmis set toRSA, valid values are2048,3072,4096or8192, and will default to3072if not specified. Ifalgorithmis set toECDSA, valid values are256,384or521, and will default to384if not specified. Ifalgorithmis set toEd25519, Size is ignored. No other values are allowed. | 
SecretConfig
SecretConfig defines the configuration for the certificate secret.
Appears in: - CertificateAuthoritySpec - CertificateSpec
| Field | Description | 
|---|---|
| secretNamestring | The name of the Secret that will hold the private key and signed certificate. | 
| secretTemplateSecretTemplate | Defines annotations and labels to be copied to the Secret. | 
| privateKeyConfigPrivateKeyConfig | Options for the certificate private key | 
SecretTemplate
SecretTemplate defines the default labels and annotations to be copied
to the Kubernetes Secret resource named in SecretConfig.SecretName.
Appears in: - SecretConfig
| Field | Description | 
|---|---|
| annotationsobject (keys:string, values:string) | Annotations is a key value map to be copied to the target Kubernetes Secret. | 
| labelsobject (keys:string, values:string) | Labels is a key value map to be copied to the target Kubernetes Secret. | 
SelfSignedCAConfig
SelfSignedCAConfig defines the configuration for a Root CA certificate.
Appears in: - CACertificateConfig
SignedCertStatus
Appears in: - BYOCertStatus
| Field | Description | 
|---|---|
| conditionsCondition array | List of status conditions to indicate the status of BYO certificate. - Rejected: Indicates that the certificate does not match with the csr - Ready: Indicates that the certificate is ready to use. | 
SignedCertificateConfig
Appears in: - ExternalCAConfig
| Field | Description | 
|---|---|
| certificateinteger array | The PEM encoded x509 certificate uploaded by the customer. | 
| cainteger array | The PEM encoded x509 certificate of the signer CA used to sign the certificate. | 
SubjectConfig
Appears in: - CertificateConfig
| Field | Description | 
|---|---|
| commonNamestring | The common name of the Certificate. | 
| organizationstring | The organization of the Certificate. | 
| localitystring | The locality of the Certificate. | 
| statestring | The state of the Certificate. | 
| countrystring | The country of the Certificate. | 
| dnsNamesstring array | DNSNames is a list of dNSName subjectAltNames to be set on the Certificate. | 
| ipAddressesstring array | IPAddresses is a list of ipAddress subjectAltNames to be set on the Certificate. | 
| rfc822Namesstring array | RFC822Names is a list of rfc822Name subjectAltNames to be set on the Certificate. | 
| urisstring array | URIs is a list of uniformResourceIdentifier subjectAltNames to be set on the Certificate. |