apiVersion: external-secrets.io/v1beta1 kind: ExternalSecret metadata: name: db-creds-ext spec: dataFrom: - extract: key: sovereign-creds refreshInterval: 1h secretStoreRef: name: gcp-provider kind: ClusterSecretStore target: name: db-creds creationPolicy: Owner --- apiVersion: iam.cnrm.cloud.google.com/v1beta1 kind: IAMPolicyMember metadata: name: essa-sovereign-creds spec: member: serviceAccount:ext-sec-${cluster_hash}@${gcp_project_id}.iam.gserviceaccount.com resourceRef: apiVersion: secretmanager.cnrm.cloud.google.com/v1beta1 kind: SecretManagerSecret external: projects/${gcp_project_id}/secrets/sovereign-creds role: roles/secretmanager.secretAccessor