Справка Business Studio
Переход на сайт нейросети Perplexity AI для поиска информации о Business Studio. Подробнее о возможности см. по ссылке

Содержание справки

Настройка файла appsettings.json

Файл appsettings.json содержит конфигурацию сервиса bs-backend в формате JSON. Данный файл используется для управления доступом групп пользователей и настройки баз данных.

Внимание! Некоторые значения из .env могут переопределять параметры в файле appsettings.json. В связи с этим ряд параметров целесообразнее изменять через файл .env, чтобы избежать ручного поиска и правок соответствующих значений в appsettings.json. Какие параметры могут быть переопределены — указано в файле .env.

Файл appsettings.json находится по следующему пути:

.../DockerCompose/bs-backend/settings

Файл appsettings.json необходимо настраивать на основе Содержимое appsettings.jsonc, в котором наглядно показано, какая настройка за что отвечает. Часть настроек в appsettings.json уже будет заполнена и изменений не требует (например, настройки «Queues» (очереди Kafka)).

Файл Содержимое appsettings.jsonc включает в себя фрагмент, где описано, как можно настроить подключение к базе данных. Аналогично можно настроить и подключение к несколькоим базам. Для этого можно скопировать существующий блок конфигурации и изменить в нем параметры подключения (Server, Db, Name и т.д.).

Ниже приведен пример, в котором добавлено две базы данных с именами «db_name_1» и «db_name_2».

"DbConnections": [
  {
    "Server": "postgresql:5432",
    "Db": "db_name_1",
    "Name": "db_name_1",
    "DisplayName": "Основная база",
    "DbType": "PGSQL",
    "SqlUser": "postgres",           // ваш пользователь
    "SqlPass": "ВАШ_ПАРОЛЬ_ОТ_POSTGRES",
 
    // ветви и издания (для мультибазового режима)
    "Branches": [
      {
        "Branch": 0,
        "Editions": [
          {
            "Edition": "Ultimate",
            "ClientProcessPreloadCount": 5,
            "OtherProcesses": [
              { "AdditionalCommandLine": "/CONSUMERTOPICNAME=ui_actions", "Count": 5 },
              { "AdditionalCommandLine": "/CONSUMERTOPICNAME=server_actions", "Count": 2 }
            ]
          }
        ]
      }
    ]
  },
  {
    "Server": "postgresql:5432",
    "Db": "db_name_2",
    "Name": "db_name_2",
    "DisplayName": "Дополнительная база",
    "DbType": "PGSQL",
    "SqlUser": "postgres", 
    "SqlPass": "ВАШ_ПАРОЛЬ_ОТ_POSTGRES",
 
    "Branches": [
      {
        "Branch": 0,
        "Editions": [
          {
            "Edition": "Ultimate",
            "ClientProcessPreloadCount": 5,
            "OtherProcesses": [
              { "AdditionalCommandLine": "/CONSUMERTOPICNAME=ui_actions", "Count": 5 },
              { "AdditionalCommandLine": "/CONSUMERTOPICNAME=server_actions", "Count": 2 }
            ]
          }
        ]
      }
    ]
  }
],

В случае использования PostgreSQL в качестве СУБД дополнительные настройки не требуются. В файле appsettings.json уже приведена базовая конфигурация для подключения. Если вы используете MS SQL Server, то необходимо учесть следующию особенности:

  1. В Server самостоятельно указать IP и порт сервера MS SQL Server через запятую.
  2. В DbType указать MSSQL.
  3. Использовать параметр TrustServerCertificate — используется для решения проблем с сертификатами со значением true в случае возникновения ошибок проверки SSL-сертификата (например, при использовании самоподписанных сертификатов на стороне SQL-сервера). Данная настройка позволяет веб-серверу доверять сертификату сервера базы данных без дополнительной проверки цепочки доверия, если они есть.

Пример представлен ниже:

"Server": "IP,Порт",
"Db": "MasterBase",
"Name": "demo",
"DisplayName": "MasterBase",
"DbType": "MSSQL",
"TrustServerCertificate": true,
"SqlUser": "SQL_user_admin",
"SqlPass": "password"