Vault
API Reference
Packages
secrets.hashicorp.com/v1beta1
Package v1beta1 contains API Schema definitions for the secrets v1beta1 API group
Resource Types
- CSISecrets
- CSISecretsList
- HCPAuth
- HCPAuthList
- HCPVaultSecretsApp
- HCPVaultSecretsAppList
- SecretTransformation
- SecretTransformationList
- VaultAuth
- VaultAuthGlobal
- VaultAuthGlobalList
- VaultAuthList
- VaultConnection
- VaultConnectionList
- VaultDynamicSecret
- VaultDynamicSecretList
- VaultPKISecret
- VaultPKISecretList
- VaultStaticSecret
- VaultStaticSecretList
AccessControl
AccessControl provides configuration for controlling access to the secret. It allows specifying the namespaces, service account, pod names, and pod labels that should be allowed to access the secret.
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| serviceAccountPatternstring | ServiceAccountPattern is the name of the service account that should be used to access the secret. It can be specified as a regex pattern. A valid service account is always required. | ||
| namespacePatternsstring array | NamespacePatterns is a list of namespace name regex patterns that are allowed access. | ||
| podNamePatternsstring array | PodNamePatterns is a list of pod name regex patterns that should be allowed access. | ||
| podLabelsobject (keys:string, values:string) | PodLabels is a map of pod label key-value pairs that should be allowed access. | ||
| matchPolicystring | MatchPolicy is the policy to use when matching the access control rules. If set to "any", only one of the rules should match. If set to "all", all the rules should match. | all | Enum: [any all] | 
CSISecrets
CSISecrets is the Schema for the csisecrets API
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | CSISecrets | ||
| metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| specCSISecretsSpec | 
CSISecretsList
CSISecretsList contains a list of CSISecrets
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | CSISecretsList | ||
| metadataListMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| itemsCSISecrets array | 
CSISecretsSpec
CSISecretsSpec defines the desired state of CSISecrets. It contains the configuration for the CSI driver to populate the secret data.
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| namespacestring | Namespace is the Vault namespace where the secret is located. | ||
| accessControlAccessControl | AccessControl provides configuration for controlling access to the secret. | ||
| secretsSecretCollection | Secrets that will be synced with the CSI driver. | ||
| syncConfigCSISyncConfig | SyncConfig provides configuration for syncing the secret data with the CSI driver. | ||
| vaultAuthRefVaultAuthRef | VaultAuthRef is the reference to the VaultAuth resource. | 
CSISyncConfig
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| containerStateContainerState | ContainerState is the state of the container that the CSI driver always sync on. This configuration is useful to sync when the last state of the container is in the terminated state and the restart count is greater than 0. | 
ContainerState
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| namePatternstring | NamePattern of the container. Can be expressed as a regular expression. | ||
| imagePatternstring | ImagePattern of the container. Can be expressed as a regular expression. | 
Destination
Destination provides the configuration that will be applied to the destination Kubernetes Secret during a Vault Secret -> K8s Secret sync.
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| namestring | Name of the Secret | ||
| createboolean | Create the destination Secret. If the Secret already exists this should be set to false. | false | |
| overwriteboolean | Overwrite the destination Secret if it exists and Create is true. This is useful when migrating to VSO from a previous secret deployment strategy. | false | |
| labelsobject (keys:string, values:string) | Labels to apply to the Secret. Requires Create to be set to true. | ||
| annotationsobject (keys:string, values:string) | Annotations to apply to the Secret. Requires Create to be set to true. | ||
| typeSecretType | Type of Kubernetes Secret. Requires Create to be set to true. Defaults to Opaque. | ||
| transformationTransformation | Transformation provides configuration for transforming the secret data before it is stored in the Destination. | 
HCPAuth
HCPAuth is the Schema for the hcpauths API
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | HCPAuth | ||
| metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| specHCPAuthSpec | 
HCPAuthList
HCPAuthList contains a list of HCPAuth
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | HCPAuthList | ||
| metadataListMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| itemsHCPAuth array | 
HCPAuthServicePrincipal
HCPAuthServicePrincipal provides HCPAuth configuration options needed for authenticating to HCP using a service principal configured in SecretRef.
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| secretRefstring | SecretRef is the name of a Kubernetes secret in the consumer's (VDS/VSS/PKI/HCP) namespace which provides the HCP ServicePrincipal clientID, and clientSecret. The secret data must have the following structure { "clientID": "clientID", "clientSecret": "clientSecret", } | 
HCPAuthSpec
HCPAuthSpec defines the desired state of HCPAuth
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| organizationIDstring | OrganizationID of the HCP organization. | ||
| projectIDstring | ProjectID of the HCP project. | ||
| allowedNamespacesstring array | AllowedNamespaces Kubernetes Namespaces which are allow-listed for use with this AuthMethod. This field allows administrators to customize which Kubernetes namespaces are authorized to use with this AuthMethod. While Vault will still enforce its own rules, this has the added configurability of restricting which HCPAuthMethods can be used by which namespaces. Accepted values: []{"*"} - wildcard, all namespaces. []{"a", "b"} - list of namespaces. unset - disallow all namespaces except the Operator's the HCPAuthMethod's namespace, this is the default behavior. | ||
| methodstring | Method to use when authenticating to Vault. | servicePrincipal | Enum: [servicePrincipal] | 
| servicePrincipalHCPAuthServicePrincipal | ServicePrincipal provides the necessary configuration for authenticating to HCP using a service principal. For security reasons, only project-level service principals should ever be used. | 
HCPVaultSecretsApp
HCPVaultSecretsApp is the Schema for the hcpvaultsecretsapps API
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | HCPVaultSecretsApp | ||
| metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| specHCPVaultSecretsAppSpec | 
HCPVaultSecretsAppList
HCPVaultSecretsAppList contains a list of HCPVaultSecretsApp
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | HCPVaultSecretsAppList | ||
| metadataListMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| itemsHCPVaultSecretsApp array | 
HCPVaultSecretsAppSpec
HCPVaultSecretsAppSpec defines the desired state of HCPVaultSecretsApp
Appears in:
| Field | Description | Default | Validation | ||
|---|---|---|---|---|---|
| appNamestring | AppName of the Vault Secrets Application that is to be synced. | ||||
| hcpAuthRefstring | HCPAuthRef to the HCPAuth resource, can be prefixed with a namespace, eg: namespaceA/vaultAuthRefB. If no namespace prefix is provided it will defaultto the namespace of the HCPAuth CR. If no value is specified for HCPAuthRef the Operator will default to the defaultHCPAuth, configured in the operator'snamespace. | ||||
| refreshAfterstring | RefreshAfter a period of time, in duration notation e.g. 30s, 1m, 24h | 600s | Pattern: `^([0-9]+(.[0-9]+)?(s | m | h))$` Type: string | 
| rolloutRestartTargetsRolloutRestartTarget array | RolloutRestartTargets should be configured whenever the application(s) consuming the HCP Vault Secrets App does not support dynamically reloading a rotated secret. In that case one, or more RolloutRestartTarget(s) can be configured here. The Operator will trigger a "rollout-restart" for each target whenever the Vault secret changes between reconciliation events. See RolloutRestartTarget for more details. | ||||
| destinationDestination | Destination provides configuration necessary for syncing the HCP Vault Application secrets to Kubernetes. | ||||
| syncConfigHVSSyncConfig | SyncConfig configures sync behavior from HVS to VSO | 
HVSDynamicStatus
HVSDynamicStatus defines the observed state of a dynamic secret within an HCP Vault Secrets App
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| namestring | Name of the dynamic secret | ||
| createdAtstring | CreatedAt is the timestamp string of when the dynamic secret was created | ||
| expiresAtstring | ExpiresAt is the timestamp string of when the dynamic secret will expire | ||
| ttlstring | TTL is the time-to-live of the dynamic secret in seconds | 
HVSDynamicSyncConfig
HVSDynamicSyncConfig configures sync behavior for HVS dynamic secrets.
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| renewalPercentinteger | RenewalPercent is the percent out of 100 of a dynamic secret's TTL when new secrets are generated. Defaults to 67 percent plus up to 10% jitter. | 67 | Maximum: 90 Minimum: 0 | 
HVSSyncConfig
HVSSyncConfig configures sync behavior from HVS to VSO
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| dynamicHVSDynamicSyncConfig | Dynamic configures sync behavior for dynamic secrets. | 
MergeStrategy
MergeStrategy provides the configuration for merging HTTP headers and parameters from the referring VaultAuth resource and its VaultAuthGlobal resource.
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| headersstring | Headers configures the merge strategy for HTTP headers that are included in all Vault requests. Choices are union,replace, ornone.If unionis set, the headers from the VaultAuthGlobal and VaultAuthresources are merged. The headers from the VaultAuth always take precedence. If replaceis set, the first set of non-empty headers taken in order from:VaultAuth, VaultAuthGlobal auth method, VaultGlobal default headers. If noneis set, the headers from theVaultAuthGlobal resource are ignored and only the headers from the VaultAuth resource are used. The default is none. | Enum: [union replace none] | |
| paramsstring | Params configures the merge strategy for HTTP parameters that are included in all Vault requests. Choices are union,replace, ornone.If unionis set, the parameters from the VaultAuthGlobal and VaultAuthresources are merged. The parameters from the VaultAuth always take precedence. If replaceis set, the first set of non-empty parameters taken in order from:VaultAuth, VaultAuthGlobal auth method, VaultGlobal default parameters. If noneis set, the parameters from the VaultAuthGlobal resource are ignoredand only the parameters from the VaultAuth resource are used. The default is none. | Enum: [union replace none] | 
RolloutRestartTarget
RolloutRestartTarget provides the configuration required to perform a rollout-restart of the supported resources upon Vault Secret rotation. The rollout-restart is triggered by patching the target resource's 'spec.template.metadata.annotations' to include 'vso.secrets.hashicorp.com/restartedAt' with a timestamp value of when the trigger was executed. E.g. vso.secrets.hashicorp.com/restartedAt: "2023-03-23T13:39:31Z"
Supported resources: Deployment, DaemonSet, StatefulSet, argo.Rollout
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| kindstring | Kind of the resource | Enum: [Deployment DaemonSet StatefulSet argo.Rollout] | |
| namestring | Name of the resource | 
SecretCollection
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| transformationTransformation | Transformation provides configuration for transforming the secret data before it is stored in the CSI volume. | ||
| vaultAppRoleSecretIDsVaultAppRoleSecretID array | VaultAppRoleSecretIDs is a list of AppRole secret IDs to be used to populate the secret. | ||
| vaultStaticSecretsVaultStaticSecretCollectable array | VaultStaticSecrets is a list of static secrets to be synced by the CSI driver. | 
SecretTransformation
SecretTransformation is the Schema for the secrettransformations API
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | SecretTransformation | ||
| metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| specSecretTransformationSpec | 
SecretTransformationList
SecretTransformationList contains a list of SecretTransformation
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | SecretTransformationList | ||
| metadataListMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| itemsSecretTransformation array | 
SecretTransformationSpec
SecretTransformationSpec defines the desired state of SecretTransformation
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| templatesobject (keys:string, values:Template) | Templates maps a template name to its Template. Templates are always included in the rendered secret with the specified key. | ||
| sourceTemplatesSourceTemplate array | SourceTemplates are never included in the rendered secret, they can be used to provide common template definitions, etc. | ||
| includesstring array | Includes contains regex patterns used to filter top-level source secret data fields for inclusion in the final secret data. These pattern filters are never applied to templated fields as defined in Templates. They are always applied last. | ||
| excludesstring array | Excludes contains regex patterns used to filter top-level source secret data fields for exclusion from the final secret data. These pattern filters are never applied to templated fields as defined in Templates. They are always applied before any inclusion patterns. To exclude all source secret data fields, you can configure the single pattern ".*". | 
SourceTemplate
SourceTemplate provides source templating configuration.
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| namestring | |||
| textstring | Text contains the Go text template format. The template references attributes from the data structure of the source secret. Refer to https://pkg.go.dev/text/template for more information. | 
StorageEncryption
StorageEncryption provides the necessary configuration need to encrypt the storage cache entries using Vault's Transit engine.
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| mountstring | Mount path of the Transit engine in Vault. | ||
| keyNamestring | KeyName to use for encrypt/decrypt operations via Vault Transit. | 
SyncConfig
SyncConfig configures sync behavior from Vault to VSO
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| instantUpdatesboolean | InstantUpdates is a flag to indicate that event-driven updates are enabled for this VaultStaticSecret | 
Template
Template provides templating configuration.
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| namestring | Name of the Template | ||
| textstring | Text contains the Go text template format. The template references attributes from the data structure of the source secret. Refer to https://pkg.go.dev/text/template for more information. | 
TemplateRef
TemplateRef points to templating text that is stored in a SecretTransformation custom resource.
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| namestring | Name of the Template in SecretTransformationSpec.Templates. the rendered secret data. | ||
| keyOverridestring | KeyOverride to the rendered template in the Destination secret. If Key is empty, then the Key from reference spec will be used. Set this to override the Key set from the reference spec. | 
Transformation
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| templatesobject (keys:string, values:Template) | Templates maps a template name to its Template. Templates are always included in the rendered K8s Secret, and take precedence over templates defined in a SecretTransformation. | ||
| transformationRefsTransformationRef array | TransformationRefs contain references to template configuration from SecretTransformation. | ||
| includesstring array | Includes contains regex patterns used to filter top-level source secret data fields for inclusion in the final K8s Secret data. These pattern filters are never applied to templated fields as defined in Templates. They are always applied last. | ||
| excludesstring array | Excludes contains regex patterns used to filter top-level source secret data fields for exclusion from the final K8s Secret data. These pattern filters are never applied to templated fields as defined in Templates. They are always applied before any inclusion patterns. To exclude all source secret data fields, you can configure the single pattern ".*". | ||
| excludeRawboolean | ExcludeRaw data from the destination Secret. Exclusion policy can be set globally by including 'exclude-raw` in the '--global-transformation-options' command line flag. If set, the command line flag always takes precedence over this configuration. | 
TransformationRef
TransformationRef contains the configuration for accessing templates from an SecretTransformation resource. TransformationRefs can be shared across all syncable secret custom resources.
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| namespacestring | Namespace of the SecretTransformation resource. | ||
| namestring | Name of the SecretTransformation resource. | ||
| templateRefsTemplateRef array | TemplateRefs map to a Template found in this TransformationRef. If empty, then all templates from the SecretTransformation will be rendered to the K8s Secret. | ||
| ignoreIncludesboolean | IgnoreIncludes controls whether to use the SecretTransformation's Includes data key filters. | ||
| ignoreExcludesboolean | IgnoreExcludes controls whether to use the SecretTransformation's Excludes data key filters. | 
VaultAppRoleSecretID
VaultAppRoleSecretID defines the AppRole secret ID to be used to populate the secret.
Appears in:
| Field | Description | Default | Validation | ||
|---|---|---|---|---|---|
| mountstring | Mount path to the AppRole auth engine. | ||||
| rolestring | Role is the name of the AppRole. | ||||
| metadataobject (keys:string, values:string) | Refer to Kubernetes API documentation for fields of metadata. | ||||
| cidrListstring array | CIDRList is the list of CIDR blocks that access the secret ID. | ||||
| tokenBoundCIDRsstring array | TokenBoundCIDRs is the list of CIDR blocks that can be used to authenticate using tokens generated by this secret ID. | ||||
| ttlstring | TTL is the TTL for the secret ID, after which it becomes invalid. | Pattern: `^([0-9]+(.[0-9]+)?(s | m | h))$` | |
| numUsesinteger | NumUses is the number of times the secret ID can be used. | ||||
| wrapTTLstring | WrapTTL is the TTL for the wrapped secret ID. | Pattern: `^([0-9]+(.[0-9]+)?(s | m | h))$` | |
| syncRoleIDboolean | SyncRoleID is the flag to fetch the role ID from the AppRole auth engine. Requires that the provisioning VaultAuth has the necessary permissions to fetch the role ID. | ||||
| transformationTransformation | Transformation provides configuration for transforming the secret data before it is stored in the CSI volume. | 
VaultAuth
VaultAuth is the Schema for the vaultauths API
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | VaultAuth | ||
| metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| specVaultAuthSpec | 
VaultAuthConfigAWS
VaultAuthConfigAWS provides VaultAuth configuration options needed for
authenticating to Vault via an AWS AuthMethod. Will use creds from
SecretRef or IRSAServiceAccount if provided, in that order. If neither
are provided, the underlying node role or instance profile will be used to
authenticate to Vault.
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| rolestring | Vault role to use for authenticating | ||
| regionstring | AWS Region to use for signing the authentication request | ||
| headerValuestring | The Vault header value to include in the STS signing request | ||
| sessionNamestring | The role session name to use when creating a webidentity provider | ||
| stsEndpointstring | The STS endpoint to use; if not set will use the default | ||
| iamEndpointstring | The IAM endpoint to use; if not set will use the default | ||
| secretRefstring | SecretRef is the name of a Kubernetes Secret in the consumer's (VDS/VSS/PKI) namespace which holds credentials for AWS. Expected keys include access_key_id,secret_access_key,session_token | ||
| irsaServiceAccountstring | IRSAServiceAccount name to use with IAM Roles for Service Accounts (IRSA), and should be annotated with "eks.amazonaws.com/role-arn". This ServiceAccount will be checked for other EKS annotations: eks.amazonaws.com/audience and eks.amazonaws.com/token-expiration | 
VaultAuthConfigAppRole
VaultAuthConfigAppRole provides VaultAuth configuration options needed for authenticating to Vault via an AppRole AuthMethod.
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| roleIdstring | RoleID of the AppRole Role to use for authenticating to Vault. | ||
| secretRefstring | SecretRef is the name of a Kubernetes secret in the consumer's (VDS/VSS/PKI) namespace which provides the AppRole Role's SecretID. The secret must have a key named idwhich holds theAppRole Role's secretID. | 
VaultAuthConfigGCP
VaultAuthConfigGCP provides VaultAuth configuration options needed for authenticating to Vault via a GCP AuthMethod, using workload identity
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| rolestring | Vault role to use for authenticating | ||
| workloadIdentityServiceAccountstring | WorkloadIdentityServiceAccount is the name of a Kubernetes service account (in the same Kubernetes namespace as the Vault*Secret referencing this resource) which has been configured for workload identity in GKE. Should be annotated with "iam.gke.io/gcp-service-account". | ||
| regionstring | GCP Region of the GKE cluster's identity provider. Defaults to the region returned from the operator pod's local metadata server. | ||
| clusterNamestring | GKE cluster name. Defaults to the cluster-name returned from the operator pod's local metadata server. | ||
| projectIDstring | GCP project ID. Defaults to the project-id returned from the operator pod's local metadata server. | 
VaultAuthConfigJWT
VaultAuthConfigJWT provides VaultAuth configuration options needed for authenticating to Vault.
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| rolestring | Role to use for authenticating to Vault. | ||
| secretRefstring | SecretRef is the name of a Kubernetes secret in the consumer's (VDS/VSS/PKI) namespace which provides the JWT token to authenticate to Vault's JWT authentication backend. The secret must have a key named jwtwhich holds the JWT token. | ||
| serviceAccountstring | ServiceAccount to use when creating a ServiceAccount token to authenticate to Vault's JWT authentication backend. | ||
| audiencesstring array | TokenAudiences to include in the ServiceAccount token. | ||
| tokenExpirationSecondsinteger | TokenExpirationSeconds to set the ServiceAccount token. | 600 | Minimum: 600 | 
VaultAuthConfigKubernetes
VaultAuthConfigKubernetes provides VaultAuth configuration options needed for authenticating to Vault.
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| rolestring | Role to use for authenticating to Vault. | ||
| serviceAccountstring | ServiceAccount to use when authenticating to Vault's authentication backend. This must reside in the consuming secret's (VDS/VSS/PKI) namespace. | ||
| audiencesstring array | TokenAudiences to include in the ServiceAccount token. | ||
| tokenExpirationSecondsinteger | TokenExpirationSeconds to set the ServiceAccount token. | 600 | Minimum: 600 | 
VaultAuthGlobal
VaultAuthGlobal is the Schema for the vaultauthglobals API
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | VaultAuthGlobal | ||
| metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| specVaultAuthGlobalSpec | 
VaultAuthGlobalConfigAWS
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| rolestring | Vault role to use for authenticating | ||
| regionstring | AWS Region to use for signing the authentication request | ||
| headerValuestring | The Vault header value to include in the STS signing request | ||
| sessionNamestring | The role session name to use when creating a webidentity provider | ||
| stsEndpointstring | The STS endpoint to use; if not set will use the default | ||
| iamEndpointstring | The IAM endpoint to use; if not set will use the default | ||
| secretRefstring | SecretRef is the name of a Kubernetes Secret in the consumer's (VDS/VSS/PKI) namespace which holds credentials for AWS. Expected keys include access_key_id,secret_access_key,session_token | ||
| irsaServiceAccountstring | IRSAServiceAccount name to use with IAM Roles for Service Accounts (IRSA), and should be annotated with "eks.amazonaws.com/role-arn". This ServiceAccount will be checked for other EKS annotations: eks.amazonaws.com/audience and eks.amazonaws.com/token-expiration | ||
| namespacestring | Namespace to auth to in Vault | ||
| mountstring | Mount to use when authenticating to auth method. | ||
| paramsobject (keys:string, values:string) | Params to use when authenticating to Vault | ||
| headersobject (keys:string, values:string) | Headers to be included in all Vault requests. | 
VaultAuthGlobalConfigAppRole
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| roleIdstring | RoleID of the AppRole Role to use for authenticating to Vault. | ||
| secretRefstring | SecretRef is the name of a Kubernetes secret in the consumer's (VDS/VSS/PKI) namespace which provides the AppRole Role's SecretID. The secret must have a key named idwhich holds theAppRole Role's secretID. | ||
| namespacestring | Namespace to auth to in Vault | ||
| mountstring | Mount to use when authenticating to auth method. | ||
| paramsobject (keys:string, values:string) | Params to use when authenticating to Vault | ||
| headersobject (keys:string, values:string) | Headers to be included in all Vault requests. | 
VaultAuthGlobalConfigGCP
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| rolestring | Vault role to use for authenticating | ||
| workloadIdentityServiceAccountstring | WorkloadIdentityServiceAccount is the name of a Kubernetes service account (in the same Kubernetes namespace as the Vault*Secret referencing this resource) which has been configured for workload identity in GKE. Should be annotated with "iam.gke.io/gcp-service-account". | ||
| regionstring | GCP Region of the GKE cluster's identity provider. Defaults to the region returned from the operator pod's local metadata server. | ||
| clusterNamestring | GKE cluster name. Defaults to the cluster-name returned from the operator pod's local metadata server. | ||
| projectIDstring | GCP project ID. Defaults to the project-id returned from the operator pod's local metadata server. | ||
| namespacestring | Namespace to auth to in Vault | ||
| mountstring | Mount to use when authenticating to auth method. | ||
| paramsobject (keys:string, values:string) | Params to use when authenticating to Vault | ||
| headersobject (keys:string, values:string) | Headers to be included in all Vault requests. | 
VaultAuthGlobalConfigJWT
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| rolestring | Role to use for authenticating to Vault. | ||
| secretRefstring | SecretRef is the name of a Kubernetes secret in the consumer's (VDS/VSS/PKI) namespace which provides the JWT token to authenticate to Vault's JWT authentication backend. The secret must have a key named jwtwhich holds the JWT token. | ||
| serviceAccountstring | ServiceAccount to use when creating a ServiceAccount token to authenticate to Vault's JWT authentication backend. | ||
| audiencesstring array | TokenAudiences to include in the ServiceAccount token. | ||
| tokenExpirationSecondsinteger | TokenExpirationSeconds to set the ServiceAccount token. | 600 | Minimum: 600 | 
| namespacestring | Namespace to auth to in Vault | ||
| mountstring | Mount to use when authenticating to auth method. | ||
| paramsobject (keys:string, values:string) | Params to use when authenticating to Vault | ||
| headersobject (keys:string, values:string) | Headers to be included in all Vault requests. | 
VaultAuthGlobalConfigKubernetes
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| rolestring | Role to use for authenticating to Vault. | ||
| serviceAccountstring | ServiceAccount to use when authenticating to Vault's authentication backend. This must reside in the consuming secret's (VDS/VSS/PKI) namespace. | ||
| audiencesstring array | TokenAudiences to include in the ServiceAccount token. | ||
| tokenExpirationSecondsinteger | TokenExpirationSeconds to set the ServiceAccount token. | 600 | Minimum: 600 | 
| namespacestring | Namespace to auth to in Vault | ||
| mountstring | Mount to use when authenticating to auth method. | ||
| paramsobject (keys:string, values:string) | Params to use when authenticating to Vault | ||
| headersobject (keys:string, values:string) | Headers to be included in all Vault requests. | 
VaultAuthGlobalList
VaultAuthGlobalList contains a list of VaultAuthGlobal
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | VaultAuthGlobalList | ||
| metadataListMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| itemsVaultAuthGlobal array | 
VaultAuthGlobalRef
VaultAuthGlobalRef is a reference to a VaultAuthGlobal resource. A referring VaultAuth resource can use the VaultAuthGlobal resource to share common configuration across multiple VaultAuth resources. The VaultAuthGlobal resource is used to store global configuration for VaultAuth resources.
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| namestring | Name of the VaultAuthGlobal resource. | Pattern: ^([a-z0-9.-]{1,253})$ | |
| namespacestring | Namespace of the VaultAuthGlobal resource. If not provided, the namespace of the referring VaultAuth resource is used. | Pattern: ^([a-z0-9-]{1,63})$ | |
| mergeStrategyMergeStrategy | MergeStrategy configures the merge strategy for HTTP headers and parameters that are included in all Vault authentication requests. | ||
| allowDefaultboolean | AllowDefault when set to true will use the default VaultAuthGlobal resource as the default if Name is not set. The 'allow-default-globals' option must be set on the operator's '-global-vault-auth-options' flag The default VaultAuthGlobal search is conditional. When a ref Namespace is set, the search for the default VaultAuthGlobal resource is constrained to that namespace. Otherwise, the search order is: 1. The default VaultAuthGlobal resource in the referring VaultAuth resource's namespace. 2. The default VaultAuthGlobal resource in the Operator's namespace. | 
VaultAuthGlobalSpec
VaultAuthGlobalSpec defines the desired state of VaultAuthGlobal
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| allowedNamespacesstring array | AllowedNamespaces Kubernetes Namespaces which are allow-listed for use with this VaultAuthGlobal. This field allows administrators to customize which Kubernetes namespaces are authorized to reference this resource. While Vault will still enforce its own rules, this has the added configurability of restricting which VaultAuthMethods can be used by which namespaces. Accepted values: []{"*"} - wildcard, all namespaces. []{"a", "b"} - list of namespaces. unset - disallow all namespaces except the Operator's and the referring VaultAuthMethod's namespace, this is the default behavior. | ||
| vaultConnectionRefstring | VaultConnectionRef to the VaultConnection resource, can be prefixed with a namespace, eg: namespaceA/vaultConnectionRefB. If no namespace prefix is provided it will default tothe namespace of the VaultConnection CR. If no value is specified for VaultConnectionRef the Operator will default to the defaultVaultConnection, configured in the operator's namespace. | ||
| defaultVaultNamespacestring | DefaultVaultNamespace to auth to in Vault, if not specified the namespace of the auth method will be used. This can be used as a default Vault namespace for all auth methods. | ||
| defaultAuthMethodstring | DefaultAuthMethod to use when authenticating to Vault. | Enum: [kubernetes jwt appRole aws gcp] | |
| defaultMountstring | DefaultMount to use when authenticating to auth method. If not specified the mount of the auth method configured in Vault will be used. | ||
| paramsobject (keys:string, values:string) | DefaultParams to use when authenticating to Vault | ||
| headersobject (keys:string, values:string) | DefaultHeaders to be included in all Vault requests. | ||
| kubernetesVaultAuthGlobalConfigKubernetes | Kubernetes specific auth configuration, requires that the Method be set to kubernetes. | ||
| appRoleVaultAuthGlobalConfigAppRole | AppRole specific auth configuration, requires that the Method be set to appRole. | ||
| jwtVaultAuthGlobalConfigJWT | JWT specific auth configuration, requires that the Method be set to jwt. | ||
| awsVaultAuthGlobalConfigAWS | AWS specific auth configuration, requires that Method be set to aws. | ||
| gcpVaultAuthGlobalConfigGCP | GCP specific auth configuration, requires that Method be set to gcp. | 
VaultAuthList
VaultAuthList contains a list of VaultAuth
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | VaultAuthList | ||
| metadataListMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| itemsVaultAuth array | 
VaultAuthRef
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| namestring | Name of the VaultAuth resource. | ||
| namespacestring | Namespace of the VaultAuth resource. | ||
| trustNamespaceboolean | TrustNamespace of the referring VaultAuth resource. This means that any Vault credentials will be provided by resources in the same namespace as the VaultAuth resource. Otherwise, the credentials will be provided by the secret resource's namespace. | 
VaultAuthSpec
VaultAuthSpec defines the desired state of VaultAuth
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| vaultConnectionRefstring | VaultConnectionRef to the VaultConnection resource, can be prefixed with a namespace, eg: namespaceA/vaultConnectionRefB. If no namespace prefix is provided it will default tothe namespace of the VaultConnection CR. If no value is specified for VaultConnectionRef the Operator will default to the defaultVaultConnection, configured in the operator's namespace. | ||
| vaultAuthGlobalRefVaultAuthGlobalRef | VaultAuthGlobalRef. | ||
| namespacestring | Namespace to auth to in Vault | ||
| allowedNamespacesstring array | AllowedNamespaces Kubernetes Namespaces which are allow-listed for use with this AuthMethod. This field allows administrators to customize which Kubernetes namespaces are authorized to use with this AuthMethod. While Vault will still enforce its own rules, this has the added configurability of restricting which VaultAuthMethods can be used by which namespaces. Accepted values: []{"*"} - wildcard, all namespaces. []{"a", "b"} - list of namespaces. unset - disallow all namespaces except the Operator's the VaultAuthMethod's namespace, this is the default behavior. | ||
| methodstring | Method to use when authenticating to Vault. | Enum: [kubernetes jwt appRole aws gcp] | |
| mountstring | Mount to use when authenticating to auth method. | ||
| paramsobject (keys:string, values:string) | Params to use when authenticating to Vault | ||
| headersobject (keys:string, values:string) | Headers to be included in all Vault requests. | ||
| kubernetesVaultAuthConfigKubernetes | Kubernetes specific auth configuration, requires that the Method be set to kubernetes. | ||
| appRoleVaultAuthConfigAppRole | AppRole specific auth configuration, requires that the Method be set to appRole. | ||
| jwtVaultAuthConfigJWT | JWT specific auth configuration, requires that the Method be set to jwt. | ||
| awsVaultAuthConfigAWS | AWS specific auth configuration, requires that Method be set to aws. | ||
| gcpVaultAuthConfigGCP | GCP specific auth configuration, requires that Method be set to gcp. | ||
| storageEncryptionStorageEncryption | StorageEncryption provides the necessary configuration to encrypt the client storage cache. This should only be configured when client cache persistence with encryption is enabled. This is done by passing setting the manager's commandline argument --client-cache-persistence-model=direct-encrypted. Typically, there should only ever be one VaultAuth configured with StorageEncryption in the Cluster, and it should have the label: cacheStorageEncryption=true | 
VaultClientMeta
VaultClientMeta defines the observed state of the last Vault Client used to sync the secret. This status is used during resource reconciliation.
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| cacheKeystring | CacheKey is the unique key used to identify the client cache. | ||
| idstring | ID is the Vault ID of the authenticated client. The ID should never contain any sensitive information. | 
VaultConnection
VaultConnection is the Schema for the vaultconnections API
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | VaultConnection | ||
| metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| specVaultConnectionSpec | 
VaultConnectionList
VaultConnectionList contains a list of VaultConnection
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | VaultConnectionList | ||
| metadataListMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| itemsVaultConnection array | 
VaultConnectionSpec
VaultConnectionSpec defines the desired state of VaultConnection
Appears in:
| Field | Description | Default | Validation | ||
|---|---|---|---|---|---|
| addressstring | Address of the Vault server | ||||
| headersobject (keys:string, values:string) | Headers to be included in all Vault requests. | ||||
| tlsServerNamestring | TLSServerName to use as the SNI host for TLS connections. | ||||
| caCertSecretRefstring | CACertSecretRef is the name of a Kubernetes secret containing the trusted PEM encoded CA certificate chain as ca.crt. | ||||
| skipTLSVerifyboolean | SkipTLSVerify for TLS connections. | false | |||
| timeoutstring | Timeout applied to all Vault requests for this connection. If not set, the default timeout from the Vault API client config is used. | Pattern: `^([0-9]+(.[0-9]+)?(s | m | h))$` Type: string | 
VaultDynamicSecret
VaultDynamicSecret is the Schema for the vaultdynamicsecrets API
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | VaultDynamicSecret | ||
| metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| specVaultDynamicSecretSpec | 
VaultDynamicSecretList
VaultDynamicSecretList contains a list of VaultDynamicSecret
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | VaultDynamicSecretList | ||
| metadataListMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| itemsVaultDynamicSecret array | 
VaultDynamicSecretSpec
VaultDynamicSecretSpec defines the desired state of VaultDynamicSecret
Appears in:
| Field | Description | Default | Validation | ||
|---|---|---|---|---|---|
| vaultAuthRefstring | VaultAuthRef to the VaultAuth resource, can be prefixed with a namespace, eg: namespaceA/vaultAuthRefB. If no namespace prefix is provided it will default tothe namespace of the VaultAuth CR. If no value is specified for VaultAuthRef the Operator will default to the defaultVaultAuth, configured in the operator's namespace. | ||||
| namespacestring | Namespace of the secrets engine mount in Vault. If not set, the namespace that's part of VaultAuth resource will be inferred. | ||||
| mountstring | Mount path of the secret's engine in Vault. | ||||
| requestHTTPMethodstring | RequestHTTPMethod to use when syncing Secrets from Vault. Setting a value here is not typically required. If left unset the Operator will make requests using the GET method. In the case where Params are specified the Operator will use the PUT method. Please consult https://developer.hashicorp.com/vault/docs/secrets if you are uncertain about what method to use. Of note, the Vault client treats PUT and POST as being equivalent. The underlying Vault client implementation will always use the PUT method. | Enum: [GET POST PUT] | |||
| pathstring | Path in Vault to get the credentials for, and is relative to Mount. Please consult https://developer.hashicorp.com/vault/docs/secrets if you are uncertain about what 'path' should be set to. | ||||
| paramsobject (keys:string, values:string) | Params that can be passed when requesting credentials/secrets. When Params is set the configured RequestHTTPMethod will be ignored. See RequestHTTPMethod for more details. Please consult https://developer.hashicorp.com/vault/docs/secrets if you are uncertain about what 'params' should/can be set to. | ||||
| renewalPercentinteger | RenewalPercent is the percent out of 100 of the lease duration when the lease is renewed. Defaults to 67 percent plus jitter. | 67 | Maximum: 90 Minimum: 0 | ||
| revokeboolean | Revoke the existing lease on VDS resource deletion. | ||||
| allowStaticCredsboolean | AllowStaticCreds should be set when syncing credentials that are periodically rotated by the Vault server, rather than created upon request. These secrets are sometimes referred to as "static roles", or "static credentials", with a request path that contains "static-creds". | ||||
| rolloutRestartTargetsRolloutRestartTarget array | RolloutRestartTargets should be configured whenever the application(s) consuming the Vault secret does not support dynamically reloading a rotated secret. In that case one, or more RolloutRestartTarget(s) can be configured here. The Operator will trigger a "rollout-restart" for each target whenever the Vault secret changes between reconciliation events. See RolloutRestartTarget for more details. | ||||
| destinationDestination | Destination provides configuration necessary for syncing the Vault secret to Kubernetes. | ||||
| refreshAfterstring | RefreshAfter a period of time for VSO to sync the source secret data, in duration notation e.g. 30s, 1m, 24h. This value only needs to be set when syncing from a secret's engine that does not provide a lease TTL in its response. The value should be within the secret engine's configured ttl or max_ttl. The source secret's lease duration takes precedence over this configuration when it is greater than 0. | Pattern: `^([0-9]+(.[0-9]+)?(s | m | h))$` Type: string | 
VaultPKISecret
VaultPKISecret is the Schema for the vaultpkisecrets API
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | VaultPKISecret | ||
| metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| specVaultPKISecretSpec | 
VaultPKISecretList
VaultPKISecretList contains a list of VaultPKISecret
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | VaultPKISecretList | ||
| metadataListMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| itemsVaultPKISecret array | 
VaultPKISecretSpec
VaultPKISecretSpec defines the desired state of VaultPKISecret
Appears in:
| Field | Description | Default | Validation | |||
|---|---|---|---|---|---|---|
| vaultAuthRefstring | VaultAuthRef to the VaultAuth resource, can be prefixed with a namespace, eg: namespaceA/vaultAuthRefB. If no namespace prefix is provided it will default tothe namespace of the VaultAuth CR. If no value is specified for VaultAuthRef the Operator will default to the defaultVaultAuth, configured in the operator's namespace. | |||||
| namespacestring | Namespace of the secrets engine mount in Vault. If not set, the namespace that's part of VaultAuth resource will be inferred. | |||||
| mountstring | Mount for the secret in Vault | |||||
| rolestring | Role in Vault to use when issuing TLS certificates. | |||||
| revokeboolean | Revoke the certificate when the resource is deleted. | |||||
| clearboolean | Clear the Kubernetes secret when the resource is deleted. | |||||
| expiryOffsetstring | ExpiryOffset to use for computing when the certificate should be renewed. The rotation time will be difference between the expiration and the offset. Should be in duration notation e.g. 30s, 120s, etc. | Pattern: `^([0-9]+(.[0-9]+)?(s | m | h))$` Type: string | ||
| issuerRefstring | IssuerRef reference to an existing PKI issuer, either by Vault-generated identifier, the literal string default to refer to the currently configured default issuer, or the name assigned to an issuer. This parameter is part of the request URL. | |||||
| rolloutRestartTargetsRolloutRestartTarget array | RolloutRestartTargets should be configured whenever the application(s) consuming the Vault secret does not support dynamically reloading a rotated secret. In that case one, or more RolloutRestartTarget(s) can be configured here. The Operator will trigger a "rollout-restart" for each target whenever the Vault secret changes between reconciliation events. See RolloutRestartTarget for more details. | |||||
| destinationDestination | Destination provides configuration necessary for syncing the Vault secret to Kubernetes. If the type is set to "kubernetes.io/tls", "tls.key" will be set to the "private_key" response from Vault, and "tls.crt" will be set to "certificate" + "ca_chain" from the Vault response ("issuing_ca" is used when "ca_chain" is empty). The "remove_roots_from_chain=true" option is used with Vault to exclude the root CA from the Vault response. | |||||
| commonNamestring | CommonName to include in the request. | |||||
| altNamesstring array | AltNames to include in the request May contain both DNS names and email addresses. | |||||
| ipSansstring array | IPSans to include in the request. | |||||
| uriSansstring array | The requested URI SANs. | |||||
| otherSansstring array | Requested other SANs, in an array with the format oid;type:value for each entry. | |||||
| userIDsstring array | User ID (OID 0.9.2342.19200300.100.1.1) Subject values to be placed on the signed certificate. | |||||
| ttlstring | TTL for the certificate; sets the expiration date. If not specified the Vault role's default, backend default, or system default TTL is used, in that order. Cannot be larger than the mount's max TTL. Note: this only has an effect when generating a CA cert or signing a CA cert, not when generating a CSR for an intermediate CA. Should be in duration notation e.g. 120s, 2h, etc. | Pattern: `^([0-9]+(.[0-9]+)?(s | m | h | d))$` Type: string | |
| formatstring | Format for the certificate. Choices: "pem", "der", "pem_bundle". If "pem_bundle", any private key and issuing cert will be appended to the certificate pem. If "der", the value will be base64 encoded. Default: pem | |||||
| privateKeyFormatstring | PrivateKeyFormat, generally the default will be controlled by the Format parameter as either base64-encoded DER or PEM-encoded DER. However, this can be set to "pkcs8" to have the returned private key contain base64-encoded pkcs8 or PEM-encoded pkcs8 instead. Default: der | |||||
| notAfterstring | NotAfter field of the certificate with specified date value. The value format should be given in UTC format YYYY-MM-ddTHH:MM:SSZ | |||||
| excludeCNFromSansboolean | ExcludeCNFromSans from DNS or Email Subject Alternate Names. Default: false | 
VaultSecretLease
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| idstring | ID of the Vault secret. | ||
| durationinteger | LeaseDuration of the Vault secret. | ||
| renewableboolean | Renewable Vault secret lease | ||
| requestIDstring | RequestID of the Vault secret request. | 
VaultStaticCredsMetaData
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| lastVaultRotationinteger | LastVaultRotation represents the last time Vault rotated the password | ||
| rotationPeriodinteger | RotationPeriod is number in seconds between each rotation, effectively a "time to live". This value is compared to the LastVaultRotation to determine if a password needs to be rotated | ||
| rotationSchedulestring | RotationSchedule is a "cron style" string representing the allowed schedule for each rotation. e.g. "1 0 * * *" would rotate at one minute past midnight (00:01) every day. | ||
| ttlinteger | TTL is the seconds remaining before the next rotation. | 
VaultStaticSecret
VaultStaticSecret is the Schema for the vaultstaticsecrets API
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | VaultStaticSecret | ||
| metadataObjectMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| specVaultStaticSecretSpec | 
VaultStaticSecretCollectable
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| mountstring | Mount for the secret in Vault | ||
| pathstring | Path of the secret in Vault, corresponds to the pathparameter for:kv-v1: https://developer.hashicorp.com/vault/api-docs/secret/kv/kv-v1#read-secret kv-v2: https://developer.hashicorp.com/vault/api-docs/secret/kv/kv-v2#read-secret-version | ||
| versioninteger | Version of the secret to fetch. Only valid for type kv-v2. Corresponds to version query parameter: https://developer.hashicorp.com/vault/api-docs/secret/kv/kv-v2#version | Minimum: 0 | |
| typestring | Type of the Vault static secret | Enum: [kv-v1 kv-v2] | |
| transformationTransformation | Transformation provides configuration for transforming the secret data before it is stored in the CSI volume. | 
VaultStaticSecretCommon
Appears in:
| Field | Description | Default | Validation | 
|---|---|---|---|
| mountstring | Mount for the secret in Vault | ||
| pathstring | Path of the secret in Vault, corresponds to the pathparameter for:kv-v1: https://developer.hashicorp.com/vault/api-docs/secret/kv/kv-v1#read-secret kv-v2: https://developer.hashicorp.com/vault/api-docs/secret/kv/kv-v2#read-secret-version | ||
| versioninteger | Version of the secret to fetch. Only valid for type kv-v2. Corresponds to version query parameter: https://developer.hashicorp.com/vault/api-docs/secret/kv/kv-v2#version | Minimum: 0 | |
| typestring | Type of the Vault static secret | Enum: [kv-v1 kv-v2] | 
VaultStaticSecretList
VaultStaticSecretList contains a list of VaultStaticSecret
| Field | Description | Default | Validation | 
|---|---|---|---|
| apiVersionstring | secrets.hashicorp.com/v1beta1 | ||
| kindstring | VaultStaticSecretList | ||
| metadataListMeta | Refer to Kubernetes API documentation for fields of metadata. | ||
| itemsVaultStaticSecret array | 
VaultStaticSecretSpec
VaultStaticSecretSpec defines the desired state of VaultStaticSecret
Appears in:
| Field | Description | Default | Validation | ||
|---|---|---|---|---|---|
| vaultAuthRefstring | VaultAuthRef to the VaultAuth resource, can be prefixed with a namespace, eg: namespaceA/vaultAuthRefB. If no namespace prefix is provided it will default to thenamespace of the VaultAuth CR. If no value is specified for VaultAuthRef the Operator will default to the defaultVaultAuth, configured in the operator's namespace. | ||||
| namespacestring | Namespace of the secrets engine mount in Vault. If not set, the namespace that's part of VaultAuth resource will be inferred. | ||||
| refreshAfterstring | RefreshAfter a period of time, in duration notation e.g. 30s, 1m, 24h | Pattern: `^([0-9]+(.[0-9]+)?(s | m | h))$` Type: string | |
| hmacSecretDataboolean | HMACSecretData determines whether the Operator computes the HMAC of the Secret's data. The MAC value will be stored in the resource's Status.SecretMac field, and will be used for drift detection and during incoming Vault secret comparison. Enabling this feature is recommended to ensure that Secret's data stays consistent with Vault. | true | |||
| rolloutRestartTargetsRolloutRestartTarget array | RolloutRestartTargets should be configured whenever the application(s) consuming the Vault secret does not support dynamically reloading a rotated secret. In that case one, or more RolloutRestartTarget(s) can be configured here. The Operator will trigger a "rollout-restart" for each target whenever the Vault secret changes between reconciliation events. All configured targets will be ignored if HMACSecretData is set to false. See RolloutRestartTarget for more details. | ||||
| destinationDestination | Destination provides configuration necessary for syncing the Vault secret to Kubernetes. | ||||
| syncConfigSyncConfig | SyncConfig configures sync behavior from Vault to VSO | ||||
| mountstring | Mount for the secret in Vault | ||||
| pathstring | Path of the secret in Vault, corresponds to the pathparameter for:kv-v1: https://developer.hashicorp.com/vault/api-docs/secret/kv/kv-v1#read-secret kv-v2: https://developer.hashicorp.com/vault/api-docs/secret/kv/kv-v2#read-secret-version | ||||
| versioninteger | Version of the secret to fetch. Only valid for type kv-v2. Corresponds to version query parameter: https://developer.hashicorp.com/vault/api-docs/secret/kv/kv-v2#version | Minimum: 0 | |||
| typestring | Type of the Vault static secret | Enum: [kv-v1 kv-v2] |