description: Challenge is a type to represent a Challenge request with an
ACME server
type: object
required:
- metadata
properties:
apiVersion:
description: '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'
type: string
kind:
description: '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'
type: string
metadata:
type: object
spec:
type: object
required:
- authzURL
- dnsName
- issuerRef
- key
- solver
- token
- type
- url
properties:
authzURL:
description: AuthzURL is the URL to the ACME Authorization resource
that this challenge is a part of.
type: string
dnsName:
description: DNSName is the identifier that this challenge is for,
e.g. example.com. If the requested DNSName is a 'wildcard', this
field MUST be set to the non-wildcard domain, e.g. for `*.example.com`,
it must be `example.com`.
type: string
issuerRef:
description: IssuerRef references a properly configured ACME-type
Issuer which should be used to create this Challenge. If the Issuer
does not exist, processing will be retried. If the Issuer is not
an 'ACME' Issuer, an error will be returned and the Challenge will
be marked as failed.
type: object
required:
- name
properties:
group:
description: Group of the resource being referred to.
type: string
kind:
description: Kind of the resource being referred to.
type: string
name:
description: Name of the resource being referred to.
type: string
key:
description: 'Key is the ACME challenge key for this challenge For
HTTP01 challenges, this is the value that must be responded with
to complete the HTTP01 challenge in the format: `<private key JWK
thumbprint>.<key from acme server for challenge>`. For DNS01 challenges,
this is the base64 encoded SHA256 sum of the `<private key JWK thumbprint>.<key
from acme server for challenge>` text that must be set as the TXT
record content.'
type: string
solver:
description: Solver contains the domain solving configuration that
should be used to solve this challenge resource.
type: object
properties:
dns01:
description: Configures cert-manager to attempt to complete authorizations
by performing the DNS01 challenge flow.
type: object
properties:
acmedns:
description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
API to manage DNS01 challenge records.
type: object
required:
- accountSecretRef
- host
properties:
accountSecretRef:
description: A reference to a specific 'key' within a
Secret resource. In some instances, `key` is a required
field.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
host:
type: string
akamai:
description: Use the Akamai DNS zone management API to manage
DNS01 challenge records.
type: object
required:
- accessTokenSecretRef
- clientSecretSecretRef
- clientTokenSecretRef
- serviceConsumerDomain
properties:
accessTokenSecretRef:
description: A reference to a specific 'key' within a
Secret resource. In some instances, `key` is a required
field.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
clientSecretSecretRef:
description: A reference to a specific 'key' within a
Secret resource. In some instances, `key` is a required
field.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
clientTokenSecretRef:
description: A reference to a specific 'key' within a
Secret resource. In some instances, `key` is a required
field.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
serviceConsumerDomain:
type: string
azuredns:
description: Use the Microsoft Azure DNS API to manage DNS01
challenge records.
type: object
required:
- resourceGroupName
- subscriptionID
properties:
clientID:
description: if both this and ClientSecret are left unset
MSI will be used
type: string
clientSecretSecretRef:
description: if both this and ClientID are left unset
MSI will be used
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
environment:
type: string
enum:
- AzurePublicCloud
- AzureChinaCloud
- AzureGermanCloud
- AzureUSGovernmentCloud
hostedZoneName:
type: string
resourceGroupName:
type: string
subscriptionID:
type: string
tenantID:
description: when specifying ClientID and ClientSecret
then this field is also needed
type: string
clouddns:
description: Use the Google Cloud DNS API to manage DNS01
challenge records.
type: object
required:
- project
properties:
hostedZoneName:
description: HostedZoneName is an optional field that
tells cert-manager in which Cloud DNS zone the challenge
record has to be created. If left empty cert-manager
will automatically choose a zone.
type: string
project:
type: string
serviceAccountSecretRef:
description: A reference to a specific 'key' within a
Secret resource. In some instances, `key` is a required
field.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
cloudflare:
description: Use the Cloudflare API to manage DNS01 challenge
records.
type: object
properties:
apiKeySecretRef:
description: 'API key to use to authenticate with Cloudflare.
Note: using an API token to authenticate is now the
recommended method as it allows greater control of permissions.'
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
apiTokenSecretRef:
description: API token used to authenticate with Cloudflare.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
email:
description: Email of the account, only required when
using API key based authentication.
type: string
cnameStrategy:
description: CNAMEStrategy configures how the DNS01 provider
should handle CNAME records when found in DNS zones.
type: string
enum:
- None
- Follow
digitalocean:
description: Use the DigitalOcean DNS API to manage DNS01
challenge records.
type: object
required:
- tokenSecretRef
properties:
tokenSecretRef:
description: A reference to a specific 'key' within a
Secret resource. In some instances, `key` is a required
field.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
rfc2136:
description: Use RFC2136 ("Dynamic Updates in the Domain Name
System") (https://datatracker.ietf.org/doc/rfc2136/) to
manage DNS01 challenge records.
type: object
required:
- nameserver
properties:
nameserver:
description: The IP address or hostname of an authoritative
DNS server supporting RFC2136 in the form host:port.
If the host is an IPv6 address it must be enclosed in
square brackets (e.g [2001:db8::1]); port is optional.
This field is required.
type: string
tsigAlgorithm:
description: 'The TSIG Algorithm configured in the DNS
supporting RFC2136. Used only when ``tsigSecretSecretRef``
and ``tsigKeyName`` are defined. Supported values are
description: Optional service type for Kubernetes solver
service
type: string
selector:
description: Selector selects a set of DNSNames on the Certificate
resource that should be solved using this challenge solver.
If not specified, the solver will be treated as the 'default'
solver with the lowest priority, i.e. if any other solver has
a more specific match, it will be used instead.
type: object
properties:
dnsNames:
description: List of DNSNames that this solver will be used
to solve. If specified and a match is found, a dnsNames
selector will take precedence over a dnsZones selector.
If multiple solvers match with the same dnsNames value,
the solver with the most matching labels in matchLabels
will be selected. If neither has more matches, the solver
defined earlier in the list will be selected.
type: array
items:
type: string
dnsZones:
description: List of DNSZones that this solver will be used
to solve. The most specific DNS zone match specified here
will take precedence over other DNS zone matches, so a solver
specifying sys.example.com will be selected over one specifying
example.com for the domain www.sys.example.com. If multiple
solvers match with the same dnsZones value, the solver with
the most matching labels in matchLabels will be selected.
If neither has more matches, the solver defined earlier
in the list will be selected.
type: array
items:
type: string
matchLabels:
description: A label selector that is used to refine the set
of certificate's that this challenge solver will apply to.
type: object
additionalProperties:
type: string
token:
description: Token is the ACME challenge token for this challenge.
This is the raw value returned from the ACME server.
type: string
type:
description: Type is the type of ACME challenge this resource represents.
One of "http-01" or "dns-01".
type: string
enum:
- http-01
- dns-01
url:
description: URL is the URL of the ACME Challenge resource for this
challenge. This can be used to lookup details about the status of
this challenge.
type: string
wildcard:
description: Wildcard will be true if this challenge is for a wildcard
identifier, for example '*.example.com'.
type: boolean
status:
type: object
properties:
presented:
description: Presented will be set to true if the challenge values
for this challenge are currently 'presented'. This *does not* imply
the self check is passing. Only that the values have been 'submitted'
for the appropriate challenge mechanism (i.e. the DNS01 TXT record
has been presented, or the HTTP01 configuration has been configured).
type: boolean
processing:
description: Processing is used to denote whether this challenge should
be processed or not. This field will only be set to true by the
'scheduling' component. It will only be set to false by the 'challenges'
controller, after the challenge has reached a final state or timed
out. If this field is set to false, the challenge controller will
not take any more action.
type: boolean
reason:
description: Reason contains human readable information on why the
Challenge is in the current state.
type: string
state:
description: State contains the current 'state' of the challenge.
If not set, the state of the challenge is unknown.
type: string
enum:
- valid
- ready
- pending
- processing
- invalid
- expired
- errored
- name: v1alpha3
served: true
storage: false
"schema":
"openAPIV3Schema":
description: Challenge is a type to represent a Challenge request with an
ACME server
type: object
required:
- metadata
properties:
apiVersion:
description: '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'
type: string
kind:
description: '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'
type: string
metadata:
type: object
spec:
type: object
required:
- authzURL
- dnsName
- issuerRef
- key
- solver
- token
- type
- url
properties:
authzURL:
description: AuthzURL is the URL to the ACME Authorization resource
that this challenge is a part of.
type: string
dnsName:
description: DNSName is the identifier that this challenge is for,
e.g. example.com. If the requested DNSName is a 'wildcard', this
field MUST be set to the non-wildcard domain, e.g. for `*.example.com`,
it must be `example.com`.
type: string
issuerRef:
description: IssuerRef references a properly configured ACME-type
Issuer which should be used to create this Challenge. If the Issuer
does not exist, processing will be retried. If the Issuer is not
an 'ACME' Issuer, an error will be returned and the Challenge will
be marked as failed.
type: object
required:
- name
properties:
group:
description: Group of the resource being referred to.
type: string
kind:
description: Kind of the resource being referred to.
type: string
name:
description: Name of the resource being referred to.
type: string
key:
description: 'Key is the ACME challenge key for this challenge For
HTTP01 challenges, this is the value that must be responded with
to complete the HTTP01 challenge in the format: `<private key JWK
thumbprint>.<key from acme server for challenge>`. For DNS01 challenges,
this is the base64 encoded SHA256 sum of the `<private key JWK thumbprint>.<key
from acme server for challenge>` text that must be set as the TXT
record content.'
type: string
solver:
description: Solver contains the domain solving configuration that
should be used to solve this challenge resource.
type: object
properties:
dns01:
description: Configures cert-manager to attempt to complete authorizations
by performing the DNS01 challenge flow.
type: object
properties:
acmedns:
description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
API to manage DNS01 challenge records.
type: object
required:
- accountSecretRef
- host
properties:
accountSecretRef:
description: A reference to a specific 'key' within a
Secret resource. In some instances, `key` is a required
field.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
host:
type: string
akamai:
description: Use the Akamai DNS zone management API to manage
DNS01 challenge records.
type: object
required:
- accessTokenSecretRef
- clientSecretSecretRef
- clientTokenSecretRef
- serviceConsumerDomain
properties:
accessTokenSecretRef:
description: A reference to a specific 'key' within a
Secret resource. In some instances, `key` is a required
field.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
clientSecretSecretRef:
description: A reference to a specific 'key' within a
Secret resource. In some instances, `key` is a required
field.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
clientTokenSecretRef:
description: A reference to a specific 'key' within a
Secret resource. In some instances, `key` is a required
field.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
serviceConsumerDomain:
type: string
azuredns:
description: Use the Microsoft Azure DNS API to manage DNS01
challenge records.
type: object
required:
- resourceGroupName
- subscriptionID
properties:
clientID:
description: if both this and ClientSecret are left unset
MSI will be used
type: string
clientSecretSecretRef:
description: if both this and ClientID are left unset
MSI will be used
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
environment:
type: string
enum:
- AzurePublicCloud
- AzureChinaCloud
- AzureGermanCloud
- AzureUSGovernmentCloud
hostedZoneName:
type: string
resourceGroupName:
type: string
subscriptionID:
type: string
tenantID:
description: when specifying ClientID and ClientSecret
then this field is also needed
type: string
clouddns:
description: Use the Google Cloud DNS API to manage DNS01
challenge records.
type: object
required:
- project
properties:
hostedZoneName:
description: HostedZoneName is an optional field that
tells cert-manager in which Cloud DNS zone the challenge
record has to be created. If left empty cert-manager
will automatically choose a zone.
type: string
project:
type: string
serviceAccountSecretRef:
description: A reference to a specific 'key' within a
Secret resource. In some instances, `key` is a required
field.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
cloudflare:
description: Use the Cloudflare API to manage DNS01 challenge
records.
type: object
properties:
apiKeySecretRef:
description: 'API key to use to authenticate with Cloudflare.
Note: using an API token to authenticate is now the
recommended method as it allows greater control of permissions.'
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
apiTokenSecretRef:
description: API token used to authenticate with Cloudflare.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
email:
description: Email of the account, only required when
using API key based authentication.
type: string
cnameStrategy:
description: CNAMEStrategy configures how the DNS01 provider
should handle CNAME records when found in DNS zones.
type: string
enum:
- None
- Follow
digitalocean:
description: Use the DigitalOcean DNS API to manage DNS01
challenge records.
type: object
required:
- tokenSecretRef
properties:
tokenSecretRef:
description: A reference to a specific 'key' within a
Secret resource. In some instances, `key` is a required
field.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
rfc2136:
description: Use RFC2136 ("Dynamic Updates in the Domain Name
System") (https://datatracker.ietf.org/doc/rfc2136/) to
manage DNS01 challenge records.
type: object
required:
- nameserver
properties:
nameserver:
description: The IP address or hostname of an authoritative
DNS server supporting RFC2136 in the form host:port.
If the host is an IPv6 address it must be enclosed in
square brackets (e.g [2001:db8::1]); port is optional.
This field is required.
type: string
tsigAlgorithm:
description: 'The TSIG Algorithm configured in the DNS
supporting RFC2136. Used only when ``tsigSecretSecretRef``
and ``tsigKeyName`` are defined. Supported values are
description: Optional service type for Kubernetes solver
service
type: string
selector:
description: Selector selects a set of DNSNames on the Certificate
resource that should be solved using this challenge solver.
If not specified, the solver will be treated as the 'default'
solver with the lowest priority, i.e. if any other solver has
a more specific match, it will be used instead.
type: object
properties:
dnsNames:
description: List of DNSNames that this solver will be used
to solve. If specified and a match is found, a dnsNames
selector will take precedence over a dnsZones selector.
If multiple solvers match with the same dnsNames value,
the solver with the most matching labels in matchLabels
will be selected. If neither has more matches, the solver
defined earlier in the list will be selected.
type: array
items:
type: string
dnsZones:
description: List of DNSZones that this solver will be used
to solve. The most specific DNS zone match specified here
will take precedence over other DNS zone matches, so a solver
specifying sys.example.com will be selected over one specifying
example.com for the domain www.sys.example.com. If multiple
solvers match with the same dnsZones value, the solver with
the most matching labels in matchLabels will be selected.
If neither has more matches, the solver defined earlier
in the list will be selected.
type: array
items:
type: string
matchLabels:
description: A label selector that is used to refine the set
of certificate's that this challenge solver will apply to.
type: object
additionalProperties:
type: string
token:
description: Token is the ACME challenge token for this challenge.
This is the raw value returned from the ACME server.
type: string
type:
description: Type is the type of ACME challenge this resource represents.
One of "http-01" or "dns-01".
type: string
enum:
- http-01
- dns-01
url:
description: URL is the URL of the ACME Challenge resource for this
challenge. This can be used to lookup details about the status of
this challenge.
type: string
wildcard:
description: Wildcard will be true if this challenge is for a wildcard
identifier, for example '*.example.com'.
type: boolean
status:
type: object
properties:
presented:
description: Presented will be set to true if the challenge values
for this challenge are currently 'presented'. This *does not* imply
the self check is passing. Only that the values have been 'submitted'
for the appropriate challenge mechanism (i.e. the DNS01 TXT record
has been presented, or the HTTP01 configuration has been configured).
type: boolean
processing:
description: Processing is used to denote whether this challenge should
be processed or not. This field will only be set to true by the
'scheduling' component. It will only be set to false by the 'challenges'
controller, after the challenge has reached a final state or timed
out. If this field is set to false, the challenge controller will
not take any more action.
type: boolean
reason:
description: Reason contains human readable information on why the
Challenge is in the current state.
type: string
state:
description: State contains the current 'state' of the challenge.
If not set, the state of the challenge is unknown.
type: string
enum:
- valid
- ready
- pending
- processing
- invalid
- expired
- errored
- name: v1beta1
served: true
storage: false
"schema":
"openAPIV3Schema":
description: Challenge is a type to represent a Challenge request with an
ACME server
type: object
required:
- metadata
- spec
properties:
apiVersion:
description: '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'
type: string
kind:
description: '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'
type: string
metadata:
type: object
spec:
type: object
required:
- authorizationURL
- dnsName
- issuerRef
- key
- solver
- token
- type
- url
properties:
authorizationURL:
description: The URL to the ACME Authorization resource that this
challenge is a part of.
type: string
dnsName:
description: dnsName is the identifier that this challenge is for,
e.g. example.com. If the requested DNSName is a 'wildcard', this
field MUST be set to the non-wildcard domain, e.g. for `*.example.com`,
it must be `example.com`.
type: string
issuerRef:
description: References a properly configured ACME-type Issuer which
should be used to create this Challenge. If the Issuer does not
exist, processing will be retried. If the Issuer is not an 'ACME'
Issuer, an error will be returned and the Challenge will be marked
as failed.
type: object
required:
- name
properties:
group:
description: Group of the resource being referred to.
type: string
kind:
description: Kind of the resource being referred to.
type: string
name:
description: Name of the resource being referred to.
type: string
key:
description: 'The ACME challenge key for this challenge For HTTP01
challenges, this is the value that must be responded with to complete
the HTTP01 challenge in the format: `<private key JWK thumbprint>.<key
from acme server for challenge>`. For DNS01 challenges, this is
the base64 encoded SHA256 sum of the `<private key JWK thumbprint>.<key
from acme server for challenge>` text that must be set as the TXT
record content.'
type: string
solver:
description: Contains the domain solving configuration that should
be used to solve this challenge resource.
type: object
properties:
dns01:
description: Configures cert-manager to attempt to complete authorizations
by performing the DNS01 challenge flow.
type: object
properties:
acmeDNS:
description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
API to manage DNS01 challenge records.
type: object
required:
- accountSecretRef
- host
properties:
accountSecretRef:
description: A reference to a specific 'key' within a
Secret resource. In some instances, `key` is a required
field.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
host:
type: string
akamai:
description: Use the Akamai DNS zone management API to manage
DNS01 challenge records.
type: object
required:
- accessTokenSecretRef
- clientSecretSecretRef
- clientTokenSecretRef
- serviceConsumerDomain
properties:
accessTokenSecretRef:
description: A reference to a specific 'key' within a
Secret resource. In some instances, `key` is a required
field.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
clientSecretSecretRef:
description: A reference to a specific 'key' within a
Secret resource. In some instances, `key` is a required
field.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
clientTokenSecretRef:
description: A reference to a specific 'key' within a
Secret resource. In some instances, `key` is a required
field.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
serviceConsumerDomain:
type: string
azureDNS:
description: Use the Microsoft Azure DNS API to manage DNS01
challenge records.
type: object
required:
- resourceGroupName
- subscriptionID
properties:
clientID:
description: if both this and ClientSecret are left unset
MSI will be used
type: string
clientSecretSecretRef:
description: if both this and ClientID are left unset
MSI will be used
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
environment:
type: string
enum:
- AzurePublicCloud
- AzureChinaCloud
- AzureGermanCloud
- AzureUSGovernmentCloud
hostedZoneName:
type: string
resourceGroupName:
type: string
subscriptionID:
type: string
tenantID:
description: when specifying ClientID and ClientSecret
then this field is also needed
type: string
cloudDNS:
description: Use the Google Cloud DNS API to manage DNS01
challenge records.
type: object
required:
- project
properties:
hostedZoneName:
description: HostedZoneName is an optional field that
tells cert-manager in which Cloud DNS zone the challenge
record has to be created. If left empty cert-manager
will automatically choose a zone.
type: string
project:
type: string
serviceAccountSecretRef:
description: A reference to a specific 'key' within a
Secret resource. In some instances, `key` is a required
field.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
cloudflare:
description: Use the Cloudflare API to manage DNS01 challenge
records.
type: object
properties:
apiKeySecretRef:
description: 'API key to use to authenticate with Cloudflare.
Note: using an API token to authenticate is now the
recommended method as it allows greater control of permissions.'
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
apiTokenSecretRef:
description: API token used to authenticate with Cloudflare.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
email:
description: Email of the account, only required when
using API key based authentication.
type: string
cnameStrategy:
description: CNAMEStrategy configures how the DNS01 provider
should handle CNAME records when found in DNS zones.
type: string
enum:
- None
- Follow
digitalocean:
description: Use the DigitalOcean DNS API to manage DNS01
challenge records.
type: object
required:
- tokenSecretRef
properties:
tokenSecretRef:
description: A reference to a specific 'key' within a
Secret resource. In some instances, `key` is a required
field.
type: object
required:
- name
properties:
key:
description: The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type: string
name:
description: 'Name of the resource being referred
to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
rfc2136:
description: Use RFC2136 ("Dynamic Updates in the Domain Name
System") (https://datatracker.ietf.org/doc/rfc2136/) to
manage DNS01 challenge records.
type: object
required:
- nameserver
properties:
nameserver:
description: The IP address or hostname of an authoritative
DNS server supporting RFC2136 in the form host:port.
If the host is an IPv6 address it must be enclosed in
square brackets (e.g [2001:db8::1]); port is optional.
This field is required.
type: string
tsigAlgorithm:
description: 'The TSIG Algorithm configured in the DNS
supporting RFC2136. Used only when ``tsigSecretSecretRef``
and ``tsigKeyName`` are defined. Supported values are