45 KiB
Packages:
external-secrets.io/v1alpha1
Package v1alpha1 contains resources for external-secrets
Resource Types:AWSAuth
(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) |
AWSAuthSecretRef
(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 github.com/external-secrets/external-secrets/apis/meta/v1.SecretKeySelector |
The AccessKeyID is used for authentication |
secretAccessKeySecretRef github.com/external-secrets/external-secrets/apis/meta/v1.SecretKeySelector |
The SecretAccessKey is used for authentication |
AWSJWTAuth
(Appears on: AWSAuth)
Authenticate against AWS using service account tokens.
Field | Description |
---|---|
serviceAccountRef github.com/external-secrets/external-secrets/apis/meta/v1.ServiceAccountSelector |
AWSProvider
(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 |
role string |
(Optional)
Role is a Role ARN which the SecretManager provider will assume |
region string |
AWS Region to be used for the provider |
AWSServiceType
(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. see: https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-parameter-store.html |
"SecretsManager" |
AWSServiceSecretsManager is the AWS SecretsManager. see: https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html |
AzureKVAuth
(Appears on: AzureKVProvider)
Configuration used to authenticate with Azure.
Field | Description |
---|---|
clientId github.com/external-secrets/external-secrets/apis/meta/v1.SecretKeySelector |
The Azure clientId of the service principle used for authentication. |
clientSecret github.com/external-secrets/external-secrets/apis/meta/v1.SecretKeySelector |
The Azure ClientSecret of the service principle used for authentication. |
AzureKVProvider
(Appears on: SecretStoreProvider)
Configures an store to sync secrets using Azure KV.
Field | Description |
---|---|
vaultUrl string |
Vault Url from which the secrets to be fetched from. |
tenantId string |
TenantID configures the Azure Tenant to send requests to. |
authSecretRef AzureKVAuth |
Auth configures how the operator authenticates with Azure. |
ClusterSecretStore
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 |
|
||||
status SecretStoreStatus |
ExternalSecret
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 |
|
||||||||||
status ExternalSecretStatus |
ExternalSecretConditionType
(string
alias)
(Appears on: ExternalSecretStatusCondition)
Value | Description |
---|---|
"Deleted" |
|
"Ready" |
ExternalSecretCreationPolicy
(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). |
"Owner" |
Owner creates the Secret and sets .metadata.ownerReferences to the ExternalSecret resource. |
ExternalSecretData
(Appears on: ExternalSecretSpec)
ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.) and the Provider data.
Field | Description |
---|---|
secretKey string |
|
remoteRef ExternalSecretDataRemoteRef |
ExternalSecretDataRemoteRef
(Appears on: ExternalSecretData, ExternalSecretSpec)
ExternalSecretDataRemoteRef defines Provider data location.
Field | Description |
---|---|
key string |
Key is the key used in the Provider, mandatory |
version string |
(Optional)
Used to select a specific version of the Provider value, if supported |
property string |
(Optional)
Used to select a specific property of the Provider value (if a map), if supported |
ExternalSecretSpec
(Appears on: ExternalSecret)
ExternalSecretSpec defines the desired state of ExternalSecret.
Field | Description |
---|---|
secretStoreRef SecretStoreRef |
|
target ExternalSecretTarget |
|
refreshInterval Kubernetes meta/v1.Duration |
RefreshInterval is the amount of time before the values are read again from the SecretStore provider Valid time units are “ns”, “us” (or “µs”), “ms”, “s”, “m”, “h” May be set to zero to fetch and create it once. Defaults to 1h. |
data []ExternalSecretData |
(Optional)
Data defines the connection between the Kubernetes Secret keys and the Provider data |
dataFrom []ExternalSecretDataRemoteRef |
(Optional)
DataFrom 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 |
ExternalSecretStatus
(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 |
conditions []ExternalSecretStatusCondition |
(Optional) |
ExternalSecretStatusCondition
(Appears on: ExternalSecretStatus)
Field | Description |
---|---|
type ExternalSecretConditionType |
|
status Kubernetes core/v1.ConditionStatus |
|
reason string |
(Optional) |
message string |
(Optional) |
lastTransitionTime Kubernetes meta/v1.Time |
(Optional) |
ExternalSecretTarget
(Appears on: ExternalSecretSpec)
ExternalSecretTarget defines the Kubernetes Secret to be created There can be only one target per ExternalSecret.
Field | Description |
---|---|
name string |
(Optional)
Name defines the name of the Secret resource to be managed This field is immutable 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’ |
template ExternalSecretTemplate |
(Optional)
Template defines a blueprint for the created Secret resource. |
ExternalSecretTemplate
(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) |
metadata ExternalSecretTemplateMetadata |
(Optional) |
data map[string]string |
(Optional) |
templateFrom []TemplateFrom |
(Optional) |
ExternalSecretTemplateMetadata
(Appears on: ExternalSecretTemplate)
ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
Field | Description |
---|---|
annotations map[string]string |
(Optional) |
labels map[string]string |
(Optional) |
GCPSMAuth
(Appears on: GCPSMProvider)
Field | Description |
---|---|
secretRef GCPSMAuthSecretRef |
GCPSMAuthSecretRef
(Appears on: GCPSMAuth)
Field | Description |
---|---|
secretAccessKeySecretRef github.com/external-secrets/external-secrets/apis/meta/v1.SecretKeySelector |
(Optional)
The SecretAccessKey is used for authentication |
GCPSMProvider
(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 |
GenericStore
GenericStore is a common interface for interacting with ClusterSecretStore or a namespaced SecretStore.
GitlabAuth
(Appears on: GitlabProvider)
Field | Description |
---|---|
SecretRef GitlabSecretRef |
GitlabProvider
(Appears on: SecretStoreProvider)
Configures an store to sync secrets using a IBM Cloud Secrets Manager backend.
Field | Description |
---|---|
auth GitlabAuth |
Auth configures how secret-manager authenticates with the IBM secrets manager. |
projectID string |
ProjectID project where secret is located |
GitlabSecretRef
(Appears on: GitlabAuth)
Field | Description |
---|---|
accessToken github.com/external-secrets/external-secrets/apis/meta/v1.SecretKeySelector |
The Access Token is used for authentication |
IBMAuth
(Appears on: IBMProvider)
Field | Description |
---|---|
secretRef IBMAuthSecretRef |
IBMAuthSecretRef
(Appears on: IBMAuth)
Field | Description |
---|---|
secretApiKeySecretRef github.com/external-secrets/external-secrets/apis/meta/v1.SecretKeySelector |
(Optional)
The SecretAccessKey is used for authentication |
IBMProvider
(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 |
SecretStore
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 |
|
||||
status SecretStoreStatus |
SecretStoreConditionType
(string
alias)
(Appears on: SecretStoreStatusCondition)
Value | Description |
---|---|
"Ready" |
SecretStoreProvider
(Appears on: SecretStoreSpec)
SecretStoreProvider contains the provider-specific configration.
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 |
vault VaultProvider |
(Optional)
Vault configures this store to sync secrets using Hashi provider |
gcpsm GCPSMProvider |
(Optional)
GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider |
ibm IBMProvider |
(Optional)
IBM configures this store to sync secrets using IBM Cloud provider |
yandexlockbox YandexLockboxProvider |
(Optional)
YandexLockbox configures this store to sync secrets using Yandex Lockbox provider |
gitlab GitlabProvider |
(Optional)
GItlab configures this store to sync secrets using Gitlab Variables provider |
SecretStoreRef
(Appears on: ExternalSecretSpec)
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 |
SecretStoreSpec
(Appears on: ClusterSecretStore, SecretStore)
SecretStoreSpec defines the desired state of SecretStore.
Field | Description |
---|---|
controller string |
(Optional)
Used to select the correct KES controller (think: ingress.ingressClassName) The KES 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 |
SecretStoreStatus
(Appears on: ClusterSecretStore, SecretStore)
SecretStoreStatus defines the observed state of the SecretStore.
Field | Description |
---|---|
conditions []SecretStoreStatusCondition |
(Optional) |
SecretStoreStatusCondition
(Appears on: SecretStoreStatus)
Field | Description |
---|---|
type SecretStoreConditionType |
|
status Kubernetes core/v1.ConditionStatus |
|
reason string |
(Optional) |
message string |
(Optional) |
lastTransitionTime Kubernetes meta/v1.Time |
(Optional) |
TemplateFrom
(Appears on: ExternalSecretTemplate)
Field | Description |
---|---|
configMap TemplateRef |
|
secret TemplateRef |
TemplateRef
(Appears on: TemplateFrom)
Field | Description |
---|---|
name string |
|
items []TemplateRefItem |
TemplateRefItem
(Appears on: TemplateRef)
Field | Description |
---|---|
key string |
VaultAppRole
(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 |
RoleID configured in the App Role authentication backend when setting up the authentication backend in Vault. |
secretRef github.com/external-secrets/external-secrets/apis/meta/v1.SecretKeySelector |
Reference to a key in a Secret that contains the App Role secret used
to authenticate with Vault.
The |
VaultAuth
(Appears on: VaultProvider)
VaultAuth is the configuration used to authenticate with a Vault server.
Only one of tokenSecretRef
, appRole
, kubernetes
, ldap
, jwt
or cert
can be specified.
Field | Description |
---|---|
tokenSecretRef github.com/external-secrets/external-secrets/apis/meta/v1.SecretKeySelector |
(Optional)
TokenSecretRef authenticates with Vault by presenting a token. |
appRole VaultAppRole |
(Optional)
AppRole authenticates with Vault using the App Role auth mechanism, with the role and secret stored in a Kubernetes Secret resource. |
kubernetes VaultKubernetesAuth |
(Optional)
Kubernetes authenticates with Vault by passing the ServiceAccount token stored in the named Secret resource to the Vault server. |
ldap VaultLdapAuth |
(Optional)
Ldap authenticates with Vault by passing username/password pair using the LDAP authentication method |
jwt VaultJwtAuth |
(Optional)
Jwt authenticates with Vault by passing role and JWT token using the JWT/OIDC authentication method |
cert VaultCertAuth |
(Optional)
Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate Cert authentication method |
VaultCertAuth
(Appears on: VaultAuth)
VaultJwtAuth authenticates with Vault using the JWT/OIDC authentication method, with the role name and token stored in a Kubernetes Secret resource.
Field | Description |
---|---|
clientCert github.com/external-secrets/external-secrets/apis/meta/v1.SecretKeySelector |
(Optional)
ClientCert is a certificate to authenticate using the Cert Vault authentication method |
secretRef github.com/external-secrets/external-secrets/apis/meta/v1.SecretKeySelector |
SecretRef to a key in a Secret resource containing client private key to authenticate with Vault using the Cert authentication method |
VaultJwtAuth
(Appears on: VaultAuth)
VaultJwtAuth authenticates with Vault using the JWT/OIDC authentication method, with the role name and token stored in a Kubernetes Secret resource.
Field | Description |
---|---|
role string |
(Optional)
Role is a JWT role to authenticate using the JWT/OIDC Vault authentication method |
secretRef github.com/external-secrets/external-secrets/apis/meta/v1.SecretKeySelector |
SecretRef to a key in a Secret resource containing JWT token to authenticate with Vault using the JWT/OIDC authentication method |
VaultKVStoreVersion
(string
alias)
(Appears on: VaultProvider)
Value | Description |
---|---|
"v1" |
|
"v2" |
VaultKubernetesAuth
(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 github.com/external-secrets/external-secrets/apis/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. |
secretRef github.com/external-secrets/external-secrets/apis/meta/v1.SecretKeySelector |
(Optional)
Optional secret field containing a Kubernetes ServiceAccount JWT used
for authenticating with Vault. If a name is specified without a key,
|
role string |
A required field containing the Vault Role to assume. A Role binds a Kubernetes ServiceAccount with a set of Vault policies. |
VaultLdapAuth
(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 |
---|---|
username string |
Username is a LDAP user name used to authenticate using the LDAP Vault authentication method |
secretRef github.com/external-secrets/external-secrets/apis/meta/v1.SecretKeySelector |
SecretRef to a key in a Secret resource containing password for the LDAP user used to authenticate with Vault using the LDAP authentication method |
VaultProvider
(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”. |
path string |
Path 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. |
version VaultKVStoreVersion |
Version is the Vault KV secret engine version. This can be either “v1” or “v2”. Version defaults to “v2”. |
namespace string |
(Optional)
Name 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 |
caBundle []byte |
(Optional)
PEM 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. |
YandexLockboxAuth
(Appears on: YandexLockboxProvider)
Field | Description |
---|---|
authorizedKeySecretRef github.com/external-secrets/external-secrets/apis/meta/v1.SecretKeySelector |
(Optional)
The authorized key used for authentication |
YandexLockboxProvider
(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 YandexLockboxAuth |
Auth defines the information necessary to authenticate against Yandex Lockbox |
Generated with gen-crd-api-reference-docs
.