diff --git a/.spelling b/.spelling index 47c6c456d54..40cfd40f123 100644 --- a/.spelling +++ b/.spelling @@ -1545,3 +1545,20 @@ parentrefnamespace parentreffallback everping kodareef +apkatsikas +bitloi +figaw +gwapi +immanuwell +injectables +jabbrwcky +jnohlgard +ltwongaa +mateenali +onurmicoogullari +putongyong +samplewebhook +seanorama +Tardif +texasich +workqueue diff --git a/content/docs/cli/cainjector.md b/content/docs/cli/cainjector.md index 569fda749f2..8849190b236 100644 --- a/content/docs/cli/cainjector.md +++ b/content/docs/cli/cainjector.md @@ -25,9 +25,9 @@ Flags: --feature-gates mapStringBool A set of key=value pairs that describe feature gates for alpha/experimental features. Options are: AllAlpha=true|false (ALPHA - default=false) AllBeta=true|false (BETA - default=false) - CAInjectorMerging=true|false (BETA - default=true) ServerSideApply=true|false (ALPHA - default=false) -h, --help help for cainjector + --ignore-namespaces strings Comma-separated list of namespaces to ignore secrets from. Should not be used with --namespace. --kubeconfig string Paths to a kubeconfig. Only required if out-of-cluster. --leader-elect If true, cainjector will perform leader election between instances to ensure no more than one instance of cainjector operates at a time (default true) --leader-election-lease-duration duration The duration that non-leader candidates will wait after observing a leadership renewal until attempting to acquire leadership of a led but unrenewed leader slot. This is effectively the maximum duration that a leader can be stopped before it is replaced by another candidate. This is only applicable if leader election is enabled. (default 1m0s) diff --git a/content/docs/cli/controller.md b/content/docs/cli/controller.md index 06d6ff28cff..7ae65441082 100644 --- a/content/docs/cli/controller.md +++ b/content/docs/cli/controller.md @@ -14,6 +14,7 @@ Usage: controller [flags] Flags: + --acme-http01-solver-extra-labels mapStringString A set of key=value pairs for additional labels to apply to dynamically-created ACME HTTP01 solver resources (pods, services, ingresses, or Gateway API HTTPRoutes). The following ACME identity label keys are reserved and will be silently ignored: acme.cert-manager.io/http-domain, acme.cert-manager.io/http-token, acme.cert-manager.io/http01-solver. These labels can be overridden by per-Issuer podTemplate/ingressTemplate/GatewayHTTPRoute.Labels. --acme-http01-solver-image string The docker image to use to solve ACME HTTP01 challenges. You most likely will not need to change this parameter unless you are testing a new feature or developing cert-manager. (default "quay.io/jetstack/cert-manager-acmesolver:canary") --acme-http01-solver-nameservers strings A list of comma separated dns server endpoints used for ACME HTTP01 check requests. This should be a list containing host and port, for example 8.8.8.8:53,8.8.4.4:53 --acme-http01-solver-resource-limits-cpu string Defines the resource limits CPU size when spawning new ACME HTTP01 challenge solver pods. (default "100m") @@ -21,8 +22,10 @@ Flags: --acme-http01-solver-resource-request-cpu string Defines the resource request CPU size when spawning new ACME HTTP01 challenge solver pods. (default "10m") --acme-http01-solver-resource-request-memory string Defines the resource request Memory size when spawning new ACME HTTP01 challenge solver pods. (default "64Mi") --acme-http01-solver-run-as-non-root Defines the ability to run the http01 solver as root for troubleshooting issues (default true) + --acme-http01-solver-runtime-class-name string RuntimeClassName to apply to ACME HTTP01 solver pods --auto-certificate-annotations strings The annotation consumed by the ingress-shim controller to indicate an ingress is requesting a certificate (default [kubernetes.io/tls-acme]) - --certificate-request-minimum-backoff-duration duration Duration of the initial certificate request backoff when a certificate request fails. The backoff duration is exponentially increased based on consecutive failures, up to a maximum of 32 hours. (default 1h0m0s) + --certificate-request-maximum-backoff-duration duration Maximum duration to back off when a certificate request fails. The backoff delay starts at the minimum backoff duration and is exponentially increased with each consecutive failure, but will never exceed this maximum (default 32h). (default 32h0m0s) + --certificate-request-minimum-backoff-duration duration Minimum duration to back off when a certificate request fails (default 1h). The backoff delay starts at this value and is exponentially increased with each consecutive failure, up to the configured maximum backoff duration. (default 1h0m0s) --cluster-issuer-ambient-credentials Whether a cluster-issuer may make use of ambient credentials for issuers. 'Ambient Credentials' are credentials drawn from the environment, metadata services, or local files which are not explicitly configured in the ClusterIssuer API object. When this flag is enabled, the following sources for credentials are also used: AWS - All sources the Go SDK defaults to, notably including any EC2 IAM roles available via instance metadata. (default true) --cluster-resource-namespace string Namespace to store resources owned by cluster scoped resources such as ClusterIssuer in. This must be specified if ClusterIssuers are enabled. (default "kube-system") --concurrent-workers int The number of concurrent workers for each controller. (default 5) @@ -43,6 +46,7 @@ Flags: --extra-certificate-annotations strings Extra annotation to be added by the ingress-shim controller to certificate object --feature-gates mapStringBool A set of key=value pairs that describe feature gates for alpha/experimental features. Options are: ACMEHTTP01IngressPathTypeExact=true|false (BETA - default=true) + ACMEUseARI=true|false (ALPHA - default=false) AllAlpha=true|false (ALPHA - default=false) AllBeta=true|false (BETA - default=false) ExperimentalCertificateSigningRequestControllers=true|false (ALPHA - default=false) @@ -56,6 +60,7 @@ Flags: StableCertificateRequestName=true|false (BETA - default=true) UseCertificateRequestBasicConstraints=true|false (ALPHA - default=false) ValidateCAA=true|false (ALPHA - default=false) + --gateway-api-extra-protocols strings A comma-separated list of additional Gateway Listener protocol types that the Gateway API shim should treat as TLS-capable. By default, only HTTPS and TLS protocol types are processed. Each entry must exactly match the protocol string as it appears on the Gateway Listener, e.g. 'DTLS'. -h, --help help for controller --issuer-ambient-credentials Whether an issuer may make use of ambient credentials. 'Ambient Credentials' are credentials drawn from the environment, metadata services, or local files which are not explicitly configured in the Issuer API object. When this flag is enabled, the following sources for credentials are also used: AWS - All sources the Go SDK defaults to, notably including any EC2 IAM roles available via instance metadata. --kube-api-burst int the maximum burst queries-per-second of requests sent to the Kubernetes apiserver (default 50) diff --git a/content/docs/reference/api-docs.md b/content/docs/reference/api-docs.md index 703cba3960b..cbbd139c172 100644 --- a/content/docs/reference/api-docs.md +++ b/content/docs/reference/api-docs.md @@ -328,7 +328,7 @@ description: >-
Duration is the duration for the not after date for the requested certificate. this is set on order creation as pe the ACME spec.
+Duration is the duration for the not after date for the requested certificate. This is set on order creation as per the ACME spec.
Profile allows requesting a certificate profile from the ACME server. Supported profiles are listed by the server’s ACME directory URL.
replaces
+ Replaces is the ARI CertID (RFC 9773 §4.1) of the certificate that this Order is intended to replace. When set, cert-manager will include the “replaces” field on the newOrder request to the ACME server if and only if the server advertises ARI support in its directory. The CertID has the form “base64url(AKI).base64url(serial)” and is derived locally from the currently issued leaf certificate.
+Configures cert-manager to attempt to complete authorizations by performing the DNS01 challenge flow.
+waitInsteadOfSelfCheck
+ WaitInsteadOfSelfCheck, if set, skips cert-manager’s self-check and instead waits this long after presentation before asking the ACME server to validate the challenge.
+This is an advanced escape hatch for environments where cert-manager’s self-check cannot succeed from its own network or DNS viewpoint even though the ACME server can still validate successfully, for example due to split-horizon DNS or NAT hairpinning.
+A value of 0 skips the self-check and asks the ACME server to validate immediately after presentation, relying on the ACME server’s own validation retries (RFC 8555 section 8.2) to succeed once the challenge has propagated. A negative duration is rejected. Value must be in units accepted by Go time.ParseDuration https://golang.org/pkg/time/#ParseDuration, for example 30s or 2m.
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).
+Presented is true once cert-manager has configured the solver resources needed to expose this challenge’s validation material. For example, the DNS01 TXT record has been created, or the HTTP01 solver has been configured to serve the challenge token. This does not imply the self check is passing, that the ACME server has validated the challenge, or that cert-manager has already accepted the challenge with the ACME server.
+presentedAt
+ PresentedAt records when cert-manager first configured the solver resources for this challenge. This is used by the optional delay-based readiness logic.
Duration is the duration for the not after date for the requested certificate. this is set on order creation as pe the ACME spec.
+Duration is the duration for the not after date for the requested certificate. This is set on order creation as per the ACME spec.
Profile allows requesting a certificate profile from the ACME server. Supported profiles are listed by the server’s ACME directory URL.
replaces
+ Replaces is the ARI CertID (RFC 9773 §4.1) of the certificate that this Order is intended to replace. When set, cert-manager will include the “replaces” field on the newOrder request to the ACME server if and only if the server advertises ARI support in its directory. The CertID has the form “base64url(AKI).base64url(serial)” and is derived locally from the currently issued leaf certificate.
+If set, this limits the scope of cainjector to a single namespace. If set, cainjector will not update resources with certificates outside of the configured namespace.
+ignoreNamespaces
+ Comma-separated list of namespaces to ignore secrets from. Should not be used with –namespace.
+leaderElectionConfig
@@ -3301,6 +3361,19 @@ description: >-
renewBefore derived from the renewBeforePercentage and duration fields is 5 minutes. Cannot be set if the renewBefore field is set.
renewal
+ renewal allows configuration of how your certificate is renewed. If the policy mentioned is RenewBefore then the controller respects renewBefore and renewBeforePercentage.
dnsNames
@@ -3893,6 +3966,43 @@ description: >-
(Appears on: CertificateACMEARIStatus)
+ +| Field | +Description | +
|---|---|
+ start
+ + + Kubernetes meta/v1.Time + + |
+
+ Start is the start of the suggested renewal window. + |
+
+ end
+ + + Kubernetes meta/v1.Time + + |
+
+ End is the end of the suggested renewal window. + |
+
(Appears on: IssuerConfig)
@@ -3949,6 +4059,106 @@ description: >- +(Appears on: CertificateACMEStatus)
+ +| Field | +Description | +
|---|---|
+ suggestedWindow
+ + + ACMERenewalWindow + + |
+
+ (Optional)
+ SuggestedWindow is the suggested renewal window as returned by the ACME server in accordance with RFC 9773. + |
+
+ explanationURL
+ + string + |
+
+ (Optional)
+ ExplanationURL is a human-readable URL that may explain why the suggested window has its current value. + |
+
+ lastChecked
+ + + Kubernetes meta/v1.Time + + |
+
+ (Optional)
+ LastChecked is the time at which the ACME server was last checked for renewal information. + |
+
+ nextCheck
+ + + Kubernetes meta/v1.Time + + |
+
+ (Optional)
+ NextCheck is the time at which the ACME server will next be checked for renewal information. + |
+
+ lastError
+ + string + |
+
+ (Optional)
+ LastError is the last error encountered when checking the ACME server for renewal information, if any. + |
+
(Appears on: CertificateStatus)
+ +| Field | +Description | +
|---|---|
+ ari
+ + + CertificateACMEARIStatus + + |
+
+ (Optional)
+ ARI stores the ACME Renewal Information that is fetched from the ACME server in accordance with RFC 9773. This is only populated if the ARI feature gate is enabled. + |
+
(Appears on: CertificateSpec)
(Appears on: CertificateSpec)
+ +| Field | +Description | +
|---|---|
+ policy
+ + + CertificateRenewalPolicy + + |
+
+
|
+
+ windows
+ + + []CertificateRenewalWindows + + |
+
+ (Optional)
+
|
+
string alias) (Appears on: CertificateRenewal)
+ +| Value | +Description | +
|---|---|
|
+ "Disabled" + |
+ + |
|
+ "RenewBefore" + |
+ + |
(Appears on: CertificateRenewal)
+CertificateRenewalWindows is the definition for renewal windows
+| Field | +Description | +
|---|---|
+ timezone
+ + string + |
+
+ (Optional)
+
|
+
+ windowDuration
+ + + Kubernetes meta/v1.Duration + + |
+
+
|
+
+ cron
+ + string + |
+
+
+ | | | | | | | | | day of the week (0–6) (Sunday to Saturday; | | | month (1–12) 7 is also Sunday on some systems) | | day of the month (1–31) | hour (0–23) minute (0–59) + |
+
(Appears on: CertificateRequestStatus)
renewBefore derived from the renewBeforePercentage and duration fields is 5 minutes. Cannot be set if the renewBefore field is set.
+ renewal
+ renewal allows configuration of how your certificate is renewed. If the policy mentioned is RenewBefore then the controller respects renewBefore and renewBeforePercentage.
dnsNames
@@ -5005,6 +5341,19 @@ description: >-
The number of continuous failed issuance attempts up till now. This field gets removed (if set) on a successful issuance and gets set to 1 if unset and an issuance has failed. If an issuance has failed, the delay till the next issuance will be calculated using formula time.Hour * 2 ^ (failedIssuanceAttempts - 1).
acme
+ ACME stores information that is fetched from the ACME CA server.
+Profile specifies the key and certificate encryption algorithms and the HMAC algorithm used to create the PKCS12 keystore. Default value is LegacyRC2 for backward compatibility.
If provided, allowed values are:
- LegacyRC2: Deprecated. Not supported by default in OpenSSL 3 or Java 20. LegacyDES: Less secure algorithm. Use this option for maximal compatibility. Modern2023: Secure algorithm. Use this option in case you have to always use secure algorithms (e.g., because of company policy). Please note that the security of the algorithm is not that important in reality, because the unencrypted certificate and private key are also stored in the Secret.
LegacyRC2: Deprecated. Not supported by default in OpenSSL 3 or Java 20. LegacyDES: Less secure algorithm. Use this option for maximal compatibility. Modern2023: Secure algorithm. Use this option in case you have to always use secure algorithms (e.g., because of company policy). Please note that the security of the algorithm is not that important in reality, because the unencrypted certificate and private key are also stored in the Secret. Modern2026: Encodes PKCS#12 files using algorithms that are considered modern as of 2026. Private keys and certificates are encrypted using PBES2 with PBKDF2-HMAC-SHA-256 and AES-256-CBC. The MAC algorithm is PBMAC1 with PBKDF2-HMAC-SHA-256 and HMAC-SHA256. Files produced with this profile can be read by OpenSSL 3.4.0 and higher, Java 26 and higher, or with Java using compatible versions of Bouncy Castle. Meets FIPS 140-3 requirements.
see: https://pkg.go.dev/software.sslmate.com/src/go-pkcs12#Modern2023
"Modern2026"
+see: https://pkg.go.dev/software.sslmate.com/src/go-pkcs12#Modern2026
+string alias) (Appears on: VaultKubernetesAuth)
+(Appears on: VaultAWSAuth, VaultKubernetesAuth)
ServiceAccountRef is a service account used by cert-manager to request a token. By default two audiences are included: the address of the Vault server as specified on the issuer, and a generated audience taking the form of vault://namespace-name/issuer-name for an Issuer and vault://issuer-name for a ClusterIssuer. The expiration of the token is also set by cert-manager to 10 minutes.
(Appears on: VaultAuth)
+VaultAWSAuth authenticates with Vault using AWS IAM authentication. See https://www.vaultproject.io/docs/auth/aws for more details.
+| Field | +Description | +
|---|---|
+ mountPath
+ + string + |
+
+ (Optional)
+ The Vault mountPath here is the mount path to use when authenticating with Vault. For example, setting a value to |
+
+ role
+ + string + |
+
+ A required field containing the Vault Role to assume when authenticating. + |
+
+ region
+ + string + |
+
+ (Optional)
+ The AWS region to use for authentication. If not specified, the region will be determined from AWS_REGION or AWS_DEFAULT_REGION environment variables, falling back to “us-east-1” if not set. + |
+
+ serviceAccountRef
+ + + ServiceAccountRef + + |
+
+ (Optional)
+ A reference to a service account that will be used to request a web identity token for IRSA (IAM Roles for Service Accounts) authentication. + |
+
+ iamRoleArn
+ + string + |
+
+ (Optional)
+ The ARN of the AWS IAM role to assume using the Kubernetes service account token. Required when using IRSA (serviceAccountRef is set). This role must have a trust policy that allows the OIDC provider to assume it. + |
+
+ vaultHeaderValue
+ + string + |
+
+ (Optional)
+ The Vault header value to include in the STS signing request. This is used to prevent replay attacks. + |
+
(Appears on: VaultAuth)
(Appears on: VaultIssuer)
VaultAuth is configuration used to authenticate with a Vault server. The order of precedence is [tokenSecretRef, appRole, clientCertificate or kubernetes].
VaultAuth is configuration used to authenticate with a Vault server. The order of precedence is [tokenSecretRef, appRole, clientCertificate, kubernetes, aws].
+ aws
+ + + VaultAWSAuth + + |
+
+ (Optional)
+ AWS authenticates with Vault using AWS IAM authentication. This allows authentication using IAM roles for service accounts (IRSA), EKS Pod Identity (PIA), or ambient credentials (EC2 instance profiles, ECS task role). + |
+
Cloud specifies the CyberArk Certificate Manager SaaS configuration settings. Only one of CyberArk Certificate Manager may be specified.
+ngts
+ NGTS specifies Palo Alto Networks Next Generation Trust Services (NGTS) configuration using OAuth 2.0 Client Credentials. Only one of tpp, cloud, or ngts may be specified.
+(Appears on: VenafiIssuer)
+VenafiNGTS defines connection configuration for the Palo Alto Networks Next Generation Trust Services (NGTS) platform using OAuth 2.0 Client Credentials.
+| Field | +Description | +
|---|---|
+ url
+ + string + |
+
+ (Optional)
+ URL is the base URL for the NGTS API endpoint. Defaults to “https://api.strata.paloaltonetworks.com/ngts” if not set. + |
+
+ tokenEndpoint
+ + string + |
+
+ (Optional)
+ TokenEndpoint is the OAuth 2.0 token endpoint URL used to obtain access tokens, for example “https://auth.apps.paloaltonetworks.com/oauth2/access_token”. Defaults to “https://auth.apps.paloaltonetworks.com/oauth2/access_token” if not set. + |
+
+ tsgID
+ + string + |
+
+ TSGID is the Tenant Service Group ID used to scope the OAuth 2.0 access token, for example “1234567890”. The tsg_id: prefix is added automatically. This field is required. + |
+
+ credentialsRef
+ + github.com/cert-manager/cert-manager/pkg/apis/meta/v1.LocalObjectReference + |
+
+ CredentialsRef is a reference to a Kubernetes Secret containing the OAuth 2.0 Client ID and Client Secret. The secret must contain the keys ‘client-id’ and ‘client-secret’. + |
+
Defines the ability to run the http01 solver as root for troubleshooting issues
+solverRuntimeClassName
+ Defines the runtime class used when spawning new ACME HTTP01 challenge solver pods.
+solverNameservers
@@ -6617,6 +7149,16 @@ description: >-
A list of comma separated dns server endpoints used for ACME HTTP01 check requests. This should be a list containing host and port, for example [“8.8.8.8:53”,“8.8.4.4:53”] Allows specifying a list of custom nameservers to perform HTTP01 checks on.
solverExtraLabels
+ Extra labels applied to all dynamically-created ACME HTTP01 solver resources (pods, services, ingresses, or Gateway API HTTPRoutes). Applied in addition to the standard ACME challenge identification labels. The following ACME identity label keys are reserved and will be silently ignored: acme.cert-manager.io/http-domain, acme.cert-manager.io/http-token, acme.cert-manager.io/http01-solver.
+Whether gateway API integration is enabled within cert-manager. The ExperimentalGatewayAPISupport feature gate must also be enabled (default as of 1.15).
-Deprecated: use GatewayAPIConfig.Enabled instead.
+Deprecated: use GatewayAPIConfig.Enabled instead.
Specifies whether the ListenerSet controller should be enabled with-in cert-manager. This along with ListenerSet feature gate enabled allows the user to consume ListenerSet for self-service TLS.
-Deprecated: use GatewayAPIConfig.EnableListenerSet instead.
-gatewayAPI
- gatewayAPI configures Gateway API integration options for cert-manager.
+Deprecated: use GatewayAPIConfig.EnableListenerSet instead.
pemSizeLimitsConfig configures the maximum sizes for PEM-encoded data
gatewayAPI,omitzero
+ gatewayAPI configures the behaviour of the Gateway API integration
+certificateRequestMinimumBackoffDuration
@@ -6933,13 +7475,23 @@ description: >-
github.com/cert-manager/cert-manager/pkg/apis/config/shared/v1alpha1.Duration
CertificateRequestMinimumBackoffDuration configures the initial backoff duration when a certificate request fails. This duration is exponentially increased (up to a maximum of 32 hours) based on the number of consecutive failures.
+certificateRequestMinimumBackoffDuration configures the minimum backoff duration when a certificate request fails (default 1h). The backoff delay starts at this value and is exponentially increased with each consecutive failure, up to the configured maximum backoff duration.
+certificateRequestMaximumBackoffDuration
+ certificateRequestMaximumBackoffDuration configures the maximum backoff duration when a certificate request fails. The backoff delay starts at the minimum backoff duration and is exponentially increased with each consecutive failure, but will never exceed this maximum (default 32h).
(Appears on: ControllerConfiguration)
+(Appears on: ControllerConfiguration)
|
- ExtraProtocols is a list of additional Gateway Listener protocol types that the Gateway API shim should treat as TLS-capable. By default, only HTTPS and TLS protocol types are processed. +ExtraProtocols is a list of additional Gateway Listener protocol types that the Gateway API shim should treat as TLS-capable. By default, only HTTPS and TLS protocol types are processed. Each entry must exactly match the protocol string as it appears on the Gateway Listener, e.g. “DTLS”. |
@@ -7293,4 +7845,4 @@ description: >-
Generated with gen-crd-api-reference-docs on git commit 0bca8fd.
Generated with gen-crd-api-reference-docs on git commit ae67234.