Infisical
В Svacer реализована поддержка получения секретов из хранилища секретов Infisical. Для интеграции Svacer с хранилищем необходимо в конфигурационном файле Svacer добавить секцию security.infisical, например
security: infisical: env: "dev" client: "ba06aa0a-62fd-451c-85c4-ae547a4b4572" secret: "de6b1544af08307c249bf699455f1182e781095de4aa178998ab63c8824e570b" project_id: "09a8bf0a-7986-4c22-b663-8bc1a9a20664" url: "http://127.0.0.1:8181"
в которой будет описано подключение к проекту в infisical, в котором хранятся нужные секреты. В таблице приведено описание параметров, используемых в секции
- env; Тип секрета (dev, prog, stage)
- client; ID машины (в терминах infisical это и программа и хост)
- secret; Секрет машины для аутентификации
- project_id; ID проекта, в котором хранятся секреты
- url; Хост infisical с указанием порта и схемы
После указания секции security.infisical, можно использовать строку вида infisical:<secret_path> в значениях параметров, допускающих получение параметров из хранилища. К таким параметрам относятся:
1. tls.certFile
2. tls.keyFile
3. pg
4. ldap.?.connection.password
Внесены изменения. В полях certFile и keyFIle могут теперь находится не только пути к файлам, но и значения вида: infisical:value, где value - это путь к секрету с именем на конце. В примере /tls/CERT означает, то в папке /tls будет запрошен секрет с именем CERT. Аналогично и для keyFile. В данной реализации никакие файлы в файловой системе не создаются
#### Значение PG
Может содержать ссылку на ключ в infisical, аналогичную с TLS. В примере: будет запрошен секрет PG_CONN в корне проекта.
При старте сервера добавлена проверка на наличие конфигурации Infisical. Если она есть, то будет попытка получения секрета и если она удачна, то строка подключения к БД будет взята из infisical
В случае указания PG в cli и в конфиге - приоритет у cli
## Примечания
Названия секретов регистрозависимы