Перейти к основному содержимому

HashiCorp Vault / SecMan

Интеграция с хранилищем секретов настраивается с помощью полей в конфигурационном файле. Ниже пример заполненных полей конфигурационного файла для подключения к HashiCorp Vault.

Последовательность действий​

Есть два способа указания секретного ключа (secret_id):

  1. Ключ явно указывается непосредственно в конфигурационном файле:

    vault: # настройки подключения
    server: <vault-url>
    namespace: <namespace>
    path: <mount-path>
    kv_version: v2
    approle:
    role_id: <role-id>
    secret_id: <secret-id>
    auth_method: approle
  2. Секрет находится в хранилище секретов и загружается приложением через метод распаковки секрета (unwrap), токен для распаковки секрета необходимо записать в файл, а путь к нему указать в конфигурации (wrapping_secret_id_file_path). В таком случае ключ в самом конфигурационном файле не присутствует, переупаковка секрета (rewrap) происходит автоматически после успешного входа в хранилище секретов:

    vault: # настройки подключения
    server: <vault-url>
    namespace: <namespace>
    path: <mount-path>
    kv_version: v2
    approle:
    role_id: <role-id>
    auth_method: approle
    wrapping_secret_id_file_path: /var/pbr/cw.wrapped.secret.vlt # путь к файлу для хранения wrapping token
    wrapping_secret_id_ttl: 8h # время жизни wrapping token (например, 10m - 10 минут, 6h - 6 часов)

По умолчанию в Vault отсутствует доступ к /sys/wrapping/rewrap endpoint, поэтому при использовании механизма распаковки/упаковки секрета secret_id важно проверить наличие прав на переупаковку секрета - rewrap:

path "sys/wrapping/rewrap" {
  capabilities = ["update"]
}

Например, так:

$ echo "path \"sys/wrapping/rewrap\" { capabilities = [\"update\"] }" | vault policy write test-policy-rewrap -
$ vault write auth/approle/role/ test-role policies="test-policy-reader,test-policy-rewrap"

Проверка результата​

Если Agent Manager, сконфигурированный через Vault, завершил выполнение без ошибок подключения/чтения ключей из Vault, то подключение произведено корректно.

Secret Management System

Настройка интеграции с SecMan и проверка результата выполняются аналогично настройке интеграции с HashiCorp Vault.