Packages:
Package v1 contains resources for external-secrets
Resource Types:(Appears on: AWSProvider)
AWSAuth tells the controller how to do authentication with aws. Only one of secretRef or jwt can be specified. if none is specified the controller will load credentials using the aws sdk defaults.
| Field | Description |
|---|---|
secretRef |
AWSAuthSecretRef
(Optional) |
jwt |
AWSJWTAuth
(Optional) |
(Appears on: AWSAuth)
AWSAuthSecretRef holds secret references for AWS credentials both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
| Field | Description |
|---|---|
accessKeyIDSecretRef |
External Secrets meta/v1.SecretKeySelector
The AccessKeyID is used for authentication |
secretAccessKeySecretRef |
External Secrets meta/v1.SecretKeySelector
The SecretAccessKey is used for authentication |
sessionTokenSecretRefThe SessionToken used for authentication This must be defined if AccessKeyID and SecretAccessKey are temporary credentials see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
(Appears on: AWSAuth)
Authenticate against AWS using service account tokens.
| Field | Description |
|---|---|
serviceAccountRef |
External Secrets meta/v1.ServiceAccountSelector
(Appears on: SecretStoreProvider)
AWSProvider configures a store to sync secrets with AWS.
| Field | Description |
|---|---|
service |
AWSServiceType
Service defines which service should be used to fetch the secrets |
auth |
AWSAuth
(Optional)
Auth defines the information necessary to authenticate against AWS if not set aws sdk will infer credentials from your environment see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials |
roleRole is a Role ARN which the provider will assume
regionAWS Region to be used for the provider
additionalRolesAdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
externalIDAWS External ID set on assumed IAM roles
sessionTagsAWS STS assume role session tags
secretsManagerSecretsManager defines how the provider behaves when interacting with AWS SecretsManager
transitiveTagKeysAWS STS assume role transitive session tags. Required when multiple rules are used with the provider
prefixPrefix adds a prefix to all retrieved values.
string alias)(Appears on: AWSProvider)
AWSServiceType is a enum that defines the service/API that is used to fetch the secrets.
| Value | Description |
|---|---|
"ParameterStore" |
AWSServiceParameterStore is the AWS SystemsManager ParameterStore service. see: https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-parameter-store.html |
"SecretsManager" |
AWSServiceSecretsManager is the AWS SecretsManager service. see: https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html |
(Appears on: AkeylessProvider)
| Field | Description |
|---|---|
secretRef |
AkeylessAuthSecretRef
(Optional)
Reference to a Secret that contains the details to authenticate with Akeyless. |
kubernetesAuth |
AkeylessKubernetesAuth
(Optional)
Kubernetes authenticates with Akeyless by passing the ServiceAccount token stored in the named Secret resource. |
(Appears on: AkeylessAuth)
AkeylessAuthSecretRef AKEYLESS_ACCESS_TYPE_PARAM: AZURE_OBJ_ID OR GCP_AUDIENCE OR ACCESS_KEY OR KUB_CONFIG_NAME.
| Field | Description |
|---|---|
accessID |
External Secrets meta/v1.SecretKeySelector
The SecretAccessID is used for authentication |
accessType |
External Secrets meta/v1.SecretKeySelector
accessTypeParam(Appears on: AkeylessAuth)
Authenticate with Kubernetes ServiceAccount token stored.
| Field | Description |
|---|---|
accessID |
string
the Akeyless Kubernetes auth-method access-id |
k8sConfName |
string
Kubernetes-auth configuration name in Akeyless-Gateway |
serviceAccountRefOptional service account field containing the name of a kubernetes ServiceAccount. If the service account is specified, the service account secret token JWT will be used for authenticating with Akeyless. If the service account selector is not supplied, the secretRef will be used instead.
secretRefOptional secret field containing a Kubernetes ServiceAccount JWT used
for authenticating with Akeyless. If a name is specified without a key,
token is the default. If one is not specified, the one bound to
the controller will be used.
(Appears on: SecretStoreProvider)
AkeylessProvider Configures an store to sync secrets using Akeyless KV.
| Field | Description |
|---|---|
akeylessGWApiURL |
string
Akeyless GW API Url from which the secrets to be fetched from. |
authSecretRef |
AkeylessAuth
Auth configures how the operator authenticates with Akeyless. |
caBundlePEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates are used to validate the TLS connection.
caProviderThe provider for the CA bundle to use to validate Akeyless Gateway certificate.
(Appears on: AlibabaProvider)
AlibabaAuth contains a secretRef for credentials.
| Field | Description |
|---|---|
secretRef |
AlibabaAuthSecretRef
(Optional) |
rrsa |
AlibabaRRSAAuth
(Optional) |
(Appears on: AlibabaAuth)
AlibabaAuthSecretRef holds secret references for Alibaba credentials.
| Field | Description |
|---|---|
accessKeyIDSecretRef |
External Secrets meta/v1.SecretKeySelector
The AccessKeyID is used for authentication |
accessKeySecretSecretRef |
External Secrets meta/v1.SecretKeySelector
The AccessKeySecret is used for authentication |
(Appears on: SecretStoreProvider)
AlibabaProvider configures a store to sync secrets using the Alibaba Secret Manager provider.
| Field | Description |
|---|---|
auth |
AlibabaAuth
|
regionID |
string
Alibaba Region to be used for the provider |
(Appears on: AlibabaAuth)
Authenticate against Alibaba using RRSA.
| Field | Description |
|---|---|
oidcProviderArn |
string
|
oidcTokenFilePath |
string
roleArnsessionName(Appears on: WebhookProvider)
AuthorizationProtocol contains the protocol-specific configuration
| Field | Description |
|---|---|
ntlm |
NTLMProtocol
(Optional)
NTLMProtocol configures the store to use NTLM for auth |
(Appears on: InfisicalAuth)
| Field | Description |
|---|---|
identityId |
External Secrets meta/v1.SecretKeySelector
(Appears on: GCPWorkloadIdentityFederation)
AwsCredentialsConfig holds the region and the Secret reference which contains the AWS credentials.
| Field | Description |
|---|---|
region |
string
region is for configuring the AWS region to be used. |
awsCredentialsSecretRef |
SecretReference
awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials. Secret should be created with below names for keys - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services. |
(Appears on: InfisicalAuth)
| Field | Description |
|---|---|
identityId |
External Secrets meta/v1.SecretKeySelector
|
resource |
External Secrets meta/v1.SecretKeySelector
(Optional) |
string alias)(Appears on: AzureKVProvider)
AuthType describes how to authenticate to the Azure Keyvault Only one of the following auth types may be specified. If none of the following auth type is specified, the default one is ServicePrincipal.
| Value | Description |
|---|---|
"ManagedIdentity" |
Using Managed Identity to authenticate. Used with aad-pod-identity installed in the cluster. |
"ServicePrincipal" |
Using service principal to authenticate, which needs a tenantId, a clientId and a clientSecret. |
"WorkloadIdentity" |
Using Workload Identity service accounts to authenticate. |
(Appears on: AzureKVProvider)
AzureCustomCloudConfig specifies custom cloud configuration for private Azure environments IMPORTANT: Custom cloud configuration is ONLY supported when UseAzureSDK is true. The legacy go-autorest SDK does not support custom cloud endpoints.
| Field | Description |
|---|---|
activeDirectoryEndpoint |
string
ActiveDirectoryEndpoint is the AAD endpoint for authentication Required when using custom cloud configuration |
keyVaultEndpoint |
string
(Optional)
KeyVaultEndpoint is the Key Vault service endpoint |
keyVaultDNSSuffixKeyVaultDNSSuffix is the DNS suffix for Key Vault URLs
resourceManagerEndpointResourceManagerEndpoint is the Azure Resource Manager endpoint
string alias)(Appears on: AzureKVProvider)
AzureEnvironmentType specifies the Azure cloud environment endpoints to use for connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152 PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud, AzureStackCloud
| Value | Description |
|---|---|
"AzureStackCloud" |
|
"ChinaCloud" |
|
"GermanCloud" |
|
"PublicCloud" |
|
"USGovernmentCloud" |
(Appears on: AzureKVProvider)
Configuration used to authenticate with Azure.
| Field | Description |
|---|---|
clientId |
External Secrets meta/v1.SecretKeySelector
(Optional)
The Azure clientId of the service principle or managed identity used for authentication. |
tenantId |
External Secrets meta/v1.SecretKeySelector
(Optional)
The Azure tenantId of the managed identity used for authentication. |
clientSecretThe Azure ClientSecret of the service principle used for authentication.
clientCertificateThe Azure ClientCertificate of the service principle used for authentication.
(Appears on: SecretStoreProvider)
Configures an store to sync secrets using Azure KV.
| Field | Description |
|---|---|
authType |
AzureAuthType
(Optional)
Auth type defines how to authenticate to the keyvault service. Valid values are: - “ServicePrincipal” (default): Using a service principal (tenantId, clientId, clientSecret) - “ManagedIdentity”: Using Managed Identity assigned to the pod (see aad-pod-identity) |
vaultUrl |
string
Vault Url from which the secrets to be fetched from. |
tenantIdTenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
environmentTypeEnvironmentType specifies the Azure cloud environment endpoints to use for connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152 PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud, AzureStackCloud Use AzureStackCloud when you need to configure custom Azure Stack Hub or Azure Stack Edge endpoints.
authSecretRefAuth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
serviceAccountRefServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity.
identityIdIf multiple Managed Identity is assigned to the pod, you can select the one to be used
useAzureSDKUseAzureSDK enables the use of the new Azure SDK for Go (azcore-based) instead of the legacy go-autorest SDK. This is experimental and may have behavioral differences. Defaults to false (legacy SDK).
customCloudConfigCustomCloudConfig defines custom Azure Stack Hub or Azure Stack Edge endpoints. Required when EnvironmentType is AzureStackCloud. IMPORTANT: This feature REQUIRES UseAzureSDK to be set to true. Custom cloud configuration is not supported with the legacy go-autorest SDK.
(Appears on: BeyondtrustAuth)
| Field | Description |
|---|---|
value |
string
(Optional)
Value can be specified directly to set a value without using a secret. |
secretRef |
External Secrets meta/v1.SecretKeySelector
(Optional)
SecretRef references a key in a secret that will be used as value. |
(Appears on: BeyondtrustProvider)
Configures a store to sync secrets using BeyondTrust Password Safe.
| Field | Description |
|---|---|
apiKey |
BeyondTrustProviderSecretRef
APIKey If not provided then ClientID/ClientSecret become required. |
clientId |
BeyondTrustProviderSecretRef
ClientID is the API OAuth Client ID. |
clientSecretClientSecret is the API OAuth Client Secret.
certificateCertificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
certificateKeyCertificate private key (key.pem). For use when authenticating with an OAuth client Id
(Appears on: SecretStoreProvider)
| Field | Description |
|---|---|
auth |
BeyondtrustAuth
Auth configures how the operator authenticates with Beyondtrust. |
server |
BeyondtrustServer
Auth configures how API server works. |
(Appears on: BeyondtrustProvider)
Configures a store to sync secrets using BeyondTrust Password Safe.
| Field | Description |
|---|---|
apiUrl |
string
|
apiVersion |
string
retrievalTypeThe secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
separatorA character that separates the folder names.
verifyCAclientTimeOutSecondsTimeout specifies a time limit for requests made by this Client. The timeout includes connection time, any redirects, and reading the response body. Defaults to 45 seconds.
(Appears on: BitwardenSecretsManagerProvider)
BitwardenSecretsManagerAuth contains the ref to the secret that contains the machine account token.
| Field | Description |
|---|---|
secretRef |
BitwardenSecretsManagerSecretRef
(Appears on: SecretStoreProvider)
BitwardenSecretsManagerProvider configures a store to sync secrets with a Bitwarden Secrets Manager instance.
| Field | Description |
|---|---|
apiURL |
string
|
identityURL |
string
bitwardenServerSDKURLcaBundleBase64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack can be performed.
caProvidersee: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider
organizationIDOrganizationID determines which organization this secret store manages.
projectIDProjectID determines which project this secret store manages.
authAuth configures how secret-manager authenticates with a bitwarden machine account instance. Make sure that the token being used has permissions on the given secret.
(Appears on: BitwardenSecretsManagerAuth)
BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
| Field | Description |
|---|---|
credentials |
External Secrets meta/v1.SecretKeySelector
AccessToken used for the bitwarden instance. |
(Appears on: FetchingPolicy)
ByID configures the provider to interpret the data.secretKey.remoteRef.key field in ExternalSecret as secret ID.
(Appears on: FetchingPolicy)
ByName configures the provider to interpret the data.secretKey.remoteRef.key field in ExternalSecret as secret name.
| Field | Description |
|---|---|
folderID |
string
The folder to fetch secrets from |
(Appears on: AkeylessProvider, BitwardenSecretsManagerProvider, ConjurProvider, GitlabProvider, KubernetesServer, VaultProvider)
Used to provide custom certificate authority (CA) certificates for a secret store. The CAProvider points to a Secret or ConfigMap resource that contains a PEM-encoded certificate.
| Field | Description |
|---|---|
type |
CAProviderType
The type of provider to use such as “Secret”, or “ConfigMap”. |
name |
string
The name of the object located at the provider type. |
keyThe key where the CA certificate can be found in the Secret or ConfigMap.
namespaceThe namespace the Provider type is in. Can only be defined when used in a ClusterSecretStore.
string alias)(Appears on: CAProvider)
| Value | Description |
|---|---|
"ConfigMap" |
|
"Secret" |
(Appears on: CloudruSMProvider)
CSMAuth contains a secretRef for credentials.
| Field | Description |
|---|---|
secretRef |
CSMAuthSecretRef
(Optional) |
(Appears on: CSMAuth)
CSMAuthSecretRef holds secret references for Cloud.ru credentials.
| Field | Description |
|---|---|
accessKeyIDSecretRef |
External Secrets meta/v1.SecretKeySelector
The AccessKeyID is used for authentication |
accessKeySecretSecretRef |
External Secrets meta/v1.SecretKeySelector
The AccessKeySecret is used for authentication |
(Appears on: KubernetesAuth)
| Field | Description |
|---|---|
clientCert |
External Secrets meta/v1.SecretKeySelector
|
clientKey |
External Secrets meta/v1.SecretKeySelector
(Appears on: ChefProvider)
ChefAuth contains a secretRef for credentials.
| Field | Description |
|---|---|
secretRef |
ChefAuthSecretRef
(Appears on: ChefAuth)
ChefAuthSecretRef holds secret references for chef server login credentials.
| Field | Description |
|---|---|
privateKeySecretRef |
External Secrets meta/v1.SecretKeySelector
SecretKey is the Signing Key in PEM format, used for authentication. |
(Appears on: SecretStoreProvider)
ChefProvider configures a store to sync secrets using basic chef server connection credentials.
| Field | Description |
|---|---|
auth |
ChefAuth
Auth defines the information necessary to authenticate against chef Server |
username |
string
UserName should be the user ID on the chef server |
serverUrlServerURL is the chef server URL used to connect to. If using orgs you should include your org in the url and terminate the url with a “/”
(Appears on: SecretStoreProvider)
CloudruSMProvider configures a store to sync secrets using the Cloud.ru Secret Manager provider.
| Field | Description |
|---|---|
auth |
CSMAuth
|
projectID |
string
ProjectID is the project, which the secrets are stored in. |
ClusterExternalSecret is the Schema for the clusterexternalsecrets API.
| Field | Description |
|---|---|
metadata |
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the
metadata field.
|
spec |
ClusterExternalSecretSpec
|
externalSecretName |
string
(Optional)
The name of the external secrets to be created. Defaults to the name of the ClusterExternalSecret |
externalSecretMetadata |
ExternalSecretMetadata
(Optional)
The metadata of the external secrets to be created |
namespaceSelectorThe labels to select by to find the Namespaces to create the ExternalSecrets in. Deprecated: Use NamespaceSelectors instead.
namespaceSelectorsA list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
namespacesChoose namespaces by name. This field is ORed with anything that NamespaceSelectors ends up choosing. Deprecated: Use NamespaceSelectors instead.
refreshTimeThe time in which the controller should reconcile its objects and recheck namespaces for labels.
statusstring alias)(Appears on: ClusterExternalSecretStatusCondition)
| Value | Description |
|---|---|
"Ready" |
(Appears on: ClusterExternalSecretStatus)
ClusterExternalSecretNamespaceFailure represents a failed namespace deployment and it’s reason.
| Field | Description |
|---|---|
namespace |
string
Namespace is the namespace that failed when trying to apply an ExternalSecret |
reason |
string
(Optional)
Reason is why the ExternalSecret failed to apply to the namespace |
(Appears on: ClusterExternalSecret)
ClusterExternalSecretSpec defines the desired state of ClusterExternalSecret.
| Field | Description |
|---|---|
externalSecretSpec |
ExternalSecretSpec
The spec for the ExternalSecrets to be created |
externalSecretName |
string
(Optional)
The name of the external secrets to be created. Defaults to the name of the ClusterExternalSecret |
externalSecretMetadataThe metadata of the external secrets to be created
namespaceSelectorThe labels to select by to find the Namespaces to create the ExternalSecrets in. Deprecated: Use NamespaceSelectors instead.
namespaceSelectorsA list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
namespacesChoose namespaces by name. This field is ORed with anything that NamespaceSelectors ends up choosing. Deprecated: Use NamespaceSelectors instead.
refreshTimeThe time in which the controller should reconcile its objects and recheck namespaces for labels.
(Appears on: ClusterExternalSecret)
ClusterExternalSecretStatus defines the observed state of ClusterExternalSecret.
| Field | Description |
|---|---|
externalSecretName |
string
ExternalSecretName is the name of the ExternalSecrets created by the ClusterExternalSecret |
failedNamespaces |
[]ClusterExternalSecretNamespaceFailure
(Optional)
Failed namespaces are the namespaces that failed to apply an ExternalSecret |
provisionedNamespacesProvisionedNamespaces are the namespaces where the ClusterExternalSecret has secrets
conditions(Appears on: ClusterExternalSecretStatus)
| Field | Description |
|---|---|
type |
ClusterExternalSecretConditionType
|
status |
Kubernetes core/v1.ConditionStatus
message
ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of storeRef fields.
| Field | Description |
|---|---|
metadata |
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the
metadata field.
|
spec |
SecretStoreSpec
|
provider |
SecretStoreProvider
Used to configure the provider. Only one provider may be set |
retrySettings |
SecretStoreRetrySettings
(Optional)
Used to configure http retries if failed |
refreshIntervalUsed to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
conditionsUsed to constraint a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore
status(Appears on: SecretStoreSpec)
ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in for a ClusterSecretStore instance.
| Field | Description |
|---|---|
namespaceSelector |
Kubernetes meta/v1.LabelSelector
(Optional)
Choose namespace using a labelSelector |
namespaces |
[]string
(Optional)
Choose namespaces by name |
namespaceRegexesChoose namespaces by using regex matching
(Appears on: GCPWorkloadIdentityFederation)
ConfigMapReference holds the details of a configmap.
| Field | Description |
|---|---|
name |
string
name of the configmap. |
namespace |
string
namespace in which the configmap exists. If empty, configmap will looked up in local namespace. |
keykey name holding the external account credential config.
(Appears on: ConjurAuth)
| Field | Description |
|---|---|
account |
string
Account is the Conjur organization account name. |
userRef |
External Secrets meta/v1.SecretKeySelector
A reference to a specific ‘key’ containing the Conjur username
within a Secret resource. In some instances, |
apiKeyRefA reference to a specific ‘key’ containing the Conjur API key
within a Secret resource. In some instances, key is a required field.
(Appears on: ConjurProvider)
| Field | Description |
|---|---|
apikey |
ConjurAPIKey
(Optional)
Authenticates with Conjur using an API key. |
jwt |
ConjurJWT
(Optional)
Jwt enables JWT authentication using Kubernetes service account tokens. |
(Appears on: ConjurAuth)
| Field | Description |
|---|---|
account |
string
Account is the Conjur organization account name. |
serviceID |
string
The conjur authn jwt webservice id |
hostIdOptional HostID for JWT authentication. This may be used depending on how the Conjur JWT authenticator policy is configured.
secretRefOptional SecretRef that refers to a key in a Secret resource containing JWT token to authenticate with Conjur using the JWT authentication method.
serviceAccountRefOptional ServiceAccountRef specifies the Kubernetes service account for which to request
a token for with the TokenRequest API.
(Appears on: SecretStoreProvider)
| Field | Description |
|---|---|
url |
string
URL is the endpoint of the Conjur instance. |
caBundle |
string
(Optional)
CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate. |
caProviderUsed to provide custom certificate authority (CA) certificates for a secret store. The CAProvider points to a Secret or ConfigMap resource that contains a PEM-encoded certificate.
authDefines authentication settings for connecting to Conjur.
(Appears on: SecretStoreProvider)
See https://github.com/DelineaXPM/dsv-sdk-go/blob/main/vault/vault.go.
| Field | Description |
|---|---|
clientId |
DelineaProviderSecretRef
ClientID is the non-secret part of the credential. |
clientSecret |
DelineaProviderSecretRef
ClientSecret is the secret part of the credential. |
tenantTenant is the chosen hostname / site name.
urlTemplateURLTemplate If unset, defaults to “https://%s.secretsvaultcloud.%s/v1/%s%s”.
tldTLD is based on the server location that was chosen during provisioning. If unset, defaults to “com”.
(Appears on: DelineaProvider)
| Field | Description |
|---|---|
value |
string
(Optional)
Value can be specified directly to set a value without using a secret. |
secretRef |
External Secrets meta/v1.SecretKeySelector
(Optional)
SecretRef references a key in a secret that will be used as value. |
(Appears on: Device42Provider)
| Field | Description |
|---|---|
secretRef |
Device42SecretRef
(Appears on: SecretStoreProvider)
Device42Provider configures a store to sync secrets with a Device42 instance.
| Field | Description |
|---|---|
host |
string
URL configures the Device42 instance URL. |
auth |
Device42Auth
Auth configures how secret-manager authenticates with a Device42 instance. |
(Appears on: Device42Auth)
| Field | Description |
|---|---|
credentials |
External Secrets meta/v1.SecretKeySelector
(Optional)
Username / Password is used for authentication. |
(Appears on: DopplerProvider)
| Field | Description |
|---|---|
secretRef |
DopplerAuthSecretRef
(Appears on: DopplerAuth)
| Field | Description |
|---|---|
dopplerToken |
External Secrets meta/v1.SecretKeySelector
The DopplerToken is used for authentication. See https://docs.doppler.com/reference/api#authentication for auth token types. The Key attribute defaults to dopplerToken if not specified. |
(Appears on: SecretStoreProvider)
DopplerProvider configures a store to sync secrets using the Doppler provider. Project and Config are required if not using a Service Token.
| Field | Description |
|---|---|
auth |
DopplerAuth
Auth configures how the Operator authenticates with the Doppler API |
project |
string
(Optional)
Doppler project (required if not using a Service Token) |
configDoppler config (required if not using a Service Token)
nameTransformerEnvironment variable compatible name transforms that change secret names to a different format
formatFormat enables the downloading of secrets as a file (string)
ExternalSecret is the Schema for the external-secrets API.
| Field | Description |
|---|---|
metadata |
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the
metadata field.
|
spec |
ExternalSecretSpec
|
target |
ExternalSecretTarget
(Optional) |
refreshPolicy |
ExternalSecretRefreshPolicy
(Optional)
RefreshPolicy determines how the ExternalSecret should be refreshed: - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval. No periodic updates occur if refreshInterval is 0. - OnChange: Only synchronizes the Secret when the ExternalSecret’s metadata or specification changes |
refreshIntervalRefreshInterval is the amount of time before the values are read again from the SecretStore provider, specified as Golang Duration strings. Valid time units are “ns”, “us” (or “µs”), “ms”, “s”, “m”, “h” Example values: “1h”, “2h30m”, “10s” May be set to zero to fetch and create it once. Defaults to 1h.
dataData defines the connection between the Kubernetes Secret keys and the Provider data
dataFromDataFrom is used to fetch all properties from a specific Provider data If multiple entries are specified, the Secret keys are merged in the specified order
statusstring alias)(Appears on: ExternalSecretStatusCondition)
| Value | Description |
|---|---|
"Deleted" |
|
"Ready" |
string alias)(Appears on: ExternalSecretDataRemoteRef, ExternalSecretFind)
| Value | Description |
|---|---|
"Default" |
|
"Unicode" |
string alias)(Appears on: ExternalSecretTarget)
ExternalSecretCreationPolicy defines rules on how to create the resulting Secret.
| Value | Description |
|---|---|
"Merge" |
Merge does not create the Secret, but merges the data fields to the Secret. |
"None" |
None does not create a Secret (future use with injector). |
"Orphan" |
Orphan creates the Secret and does not set the ownerReference. I.e. it will be orphaned after the deletion of the ExternalSecret. |
"Owner" |
Owner creates the Secret and sets .metadata.ownerReferences to the ExternalSecret resource. |
(Appears on: ExternalSecretSpec)
ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.) and the Provider data.
| Field | Description |
|---|---|
secretKey |
string
The key in the Kubernetes Secret to store the value. |
remoteRef |
ExternalSecretDataRemoteRef
RemoteRef points to the remote secret and defines which secret (version/property/..) to fetch. |
sourceRefSourceRef allows you to override the source from which the value will be pulled.
(Appears on: ExternalSecretSpec)
| Field | Description |
|---|---|
extract |
ExternalSecretDataRemoteRef
(Optional)
Used to extract multiple key/value pairs from one secret Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef. |
find |
ExternalSecretFind
(Optional)
Used to find secrets based on tags or regular expressions Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef. |
rewriteUsed to rewrite secret Keys after getting them from the secret Provider Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
sourceRefSourceRef points to a store or generator which contains secret values ready to use. Use this in combination with Extract or Find pull values out of a specific SecretStore. When sourceRef points to a generator Extract or Find is not supported. The generator returns a static map of values
(Appears on: ExternalSecretData, ExternalSecretDataFromRemoteRef)
ExternalSecretDataRemoteRef defines Provider data location.
| Field | Description |
|---|---|
key |
string
Key is the key used in the Provider, mandatory |
metadataPolicy |
ExternalSecretMetadataPolicy
(Optional)
Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None |
propertyUsed to select a specific property of the Provider value (if a map), if supported
versionUsed to select a specific version of the Provider value, if supported
conversionStrategyUsed to define a conversion Strategy
decodingStrategyUsed to define a decoding Strategy
string alias)(Appears on: ExternalSecretDataRemoteRef, ExternalSecretFind)
| Value | Description |
|---|---|
"Auto" |
|
"Base64" |
|
"Base64URL" |
|
"None" |
string alias)(Appears on: ExternalSecretTarget)
ExternalSecretDeletionPolicy defines rules on how to delete the resulting Secret.
| Value | Description |
|---|---|
"Delete" |
Delete deletes the secret if all provider secrets are deleted. If a secret gets deleted on the provider side and is not accessible anymore this is not considered an error and the ExternalSecret does not go into SecretSyncedError status. |
"Merge" |
Merge removes keys in the secret, but not the secret itself. If a secret gets deleted on the provider side and is not accessible anymore this is not considered an error and the ExternalSecret does not go into SecretSyncedError status. |
"Retain" |
Retain will retain the secret if all provider secrets have been deleted. If a provider secret does not exist the ExternalSecret gets into the SecretSyncedError status. |
(Appears on: ExternalSecretDataFromRemoteRef)
| Field | Description |
|---|---|
path |
string
(Optional)
A root path to start the find operations. |
name |
FindName
(Optional)
Finds secrets based on the name. |
tagsFind secrets based on tags.
conversionStrategyUsed to define a conversion Strategy
decodingStrategyUsed to define a decoding Strategy
(Appears on: ClusterExternalSecretSpec)
ExternalSecretMetadata defines metadata fields for the ExternalSecret generated by the ClusterExternalSecret.
| Field | Description |
|---|---|
annotations |
map[string]string
(Optional) |
labels |
map[string]string
(Optional) |
string alias)(Appears on: ExternalSecretDataRemoteRef)
| Value | Description |
|---|---|
"Fetch" |
|
"None" |
string alias)(Appears on: ExternalSecretSpec)
| Value | Description |
|---|---|
"CreatedOnce" |
|
"OnChange" |
|
"Periodic" |
(Appears on: ExternalSecretDataFromRemoteRef)
| Field | Description |
|---|---|
merge |
ExternalSecretRewriteMerge
(Optional)
Used to merge key/values in one single Secret The resulting key will contain all values from the specified secrets |
regexp |
ExternalSecretRewriteRegexp
(Optional)
Used to rewrite with regular expressions. The resulting key will be the output of a regexp.ReplaceAll operation. |
transformUsed to apply string transformation on the secrets. The resulting key will be the output of the template applied by the operation.
(Appears on: ExternalSecretRewrite)
| Field | Description |
|---|---|
into |
string
(Optional)
Used to define the target key of the merge operation. Required if strategy is JSON. Ignored otherwise. |
priority |
[]string
(Optional)
Used to define key priority in conflict resolution. |
priorityPolicyUsed to define the policy when a key in the priority list does not exist in the input.
conflictPolicyUsed to define the policy to use in conflict resolution.
strategyUsed to define the strategy to use in the merge operation.
string alias)(Appears on: ExternalSecretRewriteMerge)
| Value | Description |
|---|---|
"Error" |
|
"Ignore" |
string alias)(Appears on: ExternalSecretRewriteMerge)
| Value | Description |
|---|---|
"IgnoreNotFound" |
|
"Strict" |
string alias)(Appears on: ExternalSecretRewriteMerge)
| Value | Description |
|---|---|
"Extract" |
|
"JSON" |
(Appears on: ExternalSecretRewrite)
| Field | Description |
|---|---|
source |
string
Used to define the regular expression of a re.Compiler. |
target |
string
Used to define the target pattern of a ReplaceAll operation. |
(Appears on: ExternalSecretRewrite)
| Field | Description |
|---|---|
template |
string
Used to define the template to apply on the secret name.
|
(Appears on: ClusterExternalSecretSpec, ExternalSecret)
ExternalSecretSpec defines the desired state of ExternalSecret.
| Field | Description |
|---|---|
secretStoreRef |
SecretStoreRef
(Optional) |
target |
ExternalSecretTarget
(Optional) |
refreshPolicyRefreshPolicy determines how the ExternalSecret should be refreshed: - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval. No periodic updates occur if refreshInterval is 0. - OnChange: Only synchronizes the Secret when the ExternalSecret’s metadata or specification changes
refreshIntervalRefreshInterval is the amount of time before the values are read again from the SecretStore provider, specified as Golang Duration strings. Valid time units are “ns”, “us” (or “µs”), “ms”, “s”, “m”, “h” Example values: “1h”, “2h30m”, “10s” May be set to zero to fetch and create it once. Defaults to 1h.
dataData defines the connection between the Kubernetes Secret keys and the Provider data
dataFromDataFrom is used to fetch all properties from a specific Provider data If multiple entries are specified, the Secret keys are merged in the specified order
(Appears on: ExternalSecret)
| Field | Description |
|---|---|
refreshTime |
Kubernetes meta/v1.Time
refreshTime is the time and date the external secret was fetched and the target secret updated |
syncedResourceVersion |
string
SyncedResourceVersion keeps track of the last synced version |
conditionsbindingBinding represents a servicebinding.io Provisioned Service reference to the secret
(Appears on: ExternalSecretStatus)
| Field | Description |
|---|---|
type |
ExternalSecretConditionType
|
status |
Kubernetes core/v1.ConditionStatus
reasonmessagelastTransitionTime(Appears on: ExternalSecretSpec)
ExternalSecretTarget defines the Kubernetes Secret to be created There can be only one target per ExternalSecret.
| Field | Description |
|---|---|
name |
string
(Optional)
The name of the Secret resource to be managed. Defaults to the .metadata.name of the ExternalSecret resource |
creationPolicy |
ExternalSecretCreationPolicy
(Optional)
CreationPolicy defines rules on how to create the resulting Secret. Defaults to “Owner” |
deletionPolicyDeletionPolicy defines rules on how to delete the resulting Secret. Defaults to “Retain”
templateTemplate defines a blueprint for the created Secret resource.
immutableImmutable defines if the final secret will be immutable
(Appears on: ExternalSecretTarget)
ExternalSecretTemplate defines a blueprint for the created Secret resource. we can not use native corev1.Secret, it will have empty ObjectMeta values: https://github.com/kubernetes-sigs/controller-tools/issues/448
| Field | Description |
|---|---|
type |
Kubernetes core/v1.SecretType
(Optional) |
engineVersion |
TemplateEngineVersion
EngineVersion specifies the template engine version that should be used to compile/execute the template specified in .data and .templateFrom[]. |
metadatamergePolicydatatemplateFrom(Appears on: ExternalSecretTemplate)
ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
| Field | Description |
|---|---|
annotations |
map[string]string
(Optional) |
labels |
map[string]string
(Optional) |
finalizers
(Appears on: SecretStoreProvider)
FakeProvider configures a fake provider that returns static values.
| Field | Description |
|---|---|
data |
[]FakeProviderData
|
validationResult |
ValidationResult
(Appears on: FakeProvider)
| Field | Description |
|---|---|
key |
string
|
value |
string
version(Appears on: YandexCertificateManagerProvider, YandexLockboxProvider)
| Field | Description |
|---|---|
byID |
ByID
|
byName |
ByName
(Appears on: ExternalSecretFind)
| Field | Description |
|---|---|
regexp |
string
(Optional)
Finds secrets base |
(Appears on: SecretStoreProvider)
| Field | Description |
|---|---|
apiUrl |
string
APIURL is the URL of SDKMS API. Defaults to |
apiKey |
FortanixProviderSecretRef
APIKey is the API token to access SDKMS Applications. |
(Appears on: FortanixProvider)
| Field | Description |
|---|---|
secretRef |
External Secrets meta/v1.SecretKeySelector
SecretRef is a reference to a secret containing the SDKMS API Key. |
(Appears on: GCPSMProvider)
| Field | Description |
|---|---|
secretRef |
GCPSMAuthSecretRef
(Optional) |
workloadIdentity |
GCPWorkloadIdentity
(Optional) |
workloadIdentityFederation(Appears on: GCPSMAuth)
| Field | Description |
|---|---|
secretAccessKeySecretRef |
External Secrets meta/v1.SecretKeySelector
(Optional)
The SecretAccessKey is used for authentication |
(Appears on: SecretStoreProvider)
GCPSMProvider Configures a store to sync secrets using the GCP Secret Manager provider.
| Field | Description |
|---|---|
auth |
GCPSMAuth
(Optional)
Auth defines the information necessary to authenticate against GCP |
projectID |
string
ProjectID project where secret is located |
locationLocation optionally defines a location for a secret
secretVersionSelectionPolicySecretVersionSelectionPolicy specifies how the provider selects a secret version when “latest” is disabled or destroyed. Possible values are: - LatestOrFail: the provider always uses “latest”, or fails if that version is disabled/destroyed. - LatestOrFetch: the provider falls back to fetching the latest version if the version is DESTROYED or DISABLED
(Appears on: GCPSMAuth)
| Field | Description |
|---|---|
serviceAccountRef |
External Secrets meta/v1.ServiceAccountSelector
|
clusterLocation |
string
(Optional)
ClusterLocation is the location of the cluster If not specified, it fetches information from the metadata server |
clusterNameClusterName is the name of the cluster If not specified, it fetches information from the metadata server
clusterProjectIDClusterProjectID is the project ID of the cluster If not specified, it fetches information from the metadata server
(Appears on: GCPSMAuth)
GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
| Field | Description |
|---|---|
credConfig |
ConfigMapReference
credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead serviceAccountRef must be used by providing operators service account details. |
serviceAccountRef |
External Secrets meta/v1.ServiceAccountSelector
serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens, when Kubernetes is configured as provider in workload identity pool. |
awsSecurityCredentialsawsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token, when using the AWS metadata server is not an option.
audienceaudience is the Secure Token Service (STS) audience which contains the resource name for the workload identity pool and the provider identifier in that pool. If specified, Audience found in the external account credential config will be overridden with the configured value. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
externalTokenEndpointexternalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the credential_source.url in the provided credConfig. This field is merely to double-check the external token source URL is having the expected value.
(Appears on: InfisicalAuth)
| Field | Description |
|---|---|
identityId |
External Secrets meta/v1.SecretKeySelector
|
serviceAccountKeyFilePath |
External Secrets meta/v1.SecretKeySelector
(Appears on: InfisicalAuth)
| Field | Description |
|---|---|
identityId |
External Secrets meta/v1.SecretKeySelector
(Appears on: StoreGeneratorSourceRef, StoreSourceRef)
GeneratorRef points to a generator custom resource.
| Field | Description |
|---|---|
apiVersion |
string
Specify the apiVersion of the generator resource |
kind |
string
Specify the Kind of the generator resource |
nameSpecify the name of the generator resource
GenericStore is a common interface for interacting with ClusterSecretStore or a namespaced SecretStore.
(Appears on: GithubProvider)
| Field | Description |
|---|---|
privateKey |
External Secrets meta/v1.SecretKeySelector
(Appears on: SecretStoreProvider)
Configures a store to push secrets to Github Actions.
| Field | Description |
|---|---|
url |
string
URL configures the Github instance URL. Defaults to https://github.com/. |
uploadURL |
string
(Optional)
Upload URL for enterprise instances. Default to URL. |
authauth configures how secret-manager authenticates with a Github instance.
appIDappID specifies the Github APP that will be used to authenticate the client
installationIDinstallationID specifies the Github APP installation that will be used to authenticate the client
organizationorganization will be used to fetch secrets from the Github organization
repositoryrepository will be used to fetch secrets from the Github repository within an organization
environmentenvironment will be used to fetch secrets from a particular environment within a github repository
(Appears on: GitlabProvider)
| Field | Description |
|---|---|
SecretRef |
GitlabSecretRef
(Appears on: SecretStoreProvider)
Configures a store to sync secrets with a GitLab instance.
| Field | Description |
|---|---|
url |
string
URL configures the GitLab instance URL. Defaults to https://gitlab.com/. |
auth |
GitlabAuth
Auth configures how secret-manager authenticates with a GitLab instance. |
projectIDProjectID specifies a project where secrets are located.
inheritFromGroupsInheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
groupIDsGroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
environmentEnvironment environment_scope of gitlab CI/CD variables (Please see https://docs.gitlab.com/ee/ci/environments/#create-a-static-environment on how to create environments)
caBundleBase64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack can be performed.
caProvidersee: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider
(Appears on: GitlabAuth)
| Field | Description |
|---|---|
accessToken |
External Secrets meta/v1.SecretKeySelector
AccessToken is used for authentication. |
(Appears on: IBMProvider)
| Field | Description |
|---|---|
secretRef |
IBMAuthSecretRef
|
containerAuth |
IBMAuthContainerAuth
(Appears on: IBMAuth)
IBM Container-based auth with IAM Trusted Profile.
| Field | Description |
|---|---|
profile |
string
the IBM Trusted Profile |
tokenLocation |
string
Location the token is mounted on the pod |
iamEndpoint(Appears on: IBMAuth)
| Field | Description |
|---|---|
secretApiKeySecretRef |
External Secrets meta/v1.SecretKeySelector
The SecretAccessKey is used for authentication |
(Appears on: SecretStoreProvider)
Configures an store to sync secrets using a IBM Cloud Secrets Manager backend.
| Field | Description |
|---|---|
auth |
IBMAuth
Auth configures how secret-manager authenticates with the IBM secrets manager. |
serviceUrl |
string
ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance |
(Appears on: InfisicalProvider)
| Field | Description |
|---|---|
universalAuthCredentials |
UniversalAuthCredentials
(Optional) |
azureAuthCredentials |
AzureAuthCredentials
(Optional) |
gcpIdTokenAuthCredentialsgcpIamAuthCredentialsjwtAuthCredentialsldapAuthCredentialsociAuthCredentialskubernetesAuthCredentialsawsAuthCredentialstokenAuthCredentials(Appears on: SecretStoreProvider)
InfisicalProvider configures a store to sync secrets using the Infisical provider.
| Field | Description |
|---|---|
auth |
InfisicalAuth
Auth configures how the Operator authenticates with the Infisical API |
secretsScope |
MachineIdentityScopeInWorkspace
SecretsScope defines the scope of the secrets within the workspace |
hostAPIHostAPI specifies the base URL of the Infisical API. If not provided, it defaults to “https://app.infisical.com/api”.
(Appears on: OnePasswordSDKProvider)
IntegrationInfo specifies the name and version of the integration built using the 1Password Go SDK.
| Field | Description |
|---|---|
name |
string
Name defaults to “1Password SDK”. |
version |
string
Version defaults to “v1.0.0”. |
(Appears on: InfisicalAuth)
| Field | Description |
|---|---|
identityId |
External Secrets meta/v1.SecretKeySelector
|
jwt |
External Secrets meta/v1.SecretKeySelector
(Appears on: SecretStoreProvider)
KeeperSecurityProvider Configures a store to sync secrets using Keeper Security.
| Field | Description |
|---|---|
authRef |
External Secrets meta/v1.SecretKeySelector
|
folderID |
string
(Appears on: KubernetesProvider)
| Field | Description |
|---|---|
cert |
CertAuth
(Optional)
has both clientCert and clientKey as secretKeySelector |
token |
TokenAuth
(Optional)
use static token to authenticate with |
serviceAccountpoints to a service account that should be used for authentication
(Appears on: InfisicalAuth)
| Field | Description |
|---|---|
identityId |
External Secrets meta/v1.SecretKeySelector
|
serviceAccountTokenPath |
External Secrets meta/v1.SecretKeySelector
(Optional) |
(Appears on: SecretStoreProvider)
Configures a store to sync secrets with a Kubernetes instance.
| Field | Description |
|---|---|
server |
KubernetesServer
(Optional)
configures the Kubernetes server Address. |
auth |
KubernetesAuth
(Optional)
Auth configures how secret-manager authenticates with a Kubernetes instance. |
authRefA reference to a secret that contains the auth information.
remoteNamespaceRemote namespace to fetch the secrets from
(Appears on: KubernetesProvider)
| Field | Description |
|---|---|
url |
string
(Optional)
configures the Kubernetes server Address. |
caBundle |
[]byte
(Optional)
CABundle is a base64-encoded CA certificate |
caProvidersee: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider
(Appears on: InfisicalAuth)
| Field | Description |
|---|---|
identityId |
External Secrets meta/v1.SecretKeySelector
|
ldapPassword |
External Secrets meta/v1.SecretKeySelector
ldapUsername(Appears on: InfisicalProvider)
| Field | Description |
|---|---|
secretsPath |
string
(Optional)
SecretsPath specifies the path to the secrets within the workspace. Defaults to “/” if not provided. |
recursive |
bool
(Optional)
Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided. |
environmentSlugEnvironmentSlug is the required slug identifier for the environment.
projectSlugProjectSlug is the required slug identifier for the project.
expandSecretReferencesExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
bool alias)
| Value | Description |
|---|---|
true |
|
false |
(Appears on: AuthorizationProtocol)
NTLMProtocol contains the NTLM-specific configuration.
| Field | Description |
|---|---|
usernameSecret |
External Secrets meta/v1.SecretKeySelector
|
passwordSecret |
External Secrets meta/v1.SecretKeySelector
(Appears on: NgrokProvider)
| Field | Description |
|---|---|
apiKey |
NgrokProviderSecretRef
(Optional)
APIKey is the API Key used to authenticate with ngrok. See https://ngrok.com/docs/api/#authentication |
(Appears on: SecretStoreProvider)
NgrokProvider configures a store to sync secrets with a ngrok vault to use in traffic policies. See: https://ngrok.com/blog-post/secrets-for-traffic-policy
| Field | Description |
|---|---|
apiUrl |
string
APIURL is the URL of the ngrok API. |
auth |
NgrokAuth
Auth configures how the ngrok provider authenticates with the ngrok API. |
vaultVault configures the ngrok vault to sync secrets with.
(Appears on: NgrokAuth)
| Field | Description |
|---|---|
secretRef |
External Secrets meta/v1.SecretKeySelector
(Optional)
SecretRef is a reference to a secret containing the ngrok API key. |
(Appears on: NgrokProvider)
| Field | Description |
|---|---|
name |
string
Name is the name of the ngrok vault to sync secrets with. |
NoSecretError shall be returned when a GetSecret can not find the desired secret. This is used for deletionPolicy.
NotModifiedError to signal that the webhook received no changes, and it should just return without doing anything.
(Appears on: InfisicalAuth)
| Field | Description |
|---|---|
identityId |
External Secrets meta/v1.SecretKeySelector
|
privateKey |
External Secrets meta/v1.SecretKeySelector
privateKeyPassphrasefingerprintuserIdtenancyIdregion(Appears on: OnboardbaseProvider)
OnboardbaseAuthSecretRef holds secret references for onboardbase API Key credentials.
| Field | Description |
|---|---|
apiKeyRef |
External Secrets meta/v1.SecretKeySelector
OnboardbaseAPIKey is the APIKey generated by an admin account. It is used to recognize and authorize access to a project and environment within onboardbase |
passcodeRef |
External Secrets meta/v1.SecretKeySelector
OnboardbasePasscode is the passcode attached to the API Key |
(Appears on: SecretStoreProvider)
OnboardbaseProvider configures a store to sync secrets using the Onboardbase provider. Project and Config are required if not using a Service Token.
| Field | Description |
|---|---|
auth |
OnboardbaseAuthSecretRef
Auth configures how the Operator authenticates with the Onboardbase API |
apiHost |
string
APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/ |
projectProject is an onboardbase project that the secrets should be pulled from
environmentEnvironment is the name of an environmnent within a project to pull the secrets from
(Appears on: OnePasswordProvider)
OnePasswordAuth contains a secretRef for credentials.
| Field | Description |
|---|---|
secretRef |
OnePasswordAuthSecretRef
(Appears on: OnePasswordAuth)
OnePasswordAuthSecretRef holds secret references for 1Password credentials.
| Field | Description |
|---|---|
connectTokenSecretRef |
External Secrets meta/v1.SecretKeySelector
The ConnectToken is used for authentication to a 1Password Connect Server. |
(Appears on: SecretStoreProvider)
OnePasswordProvider configures a store to sync secrets using the 1Password Secret Manager provider.
| Field | Description |
|---|---|
auth |
OnePasswordAuth
Auth defines the information necessary to authenticate against OnePassword Connect Server |
connectHost |
string
ConnectHost defines the OnePassword Connect Server to connect to |
vaultsVaults defines which OnePassword vaults to search in which order
(Appears on: OnePasswordSDKProvider)
OnePasswordSDKAuth contains a secretRef for the service account token.
| Field | Description |
|---|---|
serviceAccountSecretRef |
External Secrets meta/v1.SecretKeySelector
ServiceAccountSecretRef points to the secret containing the token to access 1Password vault. |
(Appears on: SecretStoreProvider)
OnePasswordSDKProvider configures a store to sync secrets using the 1Password sdk.
| Field | Description |
|---|---|
vault |
string
Vault defines the vault’s name or uuid to access. Do NOT add op:// prefix. This will be done automatically. |
integrationInfo |
IntegrationInfo
(Optional)
IntegrationInfo specifies the name and version of the integration built using the 1Password Go SDK.
If you don’t know which name and version to use, use |
authAuth defines the information necessary to authenticate against OnePassword API.
(Appears on: OracleProvider)
| Field | Description |
|---|---|
tenancy |
string
Tenancy is the tenancy OCID where user is located. |
user |
string
User is an access OCID specific to the account. |
secretRefSecretRef to pass through sensitive information.
string alias)(Appears on: OracleProvider)
| Value | Description |
|---|---|
"InstancePrincipal" |
InstancePrincipal represents a instance principal. |
"UserPrincipal" |
UserPrincipal represents a user principal. |
"Workload" |
WorkloadPrincipal represents a workload principal. |
(Appears on: SecretStoreProvider)
Configures an store to sync secrets using a Oracle Vault backend.
| Field | Description |
|---|---|
region |
string
Region is the region where vault is located. |
vault |
string
Vault is the vault’s OCID of the specific vault where secret is located. |
compartmentCompartment is the vault compartment OCID. Required for PushSecret
encryptionKeyEncryptionKey is the OCID of the encryption key within the vault. Required for PushSecret
principalTypeThe type of principal to use for authentication. If left blank, the Auth struct will determine the principal type. This optional field must be specified if using workload identity.
authAuth configures how secret-manager authenticates with the Oracle Vault. If empty, use the instance principal, otherwise the user credentials specified in Auth.
serviceAccountRefServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity.
(Appears on: OracleAuth)
| Field | Description |
|---|---|
privatekey |
External Secrets meta/v1.SecretKeySelector
PrivateKey is the user’s API Signing Key in PEM format, used for authentication. |
fingerprint |
External Secrets meta/v1.SecretKeySelector
Fingerprint is the fingerprint of the API private key. |
(Appears on: PassboltProvider)
Passbolt contains a secretRef for the passbolt credentials.
| Field | Description |
|---|---|
passwordSecretRef |
External Secrets meta/v1.SecretKeySelector
|
privateKeySecretRef |
External Secrets meta/v1.SecretKeySelector
(Appears on: SecretStoreProvider)
| Field | Description |
|---|---|
auth |
PassboltAuth
Auth defines the information necessary to authenticate against Passbolt Server |
host |
string
Host defines the Passbolt Server to connect to |
(Appears on: PasswordDepotProvider)
| Field | Description |
|---|---|
secretRef |
PasswordDepotSecretRef
(Appears on: SecretStoreProvider)
Configures a store to sync secrets with a Password Depot instance.
| Field | Description |
|---|---|
host |
string
URL configures the Password Depot instance URL. |
database |
string
Database to use as source |
authAuth configures how secret-manager authenticates with a Password Depot instance.
(Appears on: PasswordDepotAuth)
| Field | Description |
|---|---|
credentials |
External Secrets meta/v1.SecretKeySelector
(Optional)
Username / Password is used for authentication. |
(Appears on: PreviderProvider)
PreviderAuth contains a secretRef for credentials.
| Field | Description |
|---|---|
secretRef |
PreviderAuthSecretRef
(Optional) |
(Appears on: PreviderAuth)
PreviderAuthSecretRef holds secret references for Previder Vault credentials.
| Field | Description |
|---|---|
accessToken |
External Secrets meta/v1.SecretKeySelector
The AccessToken is used for authentication |
(Appears on: SecretStoreProvider)
PreviderProvider configures a store to sync secrets using the Previder Secret Manager provider.
| Field | Description |
|---|---|
auth |
PreviderAuth
|
baseUri |
string
(Optional) |
Provider is a common interface for interacting with secret backends.
(Appears on: SecretStoreProvider)
| Field | Description |
|---|---|
apiUrl |
string
APIURL is the URL of the Pulumi API. |
accessToken |
PulumiProviderSecretRef
AccessToken is the access tokens to sign in to the Pulumi Cloud Console. |
organizationOrganization are a space to collaborate on shared projects and stacks. To create a new organization, visit https://app.pulumi.com/ and click “New Organization”.
projectProject is the name of the Pulumi ESC project the environment belongs to.
environmentEnvironment are YAML documents composed of static key-value pairs, programmatic expressions, dynamically retrieved values from supported providers including all major clouds, and other Pulumi ESC environments. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
(Appears on: PulumiProvider)
| Field | Description |
|---|---|
secretRef |
External Secrets meta/v1.SecretKeySelector
SecretRef is a reference to a secret containing the Pulumi API token. |
PushSecretData is an interface to allow using v1alpha1.PushSecretData content in Provider registered in v1.
PushSecretRemoteRef is an interface to allow using v1alpha1.PushSecretRemoteRef in Provider registered in v1.
(Appears on: SecretStoreProvider)
| Field | Description |
|---|---|
apiUrl |
string
(Optional)
APIURL is the url of the api to use. Defaults to https://api.scaleway.com |
region |
string
Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone |
projectIdProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings
accessKeyAccessKey is the non-secret part of the api key.
secretKeySecretKey is the non-secret part of the api key.
(Appears on: ScalewayProvider)
| Field | Description |
|---|---|
value |
string
(Optional)
Value can be specified directly to set a value without using a secret. |
secretRef |
External Secrets meta/v1.SecretKeySelector
(Optional)
SecretRef references a key in a secret that will be used as value. |
(Appears on: AwsCredentialsConfig)
SecretReference holds the details of a secret.
| Field | Description |
|---|---|
name |
string
name of the secret. |
namespace |
string
namespace in which the secret exists. If empty, secret will looked up in local namespace. |
(Appears on: SecretStoreProvider)
See https://github.com/DelineaXPM/tss-sdk-go/blob/main/server/server.go.
| Field | Description |
|---|---|
username |
SecretServerProviderRef
Username is the secret server account username. |
password |
SecretServerProviderRef
Password is the secret server account password. |
domainDomain is the secret server domain.
serverURLServerURL URL to your secret server installation
(Appears on: SecretServerProvider)
| Field | Description |
|---|---|
value |
string
(Optional)
Value can be specified directly to set a value without using a secret. |
secretRef |
External Secrets meta/v1.SecretKeySelector
(Optional)
SecretRef references a key in a secret that will be used as value. |
SecretStore represents a secure external location for storing secrets, which can be referenced as part of storeRef fields.
| Field | Description |
|---|---|
metadata |
Kubernetes meta/v1.ObjectMeta
Refer to the Kubernetes API documentation for the fields of the
metadata field.
|
spec |
SecretStoreSpec
|
provider |
SecretStoreProvider
Used to configure the provider. Only one provider may be set |
retrySettings |
SecretStoreRetrySettings
(Optional)
Used to configure http retries if failed |
refreshIntervalUsed to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
conditionsUsed to constraint a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore
statusstring alias)(Appears on: SecretStoreStatus)
SecretStoreCapabilities defines the possible operations a SecretStore can do.
| Value | Description |
|---|---|
"ReadOnly" |
|
"ReadWrite" |
|
"WriteOnly" |
string alias)(Appears on: SecretStoreStatusCondition)
| Value | Description |
|---|---|
"Ready" |
(Appears on: SecretStoreSpec)
SecretStoreProvider contains the provider-specific configuration.
| Field | Description |
|---|---|
aws |
AWSProvider
(Optional)
AWS configures this store to sync secrets using AWS Secret Manager provider |
azurekv |
AzureKVProvider
(Optional)
AzureKV configures this store to sync secrets using Azure Key Vault provider |
akeylessAkeyless configures this store to sync secrets using Akeyless Vault provider
bitwardensecretsmanagerBitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
vaultVault configures this store to sync secrets using Hashi provider
gcpsmGCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
oracleOracle configures this store to sync secrets using Oracle Vault provider
ibmIBM configures this store to sync secrets using IBM Cloud provider
yandexcertificatemanagerYandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
yandexlockboxYandexLockbox configures this store to sync secrets using Yandex Lockbox provider
githubGithub configures this store to push GitHub Action secrets using GitHub API provider. Note: This provider only supports write operations (PushSecret) and cannot fetch secrets from GitHub
gitlabGitLab configures this store to sync secrets using GitLab Variables provider
alibabaAlibaba configures this store to sync secrets using Alibaba Cloud provider
onepasswordOnePassword configures this store to sync secrets using the 1Password Cloud provider
onepasswordSDKOnePasswordSDK configures this store to use 1Password’s new Go SDK to sync secrets.
webhookWebhook configures this store to sync secrets using a generic templated webhook
kubernetesKubernetes configures this store to sync secrets using a Kubernetes cluster provider
fakeFake configures a store with static key/value pairs
senhaseguraSenhasegura configures this store to sync secrets using senhasegura provider
scalewayScaleway
dopplerDoppler configures this store to sync secrets using the Doppler provider
previderPrevider configures this store to sync secrets using the Previder provider
onboardbaseOnboardbase configures this store to sync secrets using the Onboardbase provider
keepersecurityKeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
conjurConjur configures this store to sync secrets using conjur provider
delineaDelinea DevOps Secrets Vault https://docs.delinea.com/online-help/products/devops-secrets-vault/current
secretserverSecretServer configures this store to sync secrets using SecretServer provider https://docs.delinea.com/online-help/secret-server/start.htm
chefChef configures this store to sync secrets with chef server
pulumiPulumi configures this store to sync secrets using the Pulumi provider
fortanixFortanix configures this store to sync secrets using the Fortanix provider
passworddepotpassboltdevice42Device42 configures this store to sync secrets using the Device42 provider
infisicalInfisical configures this store to sync secrets using the Infisical provider
beyondtrustBeyondtrust configures this store to sync secrets using Password Safe provider.
cloudrusmCloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
volcengineVolcengine configures this store to sync secrets using the Volcengine provider
ngrokNgrok configures this store to sync secrets using the ngrok provider.
(Appears on: ExternalSecretSpec, StoreGeneratorSourceRef, StoreSourceRef)
SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
| Field | Description |
|---|---|
name |
string
Name of the SecretStore resource |
kind |
string
(Optional)
Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
Defaults to |
(Appears on: SecretStoreSpec)
| Field | Description |
|---|---|
maxRetries |
int32
|
retryInterval |
string
(Appears on: ClusterSecretStore, SecretStore)
SecretStoreSpec defines the desired state of SecretStore.
| Field | Description |
|---|---|
controller |
string
(Optional)
Used to select the correct ESO controller (think: ingress.ingressClassName) The ESO controller is instantiated with a specific controller name and filters ES based on this property |
provider |
SecretStoreProvider
Used to configure the provider. Only one provider may be set |
retrySettingsUsed to configure http retries if failed
refreshIntervalUsed to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
conditionsUsed to constraint a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore
(Appears on: ClusterSecretStore, SecretStore)
SecretStoreStatus defines the observed state of the SecretStore.
| Field | Description |
|---|---|
conditions |
[]SecretStoreStatusCondition
(Optional) |
capabilities |
SecretStoreCapabilities
(Optional) |
(Appears on: SecretStoreStatus)
| Field | Description |
|---|---|
type |
SecretStoreConditionType
|
status |
Kubernetes core/v1.ConditionStatus
reasonmessagelastTransitionTimestring alias)(Appears on: GCPSMProvider)
| Value | Description |
|---|---|
"LatestOrFail" |
SecretVersionSelectionPolicyLatestOrFail means the provider always uses “latest”, or fails if that version is disabled/destroyed. |
"LatestOrFetch" |
SecretVersionSelectionPolicyLatestOrFetch behaves like SecretVersionSelectionPolicyLatestOrFail but falls back to fetching the latest version if the version is DESTROYED or DISABLED. |
SecretsClient provides access to secrets.
(Appears on: AWSProvider)
SecretsManager defines how the provider behaves when interacting with AWS SecretsManager. Some of these settings are only applicable to controlling how secrets are deleted, and hence only apply to PushSecret (and only when deletionPolicy is set to Delete).
| Field | Description |
|---|---|
forceDeleteWithoutRecovery |
bool
(Optional)
Specifies whether to delete the secret without any recovery window. You can’t use both this parameter and RecoveryWindowInDays in the same call. If you don’t use either, then by default Secrets Manager uses a 30 day recovery window. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery |
recoveryWindowInDays |
int64
(Optional)
The number of days from 7 to 30 that Secrets Manager waits before permanently deleting the secret. You can’t use both this parameter and ForceDeleteWithoutRecovery in the same call. If you don’t use either, then by default Secrets Manager uses a 30 day recovery window. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays |
(Appears on: SenhaseguraProvider)
SenhaseguraAuth tells the controller how to do auth in senhasegura.
| Field | Description |
|---|---|
clientId |
string
|
clientSecretSecretRef |
External Secrets meta/v1.SecretKeySelector
string alias)(Appears on: SenhaseguraProvider)
SenhaseguraModuleType enum defines senhasegura target module to fetch secrets
| Value | Description |
|---|---|
"DSM" |
|
(Appears on: SecretStoreProvider)
SenhaseguraProvider setup a store to sync secrets with senhasegura.
| Field | Description |
|---|---|
url |
string
URL of senhasegura |
module |
SenhaseguraModuleType
Module defines which senhasegura module should be used to get secrets |
authAuth defines parameters to authenticate in senhasegura
ignoreSslCertificateIgnoreSslCertificate defines if SSL certificate must be ignored
(Appears on: ExternalSecretDataFromRemoteRef)
StoreGeneratorSourceRef allows you to override the source from which the secret will be pulled from. You can define at maximum one property.
| Field | Description |
|---|---|
storeRef |
SecretStoreRef
(Optional) |
generatorRef |
GeneratorRef
(Optional)
GeneratorRef points to a generator custom resource. |
(Appears on: ExternalSecretData)
StoreSourceRef allows you to override the SecretStore source from which the secret will be pulled from. You can define at maximum one property.
| Field | Description |
|---|---|
storeRef |
SecretStoreRef
(Optional) |
generatorRef |
GeneratorRef
GeneratorRef points to a generator custom resource. Deprecated: The generatorRef is not implemented in .data[]. this will be removed with v1. |
| Field | Description |
|---|---|
key |
string
|
value |
string
string alias)(Appears on: ExternalSecretTemplate)
| Value | Description |
|---|---|
"v2" |
(Appears on: ExternalSecretTemplate)
| Field | Description |
|---|---|
configMap |
TemplateRef
|
secret |
TemplateRef
targetliteralstring alias)(Appears on: ExternalSecretTemplate)
| Value | Description |
|---|---|
"Merge" |
|
"Replace" |
(Appears on: TemplateFrom)
| Field | Description |
|---|---|
name |
string
The name of the ConfigMap/Secret resource |
items |
[]TemplateRefItem
A list of keys in the ConfigMap/Secret to use as templates for Secret data |
(Appears on: TemplateRef)
| Field | Description |
|---|---|
key |
string
A key in the ConfigMap/Secret |
templateAs |
TemplateScope
string alias)(Appears on: TemplateRefItem)
| Value | Description |
|---|---|
"KeysAndValues" |
|
"Values" |
string alias)(Appears on: TemplateFrom)
| Value | Description |
|---|---|
"Annotations" |
|
"Data" |
|
"Labels" |
(Appears on: KubernetesAuth)
| Field | Description |
|---|---|
bearerToken |
External Secrets meta/v1.SecretKeySelector
(Appears on: InfisicalAuth)
| Field | Description |
|---|---|
accessToken |
External Secrets meta/v1.SecretKeySelector
(Appears on: InfisicalAuth)
| Field | Description |
|---|---|
clientId |
External Secrets meta/v1.SecretKeySelector
|
clientSecret |
External Secrets meta/v1.SecretKeySelector
byte alias)(Appears on: FakeProvider)
| Value | Description |
|---|---|
2 |
Error indicates that there is a misconfiguration. |
0 |
Ready indicates that the client is configured correctly and can be used. |
1 |
Unknown indicates that the client can be used but information is missing and it can not be validated. |
(Appears on: VaultAuth)
VaultAppRole authenticates with Vault using the App Role auth mechanism, with the role and secret stored in a Kubernetes Secret resource.
| Field | Description |
|---|---|
path |
string
Path where the App Role authentication backend is mounted in Vault, e.g: “approle” |
roleId |
string
(Optional)
RoleID configured in the App Role authentication backend when setting up the authentication backend in Vault. |
roleRefReference to a key in a Secret that contains the App Role ID used
to authenticate with Vault.
The key field must be specified and denotes which entry within the Secret
resource is used as the app role id.
secretRefReference to a key in a Secret that contains the App Role secret used
to authenticate with Vault.
The key field must be specified and denotes which entry within the Secret
resource is used as the app role secret.
(Appears on: VaultProvider)
VaultAuth is the configuration used to authenticate with a Vault server.
Only one of tokenSecretRef, appRole, kubernetes, ldap, userPass, jwt or cert
can be specified. A namespace to authenticate against can optionally be specified.
| Field | Description |
|---|---|
namespace |
string
(Optional)
Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in. Namespaces is a set of features within Vault Enterprise that allows Vault environments to support Secure Multi-tenancy. e.g: “ns1”. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces This will default to Vault.Namespace field if set, or empty otherwise |
tokenSecretRef |
External Secrets meta/v1.SecretKeySelector
(Optional)
TokenSecretRef authenticates with Vault by presenting a token. |
appRoleAppRole authenticates with Vault using the App Role auth mechanism, with the role and secret stored in a Kubernetes Secret resource.
kubernetesKubernetes authenticates with Vault by passing the ServiceAccount token stored in the named Secret resource to the Vault server.
ldapLdap authenticates with Vault by passing username/password pair using the LDAP authentication method
jwtJwt authenticates with Vault by passing role and JWT token using the JWT/OIDC authentication method
certCert authenticates with TLS Certificates by passing client certificate, private key and ca certificate Cert authentication method
iamIam authenticates with vault by passing a special AWS request signed with AWS IAM credentials AWS IAM authentication method
userPassUserPass authenticates with Vault by passing username/password pair
VaultAwsAuth tells the controller how to do authentication with aws. Only one of secretRef or jwt can be specified. if none is specified the controller will try to load credentials from its own service account assuming it is IRSA enabled.
| Field | Description |
|---|---|
secretRef |
VaultAwsAuthSecretRef
(Optional) |
jwt |
VaultAwsJWTAuth
(Optional) |
(Appears on: VaultAwsAuth, VaultIamAuth)
VaultAWSAuthSecretRef holds secret references for AWS credentials both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
| Field | Description |
|---|---|
accessKeyIDSecretRef |
External Secrets meta/v1.SecretKeySelector
(Optional)
The AccessKeyID is used for authentication |
secretAccessKeySecretRef |
External Secrets meta/v1.SecretKeySelector
(Optional)
The SecretAccessKey is used for authentication |
sessionTokenSecretRefThe SessionToken used for authentication This must be defined if AccessKeyID and SecretAccessKey are temporary credentials see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
(Appears on: VaultAwsAuth, VaultIamAuth)
VaultAwsJWTAuth Authenticate against AWS using service account tokens.
| Field | Description |
|---|---|
serviceAccountRef |
External Secrets meta/v1.ServiceAccountSelector
(Optional) |
(Appears on: VaultAuth)
VaultCertAuth authenticates with Vault using the JWT/OIDC authentication method, with the role name and token stored in a Kubernetes Secret resource.
| Field | Description |
|---|---|
clientCert |
External Secrets meta/v1.SecretKeySelector
(Optional)
ClientCert is a certificate to authenticate using the Cert Vault authentication method |
secretRef |
External Secrets meta/v1.SecretKeySelector
(Optional)
SecretRef to a key in a Secret resource containing client private key to authenticate with Vault using the Cert authentication method |
(Appears on: VaultProvider)
VaultCheckAndSet defines the Check-And-Set (CAS) settings for Vault KV v2 PushSecret operations.
| Field | Description |
|---|---|
required |
bool
(Optional)
Required when true, all write operations must include a check-and-set parameter. This helps prevent unintentional overwrites of secrets. |
(Appears on: VaultProvider)
VaultClientTLS is the configuration used for client side related TLS communication, when the Vault server requires mutual authentication.
| Field | Description |
|---|---|
certSecretRef |
External Secrets meta/v1.SecretKeySelector
(Optional)
CertSecretRef is a certificate added to the transport layer when communicating with the Vault server. If no key for the Secret is specified, external-secret will default to ‘tls.crt’. |
keySecretRef |
External Secrets meta/v1.SecretKeySelector
(Optional)
KeySecretRef to a key in a Secret resource containing client private key added to the transport layer when communicating with the Vault server. If no key for the Secret is specified, external-secret will default to ‘tls.key’. |
(Appears on: VaultAuth)
VaultIamAuth authenticates with Vault using the Vault’s AWS IAM authentication method. Refer: https://developer.hashicorp.com/vault/docs/auth/aws
When JWTAuth and SecretRef are not specified, the provider will use the controller pod’s identity to authenticate with AWS. This supports both IRSA and EKS Pod Identity.
| Field | Description |
|---|---|
path |
string
(Optional)
Path where the AWS auth method is enabled in Vault, e.g: “aws” |
region |
string
(Optional)
AWS region |
roleThis is the AWS role to be assumed before talking to vault
vaultRoleVault Role. In vault, a role describes an identity with a set of permissions, groups, or policies you want to attach a user of the secrets engine
externalIDAWS External ID set on assumed IAM roles
vaultAwsIamServerIDX-Vault-AWS-IAM-Server-ID is an additional header used by Vault IAM auth method to mitigate against different types of replay attacks. More details here: https://developer.hashicorp.com/vault/docs/auth/aws
secretRefSpecify credentials in a Secret object
jwtSpecify a service account with IRSA enabled
(Appears on: VaultAuth)
VaultJwtAuth authenticates with Vault using the JWT/OIDC authentication
method, with the role name and a token stored in a Kubernetes Secret resource or
a Kubernetes service account token retrieved via TokenRequest.
| Field | Description |
|---|---|
path |
string
Path where the JWT authentication backend is mounted in Vault, e.g: “jwt” |
role |
string
(Optional)
Role is a JWT role to authenticate using the JWT/OIDC Vault authentication method |
secretRefOptional SecretRef that refers to a key in a Secret resource containing JWT token to authenticate with Vault using the JWT/OIDC authentication method.
kubernetesServiceAccountTokenOptional ServiceAccountToken specifies the Kubernetes service account for which to request
a token for with the TokenRequest API.
string alias)(Appears on: VaultProvider)
| Value | Description |
|---|---|
"v1" |
|
"v2" |
(Appears on: VaultAuth)
Authenticate against Vault using a Kubernetes ServiceAccount token stored in a Secret.
| Field | Description |
|---|---|
mountPath |
string
Path where the Kubernetes authentication backend is mounted in Vault, e.g: “kubernetes” |
serviceAccountRef |
External Secrets meta/v1.ServiceAccountSelector
(Optional)
Optional service account field containing the name of a kubernetes ServiceAccount. If the service account is specified, the service account secret token JWT will be used for authenticating with Vault. If the service account selector is not supplied, the secretRef will be used instead. |
secretRefOptional secret field containing a Kubernetes ServiceAccount JWT used
for authenticating with Vault. If a name is specified without a key,
token is the default. If one is not specified, the one bound to
the controller will be used.
roleA required field containing the Vault Role to assume. A Role binds a Kubernetes ServiceAccount with a set of Vault policies.
(Appears on: VaultJwtAuth)
VaultKubernetesServiceAccountTokenAuth authenticates with Vault using a temporary
Kubernetes service account token retrieved by the TokenRequest API.
| Field | Description |
|---|---|
serviceAccountRef |
External Secrets meta/v1.ServiceAccountSelector
Service account field containing the name of a kubernetes ServiceAccount. |
audiences |
[]string
(Optional)
Optional audiences field that will be used to request a temporary Kubernetes service
account token for the service account referenced by |
expirationSecondsOptional expiration time in seconds that will be used to request a temporary
Kubernetes service account token for the service account referenced by
serviceAccountRef.
Deprecated: this will be removed in the future.
Defaults to 10 minutes.
(Appears on: VaultAuth)
VaultLdapAuth authenticates with Vault using the LDAP authentication method, with the username and password stored in a Kubernetes Secret resource.
| Field | Description |
|---|---|
path |
string
Path where the LDAP authentication backend is mounted in Vault, e.g: “ldap” |
username |
string
Username is an LDAP username used to authenticate using the LDAP Vault authentication method |
secretRefSecretRef to a key in a Secret resource containing password for the LDAP user used to authenticate with Vault using the LDAP authentication method
(Appears on: SecretStoreProvider)
Configures an store to sync secrets using a HashiCorp Vault KV backend.
| Field | Description |
|---|---|
auth |
VaultAuth
Auth configures how secret-manager authenticates with the Vault server. |
server |
string
Server is the connection address for the Vault server, e.g: “https://vault.example.com:8200”. |
pathPath is the mount path of the Vault KV backend endpoint, e.g: “secret”. The v2 KV secret engine version specific “/data” path suffix for fetching secrets from Vault is optional and will be appended if not present in specified path.
versionVersion is the Vault KV secret engine version. This can be either “v1” or “v2”. Version defaults to “v2”.
namespaceName of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows Vault environments to support Secure Multi-tenancy. e.g: “ns1”. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
caBundlePEM encoded CA bundle used to validate Vault server certificate. Only used if the Server URL is using HTTPS protocol. This parameter is ignored for plain HTTP protocol connection. If not set the system root certificates are used to validate the TLS connection.
tlsThe configuration used for client side related TLS communication, when the Vault server
requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
This parameter is ignored for plain HTTP protocol connection.
It’s worth noting this configuration is different from the “TLS certificates auth method”,
which is available under the auth.cert section.
caProviderThe provider for the CA bundle to use to validate Vault server certificate.
readYourWritesReadYourWrites ensures isolated read-after-write semantics by providing discovered cluster replication states in each request. More information about eventual consistency in Vault can be found here https://www.vaultproject.io/docs/enterprise/consistency
forwardInconsistentForwardInconsistent tells Vault to forward read-after-write requests to the Vault leader instead of simply retrying within a loop. This can increase performance if the option is enabled serverside. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
headersHeaders to be added in Vault request
checkAndSetCheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations. Only applies to Vault KV v2 stores. When enabled, write operations must include the current version of the secret to prevent unintentional overwrites.
(Appears on: VaultAuth)
VaultUserPassAuth authenticates with Vault using UserPass authentication method, with the username and password stored in a Kubernetes Secret resource.
| Field | Description |
|---|---|
path |
string
Path where the UserPassword authentication backend is mounted in Vault, e.g: “userpass” |
username |
string
Username is a username used to authenticate using the UserPass Vault authentication method |
secretRefSecretRef to a key in a Secret resource containing password for the user used to authenticate with Vault using the UserPass authentication method
(Appears on: VolcengineProvider)
VolcengineAuth defines the authentication method for the Volcengine provider. Only one of the fields should be set.
| Field | Description |
|---|---|
secretRef |
VolcengineAuthSecretRef
(Optional)
SecretRef defines the static credentials to use for authentication. If not set, IRSA is used. |
(Appears on: VolcengineAuth)
VolcengineAuthSecretRef defines the secret reference for static credentials.
| Field | Description |
|---|---|
accessKeyID |
External Secrets meta/v1.SecretKeySelector
AccessKeyID is the reference to the secret containing the Access Key ID. |
secretAccessKey |
External Secrets meta/v1.SecretKeySelector
SecretAccessKey is the reference to the secret containing the Secret Access Key. |
tokenToken is the reference to the secret containing the STS(Security Token Service) Token.
(Appears on: SecretStoreProvider)
VolcengineProvider defines the configuration for the Volcengine provider.
| Field | Description |
|---|---|
region |
string
Region specifies the Volcengine region to connect to. |
auth |
VolcengineAuth
(Optional)
Auth defines the authentication method to use. If not specified, the provider will try to use IRSA (IAM Role for Service Account). |
(Appears on: WebhookProvider)
Defines a location to fetch the cert for the webhook provider from.
| Field | Description |
|---|---|
type |
WebhookCAProviderType
The type of provider to use such as “Secret”, or “ConfigMap”. |
name |
string
The name of the object located at the provider type. |
keyThe key where the CA certificate can be found in the Secret or ConfigMap.
namespaceThe namespace the Provider type is in.
string alias)(Appears on: WebhookCAProvider)
| Value | Description |
|---|---|
"ConfigMap" |
|
"Secret" |
(Appears on: SecretStoreProvider)
WebHookProvider Configures an store to sync secrets from simple web apis.
| Field | Description |
|---|---|
method |
string
Webhook Method |
url |
string
Webhook url to call |
headersHeaders
authAuth specifies a authorization protocol. Only one protocol may be set.
bodyBody
timeoutTimeout
resultResult formatting
secretsSecrets to fill in templates These secrets will be passed to the templating function as key value pairs under the given name
caBundlePEM encoded CA bundle used to validate webhook server certificate. Only used if the Server URL is using HTTPS protocol. This parameter is ignored for plain HTTP protocol connection. If not set the system root certificates are used to validate the TLS connection.
caProviderThe provider for the CA bundle to use to validate webhook server certificate.
(Appears on: WebhookProvider)
| Field | Description |
|---|---|
jsonPath |
string
(Optional)
Json path of return value |
(Appears on: WebhookProvider)
| Field | Description |
|---|---|
name |
string
Name of this secret in templates |
secretRef |
External Secrets meta/v1.SecretKeySelector
Secret ref to fill in credentials |
(Appears on: YandexCertificateManagerProvider, YandexLockboxProvider)
| Field | Description |
|---|---|
authorizedKeySecretRef |
External Secrets meta/v1.SecretKeySelector
(Optional)
The authorized key used for authentication |
(Appears on: YandexCertificateManagerProvider, YandexLockboxProvider)
| Field | Description |
|---|---|
certSecretRef |
External Secrets meta/v1.SecretKeySelector
(Appears on: SecretStoreProvider)
YandexCertificateManagerProvider Configures a store to sync secrets using the Yandex Certificate Manager provider.
| Field | Description |
|---|---|
apiEndpoint |
string
(Optional)
Yandex.Cloud API endpoint (e.g. ‘api.cloud.yandex.net:443’) |
auth |
YandexAuth
Auth defines the information necessary to authenticate against Yandex.Cloud |
caProviderThe provider for the CA bundle to use to validate Yandex.Cloud server certificate.
fetchingFetchingPolicy configures the provider to interpret the data.secretKey.remoteRef.key field in ExternalSecret as certificate ID or certificate name
(Appears on: SecretStoreProvider)
YandexLockboxProvider Configures a store to sync secrets using the Yandex Lockbox provider.
| Field | Description |
|---|---|
apiEndpoint |
string
(Optional)
Yandex.Cloud API endpoint (e.g. ‘api.cloud.yandex.net:443’) |
auth |
YandexAuth
Auth defines the information necessary to authenticate against Yandex.Cloud |
caProviderThe provider for the CA bundle to use to validate Yandex.Cloud server certificate.
fetchingFetchingPolicy configures the provider to interpret the data.secretKey.remoteRef.key field in ExternalSecret as secret ID or secret name
Generated with gen-crd-api-reference-docs.