You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
65 lines
2.1 KiB
Markdown
65 lines
2.1 KiB
Markdown
---
|
|
display_name: vault
|
|
description: Authenticates with Vault and injects secrets into the environment.
|
|
icon: ../.icons/vault.svg
|
|
maintainer_github: coder
|
|
verified: true
|
|
tags: [helper, integration, vault]
|
|
---
|
|
|
|
# Hashicorp Vault
|
|
|
|
This module authenticates with Vault and injects secrets into the environment.
|
|
> **Note:** This module does not cover setting up and configuring Vault. For that, see the [Vault documentation](https://www.vaultproject.io/docs).
|
|
|
|
```hcl
|
|
module "vault" {
|
|
source = "https://registry.coder.com/modules/vault"
|
|
vault_addr = "https://vault.example.com"
|
|
}
|
|
```
|
|
|
|

|
|
|
|
## Examples
|
|
|
|
### Configure Vault integration with a custom Vault auth id
|
|
|
|
See [docs](https://coder.com/docs/v2/latest/admin/external-auth) for more information what are external auth ids.
|
|
|
|
```hcl
|
|
module "vault" {
|
|
source = "https://registry.coder.com/modules/vault"
|
|
vault_addr = "https://vault.example.com"
|
|
vault_auth_id = "my-auth-id"
|
|
}
|
|
```
|
|
|
|
### Configure Vault integration and automatically fetch secrets from Vault
|
|
|
|
Configure Vault integration and automatically fetch secrets from Vault and inject them into the workspace environment. This works by specifying the `secrets` variable with a list of secrets paths and keys to fetch from Vault. Multiple secrets can be specified by using a map of secret paths to a list of keys to fetch from each secret. For more information, see the [Vault documentation](https://www.vaultproject.io/api-docs/secret/kv/kv-v2#read-secret-version).
|
|
|
|
```hcl
|
|
For more information, see the [Vault documentation](https://www.vaultproject.io/docs/secrets/kv/kv-v2).
|
|
|
|
```hcl
|
|
module "vault" {
|
|
source = "https://registry.coder.com/modules/vault"
|
|
vault_addr = "https://vault.example.com"
|
|
secrets = {
|
|
"secret/data/foo" = ["FOO", "BAR"]
|
|
"secret/data/bar" = ["BAZ"]
|
|
}
|
|
}
|
|
```
|
|
|
|
### Configure Vault integration and install a specific version of the Vault CLI
|
|
|
|
```hcl
|
|
module "vault" {
|
|
source = "https://registry.coder.com/modules/vault"
|
|
vault_addr = "https://vault.example.com"
|
|
vault_cli_version = "1.15.0"
|
|
}
|
|
```
|