CertificateRequest

Scope: Namespaced
Version: v1

A CertificateRequest is used to request a signed certificate from one of the configured issuers. All fields within the CertificateRequest’s spec are immutable after creation. A CertificateRequest will either succeed or fail, as denoted by its status.state field. A CertificateRequest is a one-shot resource, meaning it represents a single point in time request for a certificate and cannot be re-used.

  • apiVersion
    string

    APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

  • kind
    string

    Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

  • metadata
    object
  • spec
    object

    Required value

    Desired state of the CertificateRequest resource.

    • spec.duration
      string

      The requested ‘duration’ (i.e. lifetime) of the Certificate. This option may be ignored/overridden by some issuer types.

    • spec.extra
      object

      Extra contains extra attributes of the user that created the CertificateRequest. Populated by the cert-manager webhook on creation and immutable.

    • spec.groups
      array of strings

      Groups contains group membership of the user that created the CertificateRequest. Populated by the cert-manager webhook on creation and immutable.

    • spec.isCA
      boolean

      IsCA will request to mark the certificate as valid for certificate signing when submitting to the issuer. This will automatically add the cert sign usage to the list of usages.

    • spec.issuerRef
      object

      Required value

      IssuerRef is a reference to the issuer for this CertificateRequest. If the kind field is not set, or set to Issuer, an Issuer resource with the given name in the same namespace as the CertificateRequest will be used. If the kind field is set to ClusterIssuer, a ClusterIssuer with the provided name will be used. The name field in this stanza is required at all times. The group field refers to the API group of the issuer which defaults to cert-manager.io if empty.

      • spec.issuerRef.group
        string

        Group of the resource being referred to.

      • spec.issuerRef.kind
        string

        Kind of the resource being referred to.

      • spec.issuerRef.name
        string

        Required value

        Name of the resource being referred to.

    • spec.request
      string

      Required value

      The PEM-encoded x509 certificate signing request to be submitted to the CA for signing.

    • spec.uid
      string

      UID contains the uid of the user that created the CertificateRequest. Populated by the cert-manager webhook on creation and immutable.

    • spec.usages
      array of strings

      Usages is the set of x509 usages that are requested for the certificate. If usages are set they SHOULD be encoded inside the CSR spec Defaults to digital signature and key encipherment if not specified.

      • Element of the array
        string

        KeyUsage specifies valid usage contexts for keys. See: https://tools.ietf.org/html/rfc5280#section-4.2.1.3 https://tools.ietf.org/html/rfc5280#section-4.2.1.12 Valid KeyUsage values are as follows: “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”

        Allowed values: 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

    • spec.username
      string

      Username contains the name of the user that created the CertificateRequest. Populated by the cert-manager webhook on creation and immutable.