Annotations
This section of document contains the information about Kubernetes annotation which will be used for Webhook mutation.
Based on these annotations, the secrets will be mutated.
The annotations which are currently supported:-
Vault Annotations
The available annotations for k8s vault webhook are:-
Name | Description | Required | Default |
vault.opstree.secret.manager/enabled | Enables the vault secret manager | - | false |
vault.opstree.secret.manager/service | Vault cluster address with http prefix | yes | - |
vault.opstree.secret.manager/tls-secret | Vault TLS secret name if vault is configured on TLS | no | - |
vault.opstree.secret.manager/role | Vault role created with Kubernetes serviceaccount | yes | - |
vault.opstree.secret.manager/path | Path of the secret in vault | no | - |
vault.opstree.secret.manager/k8s-token-path | Alternate kubernetes service account token path | no | /var/run/secrets/kubernetes.io/serviceaccount/token |
vault.opstree.secret.manager/path | Vault secret path | Yes | - |
vault.opstree.secret.manager/secret-version | Vault secret version (if using v2 secret engine) | Yes | - |
vault.opstree.secret.manager/use-secret-names-as-keys | treat secret path ending with / as directory where secret name is the key and a single value in each | No | - |
vault.opstree.secret.manager/auth-path | alternate kubernetes backend auth path | No | auth/kubernetes/login |
AWS Annotations
Name | Description | Required | Default |
aws.secret.manager/enabled | Enable the AWS secret manager | - | false |
aws.secret.manager/region | AWS secret manager region | no | us-east-1 |
aws.secret.manager/role-arn | AWS IAM Role to access the secret | no | |
aws.secret.manager/secret-name | Name of the AWS secret | no | |
aws.secret.manager/previous-version | If the secret is rotated, set to "true" | no | |
Azure Annotations
Name | Description | Required | Default |
azure.secret.manager/enabled | Enable the Azure Key Vault | - | false |
azure.secret.manager/vault-name | Name of the Azure Key Vault in which secrets are held | no | test-secret |
GCP Annotations
Name | Description | Required | Default |
gcp.opstree.secret.manager/enabled | enable the GCP secret manager | - | false |
gcp.opstree.secret.manager/project-id | GCP Project ID | Yes | - |
gcp.opstree.secret.manager/gcp-service-account-key-secret-name | GCP IAM service account secret name (file name must be service-account.json ) | No | Google Default Application Credentials |
gcp.opstree.secret.manager/secret-name | secret name | Yes | - |
gcp.opstree.secret.manager/secret-version | specify the secret version as string | No | Latest |