Infisical: Difference between revisions

From Svacer Wiki
No edit summary
No edit summary
Line 33: Line 33:
|Хост infisical с указанием порта и схемы
|Хост infisical с указанием порта и схемы
|}
|}
После указания секции '''security.infisical''', можно использовать строку вида <code>infisical:<secret_path></code> в значениях параметров конфигурационного файла '''Svacer''', допускающих получение параметров из хранилища. К таким параметрам относятся следующие:
После указания секции '''security.infisical''', можно использовать ссылки вида <code>infisical:<secret_path></code> в значениях параметров конфигурационного файла '''Svacer''', допускающих получение параметров из хранилища. К таким параметрам относятся следующие:


1. tls.certFile
* tls.certFile
* tls.keyFile
* pg
* ldap.[name].connection.password


2. tls.keyFile
Ниже приводится пример указания ссылок для получения данных параметров:


3. pg
4. ldap.[name].connection.password


Внесены изменения. В полях certFile и keyFIle могут теперь находится не только пути к файлам, но и значения вида: infisical:value, где value - это путь к секрету с именем на конце. В примере /tls/CERT означает, то в папке /tls будет запрошен секрет с именем CERT. Аналогично и для keyFile. В данной реализации никакие файлы в файловой системе не создаются
Внесены изменения. В полях certFile и keyFIle могут теперь находится не только пути к файлам, но и значения вида: infisical:value, где value - это путь к секрету с именем на конце. В примере /tls/CERT означает, то в папке /tls будет запрошен секрет с именем CERT. Аналогично и для keyFile. В данной реализации никакие файлы в файловой системе не создаются

Revision as of 11:32, 16 May 2025

В 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> в значениях параметров конфигурационного файла Svacer, допускающих получение параметров из хранилища. К таким параметрам относятся следующие:

  • tls.certFile
  • tls.keyFile
  • pg
  • ldap.[name].connection.password

Ниже приводится пример указания ссылок для получения данных параметров:


Внесены изменения. В полях certFile и keyFIle могут теперь находится не только пути к файлам, но и значения вида: infisical:value, где value - это путь к секрету с именем на конце. В примере /tls/CERT означает, то в папке /tls будет запрошен секрет с именем CERT. Аналогично и для keyFile. В данной реализации никакие файлы в файловой системе не создаются

#### Значение PG

Может содержать ссылку на ключ в infisical, аналогичную с TLS. В примере: будет запрошен секрет PG_CONN в корне проекта.

При старте сервера добавлена проверка на наличие конфигурации Infisical. Если она есть, то будет попытка получения секрета и если она удачна, то строка подключения к БД будет взята из infisical

В случае указания PG в cli и в конфиге - приоритет у cli

## Примечания

Названия секретов регистрозависимы