Показать / скрыть оглавление

    Конфигурирование сервера

    Файл конфигурации

    Настройка приложения Колибри может осуществляться с использованием одного или нескольких конфигурационных файлов colibriSettings*.json. Конфигурационные Файлы находятся в папке /etc/opt/colibri/ в соответствии с описанием ФС.
    Формат файлов json с дополнением в виде комментариев.

    Приложение загружает файлы параметров в следующем порядке:

    colibriSettings.json
    colibriSettings[{hostname}].json
    

    где {hostname} это название вашего сервера, которое можно получить при помощи команды hostname.
    Например, colibriSettings[sphere_demo_srv].json

    Таким образом можно экспериментировать с настройками и защитить настройки сервера от перезаписи при обновлении.
    В отдельный файл можно вынести только основные настройки специфичные для этого сервера.
    Итоговые настройки приложение получит путём слияния всех конфигурационных файлов.

    Основные настройки

    Замечание

    Здесь и далее указание пути к свойству с использованием символа: обозначает вложенные св-ва json.
    Например connection:datasource обозначает свойство DataSource внутри свойства Connection

    "connection": {
      "dataSource": "Server=srv1;Database=test;User Id=postgres;Password=P;CommandTimeout=7200;Timeout=1024"
    }
    
    Замечание

    Названия свойств без учёта регистра. Если для указанного пути к св-ву в вашем файле не существует родительского, то его нужно создать. Например для переопределения св-ва Kestrel:EndPoints:Https:Url нужно создать такой объект, заполнять ненужные св-ва не требуется.

      "Kestrel": {
        "EndPoints": {
          "Https": {
            "Url": "https://localhost:5000"
          }
        }
      }
    

    Параметры соединений

    Свойство Описание Комментарий
    connection:dataSource Строка соединения с системных ХД PostgreSQL см. https://www.npgsql.org/doc/connection-string-parameters.html
    connection:widgetCalculationTimeoutSeconds Таймаут вычисления виджета, в секундах После исчерпания таймаута в UI отобразится кнопка попробовать ещё
    connection:maxRequestBodySize Ограничивает объем прикладываемых бинарных объектов (файлов, скачиваемых отчётов и т.д.) Самый часто изменяемый параметр, также связан с ограничениями HTTP
    connection:sessionTimeoutMinutes Время жизни клиентской Cookie, в минутах После периода бездействия большего, чем это значение сессия пользователя завершится
    connection:sphereMdwhServerUrl HTTP адрес службы кубов, обязателен. Можно указать http://127.0.0.1 порт 3737 можно не указывать см. установка

    Общесистемные настройки

    Свойство Описание Комментарий
    project:caption Можно задать строку приглашения. Отображается в окне входа
    project:publicUrl Если сервер Колибри-Сфера находится за обратным прокси, необходимо задать публичный адрес.
    project:helpUrl Адрес справочной системы. По умолчанию https://sphere.demo.octonica.com/help/

    Почта

    Настройки почта не являются обязательными. Они используется для извещения пользователя о смене пароля и узлом Отправка почы.

    Свойство Описание Комментарий
    Mail:From Адрес с которого отправлять письмо. Можно использовать расширенный формат адреса c описанием ящика Колибри-Сфера <sphere@your-org-mail.ru>
    Mail:UserName Имя пользователя для подключения к smtp-серверу
    Mail:Password Пароль
    Mail:EnableSsl По умолчанию false
    Mail:Host Адрес smtp-сервера. По умолчанию localhost
    Mail:Port Порт smtp-сервера По умолчанию 25
    Mail:Timeout Таймаут отправки в секундах. 5

    Безопасность

    Настройки OpenId Connect для подключения внешнего OpenID/OAuth2.0-провайдера. Параметр Enabled включает использование секции.

    В параметре ActiveProvider указывается ключ из объекта Providers, определяющий текущий активный OpenID-провайдер.
    В секции Oidc:Providers:$(ActiveProvider) содержатся настройки подключения провайдера.

    Параметры, приведённые в таблице ниже являются стандартными (определяются в соответствии с протоколом OpenId Connect). В них указываются ), (в случае ResponseType=), и соответственно. Список всех возможных стандартных свойств можно найти в документации.

    Совет

    Параметры из этой таблицы нужно получить у владельца SSO(oidc) сервера (KeyCloak, ADFS и т.д.),

    Свойство Описание Комментарий
    Providers:$(ActiveProvider):Authority URL провайдера (или URL Realm, если провайдер поддерживает Realm-ы
    Providers:$(ActiveProvider):ResponseType Желаемый поток обработки авторизации code - использование Authorization Code Flow
    Providers:$(ActiveProvider):ClientId реквизиты для входа клиента
    Providers:$(ActiveProvider):ClientSecret реквизиты для входа клиента
    Providers:$(ActiveProvider):Scope желаемый скоуп oid, email, profile и т.д.

    Помимо стандартных параметров, специфичные для Колибри-Сферы параметры приведены в таблице:

    Свойство Описание Комментарий
    Oidc:Providers:$(ActiveProvider):CheckSessionInterval Интервал проверки активной сессии с использованием механизма Front Channel Logout. Значение указывается в формате TimeSpan. В случае отсутствия параметра в конфигурации, либо значения параметра, установленного в null, механизм Front Channel Logout не используется
    Oidc:Providers:$(ActiveProvider):MapClaims Правила мэпинга данных из различных источников (клеймы, свойств JWT, данные из userinfo) в клеймы Колибри-Сферы. В ключе правила указывается тип клейма, который требуется заполнить в Колибри. Тип может быть указан полным названием клейма, либо обозначением известного типа в виде свойства класса ClaimTypes или ColibriClaimTypes, например ClaimTypes.Name. В значении правила указывается название ключа в каком-либо источнике (клеймы, свойств JWT, данные из userinfo).
    Oidc:Providers:$(ActiveProvider):TransformRoles Правила трансформации внешних ролей из OpenID-провайдера во внутрение роли Колибри

    Пример конфигурации узла Oidc для ADFS

      "Oidc": {
        "Enabled": false,
        "ActiveProvider": "adfs", // Нужно указать ключ из свойства Providers ниже
        "Providers": {
          "adfs": {
            "Authority": "https://sso.site.ru/adfs", // адрес реалма в Keycloak
            "ResponseType": "code", // значение по умолчанию для работы Authorization Code Flow, можно не указывать
            "ClaimsIssuer": "http://sso.site.ru/adfs/services/trust",
            "ClientId": "3d147bd5-1356-4cae", // клиент и секрет
            "ClientSecret": "D_JZuAE4n6pUwosG_",
            "Scope": [ "openid", "email", "profile", "profiles" ],
            "MapClaims": { // конфигурирация отображения значений из userinfo в клэймы пользователя
              "ClaimTypes.Email": "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn",
              "ClaimTypes.Name": "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name",
              "ClaimTypes.GivenName": "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name"
            },
            "SetRolesMode": "FromExternalProvider",
            "RequiredRoleNames": [ "Sphere-Access" ]
          }
        }
      },
    

    Мониторинг

    Свойство Описание Комментарий
    Monitoring.Enabled Включить метрики производительности Включает предоставление метрик Prometheus, доступно по адресу /metrics

    Настройки OLAP кубов

    Источником кубов является служба sphere-mdwh-server файл конфигурации которой находится на сервере, указанном в св-ве connection.sphereMdwhServerUrl. Файл расположен по следующему пути /etc/opt/sphere-mdwh-server/appsettings.json.
    Справка по настройкам приведена в отдельном разделе.

    Совет

    Краткая минимальная настройка кубов: Колибри-Сфера должна указывать на адрес сервера colibri-mdwh-server его нужно записать в св-во sphereMdwhServerUrl в свою очередь colibri-mdwh-server в своём конфигурационном фале должен сослать на адрес системного ХД. Его можно скопировать из св-ва connection.dataSource.

    В начало страницы