types.SecretProviderSpec
Address is the Vault server URL (required for hashicorp_vault).
auth object
Auth defines how to authenticate to this provider. Optional for cloud providers (SDK default chain), required for hashicorp_vault.
AccessKeyID is a static AWS access key ID.
ClientID is the Azure AD application (client) ID.
ClientSecretEnv is the environment variable containing the Azure client secret.
ImpersonateServiceAccount is the target service account to impersonate.
JWT is the JWT token value.
JWTEnv is the environment variable containing the JWT token.
JWTFile is the path to a file containing the JWT token.
ManagedIdentityClientID is the client ID for a user-assigned managed identity.
Method is the authentication method.
MountPath overrides the default auth mount path in Vault (e.g. "auth/approle").
Path is the path to a credential file for file-based auth.
Role is the backend role name (Vault role, AWS role, etc.) bound to the identity.
RoleID is the AppRole role ID value.
RoleIDEnv is the environment variable containing the AppRole role ID.
RoleIDFile is the path to a file containing the AppRole role ID.
SecretAccessKey is a static AWS secret access key.
SecretID is the AppRole secret ID value.
SecretIDEnv is the environment variable containing the AppRole secret ID.
SecretIDFile is the path to a file containing the AppRole secret ID.
ServiceAccountKeyFile is the path to a GCP service account key JSON file.
TenantID is the Azure AD tenant ID.
Token is a static Vault token value.
TokenEnv is the environment variable containing a static Vault token.
TokenFile is the path to the projected service account token. Default: /var/run/secrets/kubernetes.io/serviceaccount/token
DurationSeconds is the STS session duration (default: 3600, max: 43200).
EndpointURL is a custom endpoint (LocalStack, PrivateLink, VPC endpoints).
ExternalID is for sts:ExternalId trust policies.
Location is the GCP location for regional secrets.
Namespace is the Vault Enterprise namespace.
Profile is the AWS shared-config profile name.
Project is the GCP project ID (required for gcp_secret_manager).
Provider is the backend type (required).
Region is the AWS region (required for AWS providers).
RoleARN is the IAM role to assume (required for aws_sts).
SessionName appears in CloudTrail and the assumed-role ARN.
tls object
TLS configures TLS settings for the Vault connection.
CACert is the path to a custom CA certificate for verifying the server.
ClientCert is the path to a client certificate for mutual TLS.
ClientKey is the path to a client key for mutual TLS.
SkipVerify disables TLS verification. For dev/testing only.
VaultURL is the Azure Key Vault URL (required for azure_key_vault).
{
"address": "string",
"auth": {
"access_key_id": "string",
"client_id": "string",
"client_secret_env": "string",
"impersonate_service_account": "string",
"jwt": "string",
"jwt_env": "string",
"jwt_file": "string",
"managed_identity_client_id": "string",
"method": "string",
"mount_path": "string",
"path": "string",
"role": "string",
"role_id": "string",
"role_id_env": "string",
"role_id_file": "string",
"secret_access_key": "string",
"secret_id": "string",
"secret_id_env": "string",
"secret_id_file": "string",
"service_account_key_file": "string",
"tenant_id": "string",
"token": "string",
"token_env": "string",
"token_file": "string"
},
"duration_seconds": 0,
"endpoint_url": "string",
"external_id": "string",
"location": "string",
"namespace": "string",
"profile": "string",
"project": "string",
"provider": "string",
"region": "string",
"role_arn": "string",
"session_name": "string",
"tls": {
"ca_cert": "string",
"client_cert": "string",
"client_key": "string",
"skip_verify": true
},
"vault_url": "string"
}