Vault — Хранение секретов¶
HashiCorp Vault — это подсистема управления секретами, которая позволяет централизованно хранить и безопасно управлять конфиденциальными данными — такими как пароли, токены доступа, API‑ключи, сертификаты и др. Vault шифрует все данные перед записью, контролирует доступ на основе гибких политик (ACL) и обеспечивает аудит запросов. Одной из ключевых особенностей является автоматическая генерация временных (динамических) секретов с ограниченным сроком действия, что существенно снижает риски при утечке.
Подсистема обычно является частью платформы, располагается на LCM-узле и доступна по адресу https://vault.<имя домена>.
Также существует возможность настройки и использования собственного хранилища Vault.
Основной файл с секретами называется passwords_yml и в базовой инсталляции расположен в директории secret_v2 / deployments / <LCM FQDN> / secrets / accounts.
При использовании собственного хранилища Vault путь к файлу passwords_yaml может быть произвольным. Для конфигурации собственного хранилища выполните следующие действия:
Откройте веб-интерфейс развернутого GitLab.
Откройте проект project_k / deployments / <имя региона>.
Перейдите в раздел и укажите значения переменных:
vault_addr— адрес сервиса Vault (https://<FQDN сервиса Vault>);
vault_engine— путь к хранилищу (secret store v2);
vault_method— метод аутентификации:jwtилиpassword;
vault_password— заполните, если используется пароль для доступа к Vault;
vault_prefix— путь директории региона, не включаяpasswords_yml, например,deployments/lcm.cloud.itkey.com/my_region;
vault_role—itkey_deployments(не менять);
vault_username— укажите имя пользователя для доступа в Vault в случае использования парольной аутентификации.
В случае перезапуска контейнера Vault или перезапуска LCM-сервера, разблокируйте Vault unseal-ключом, полученным при установке платформы:
$ docker exec -it vault vault operator unseal
Система запросит ключ, который требуется ввести.