Сервисы
secret-manager
Хранилище секретов Conveyor — метаданные в Postgres, шифрование значений через Vault Transit, резолв в рантайме.
secret-manager хранит секреты пользователей: метаданные в Postgres, а сами значения шифруются через Vault Transit. Резолвит секреты в рантайме по TCP-запросам от api и движка.
На какие вопросы отвечает раздел: Где лежат секреты и как они шифруются? Кто их запрашивает? Что нужно для работы?
Цель
Безопасно хранить и выдавать секреты процессам, не раскрывая значения в логах и БД оркестрации.
Задачи
- CRUD секретов (метаданные в Postgres);
- шифрование/дешифрование значений через Vault Transit;
- резолв секретов по TCP для api и runtime-engine/CP.
Требования
- PostgreSQL (метаданные);
- HashiCorp Vault с включённым Transit-движком и ключом (миграция на MIT-лицензированные аналоги — TBD в каталоге).
Ограничения
- в Postgres хранятся метаданные; значения шифруются через Vault Transit.
- резолв доступен по внутреннему TCP внутри сети платформы.
Настройки и переменные окружения
| Переменная | Зачем | На что влияет | По умолчанию |
|---|---|---|---|
SECRETS_TCP_LISTEN | Адрес TCP-сервиса | Порт/интерфейс резолва секретов | 0.0.0.0:3000 |
DATABASE_URL | Подключение к Postgres | Хранение метаданных секретов | — |
VAULT_ADDR | Адрес Vault | Куда ходить за шифрованием | http://vault:8200 |
VAULT_TOKEN | Токен Vault | Доступ к Transit | — |
VAULT_TRANSIT_MOUNT | Mount Transit-движка | Где расположен Transit | transit |
VAULT_TRANSIT_KEY_NAME | Имя ключа шифрования | Каким ключом шифруются значения | flowforge-secrets |
Дальше
- Секреты: со стороны редактора.
- Безопасность.