You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug
While using a VaultDynamicSecret for a Vault database secret engine static role with a 90 day rotation period, VSO is unable to successfully rotate the k8s secret when Vault rotates the credentials.
In this instance we're rotating the database credentials for Grafana
apiVersion: secrets.hashicorp.com/v1beta1kind: VaultDynamicSecretmetadata:
annotations:
database-host: <RDS DB DNS Name>:5432name: grafana-db-credentialsnamespace: monitoringspec:
allowStaticCreds: truedestination:
create: truename: grafana-db-credentialsoverwrite: truetransformation:
excludes:
- password|usernametemplates:
GF_DATABASE_HOST:
text: | {{- $grafana := get .Annotations "database-host" -}} {{ $grafana | trim }}GF_DATABASE_PASSWORD:
text: '{{ .Secrets.password | trim }}'GF_DATABASE_USER:
text: '{{ .Secrets.username | trim }}'mount: databasepath: static-creds/grafanarolloutRestartTargets:
- kind: Deploymentname: grafanavaultAuthRef: grafana
The credentials are able to be retrieved manually and rotated successfully through Vault and confirmed to be operational. In fact when VSO does retrieve them and create the k8s secret it works fine. The issue is only when the credentials are rotated.
Expected behavior
Expect that when the credentials are rotated that VSO will update the credentials which should trigger the rolling restart and the application service should be able to connect to database and operate as normal.
Environment
Kubernetes version:
Distribution or cloud vendor (OpenShift, EKS, GKE, AKS, etc.): EKS
Other configuration options or runtime services (istio, etc.): Vault 1.18.1
vault-secrets-operator version: 0.9.1
The text was updated successfully, but these errors were encountered:
I have experienced the same behavior. A partial mitigation is to set refreshAfter to a very short interval. But that just shortens the period when application has stale credentials, rather than eliminating it.
I have also experienced same issue wherein credentials are rotated on vault but not on kubernetes secret . Currently as mitigation , I am using refreshAfter parameter in vaultDynamicSecret crd which forced CRD to refresh the secrets and also rollout the application. But this workaround is not seamless and in many scenarios the credentials may go out os sync .
Is the bug being worked on ? Any update please share
Describe the bug
While using a
VaultDynamicSecret
for a Vaultdatabase
secret engine static role with a 90 day rotation period, VSO is unable to successfully rotate the k8s secret when Vault rotates the credentials.In this instance we're rotating the database credentials for Grafana
To Reproduce
Steps to reproduce the behavior:
envFrom
for the k8s secret to be created by VSO as requiredThe credentials are able to be retrieved manually and rotated successfully through Vault and confirmed to be operational. In fact when VSO does retrieve them and create the k8s secret it works fine. The issue is only when the credentials are rotated.
Expected behavior
Expect that when the credentials are rotated that VSO will update the credentials which should trigger the rolling restart and the application service should be able to connect to database and operate as normal.
Environment
The text was updated successfully, but these errors were encountered: