Общие сведения
Конфигурационный файл config.toml.default является шаблоном предварительных значений параметров конфигурации для запуска Системы.
Основной конфигурационный файл службы Avanpost FAM Server – config.toml, расположенный по умолчанию по пути /opt/idp/config.toml.
В случае если есть параметры, определённые в переменных окружения (ENV) – приоритет отдаётся значению, определённому в переменных окружения.
Пример конфигурационного файла config.toml.default
baseUrl = 'http://idp.avanpost.local' cert = '/home/idp/.idp/cert.pem' encryptionKey = 'key.dat' issuer = 'idp.avanpost.local' privateKey = '/home/idp/.idp/key.pem' publicPath = 'public/' backgroundTasks = false #[kerberos] #keytab = "/path/to/keytab" #serviceAccountName = "accountname" #requireHostAddr = true [adminconsole] baseUrl = 'http://idp.avanpost.local dir = './webui/adm/dist' #path = 'admin' runAsService = false host = 'localhost' port = 4012 canCreateRadiusApp = true canCreateDesktopApp = true #dleTimeoutInMinutes = 50 [cryptoprovider] pathToCProCspDir = '/opt/cprocsp/bin/amd64' [cryptoprovider.certToUserLink] certSubjectRdnOid = '1.2.643.100.3' userAttributeName = 'snils' [database] connectionString = 'postgres://avanpost:Passw0rd@localhost/idp?sslmode=disable' driver = 'pgx' [grpcServer] ensureToken = false host = 'localhost' network = 'tcp' port = 9007 useTls = false [lk] idleTimeoutInMinutes = 50 #path = 'lk' runAs = "nats" webauthnOrigin = "http://self.avanpost.local" #baseUrl SelfService [lk.nats] connection = "nats://192.168.40.131:4222" useTls = false #caCertPath = "cmd/selfservice/develop-cert-ca.pem" #clientCertPath = "cmd/selfservice/develop-cert-client.pem" #clientKeyPath = "cmd/selfservice/develop-key-client.pem" #username = "natsUser" #password = "password" [metrics] host = 'localhost' port = 9089 [cookie] path = '/' secure = false http_only = true same_site = 'None' max_age = 2592000 [payControlConfig] active = false apiUrl = 'https://stable.paycontrol.org/api4/pc/pc-api' callbackUrl = '' systemId = 'system-id-hash' [replication] memberID = '33645877-70c1-45b1-a140-ba4028f1a401' [events] maxTriesRunTasks = 25 archivatorTickerInMinutes = 5 taskExecTickerInSeconds = 20 savingDisabledFor = 'SIGNED_IN' [syslog] network = 'udp' address = '127.0.0.1:514' tag = 'FAMNode1' [qrsigninConfig] skipPassword = false [radiusServer] address = ':1812' secret = 'server_secret' [restorePassword] emulatedUsers = 32 emulationEnable = false emulationFactors = [] throttleOn = false [reverseproxyServer] host = 'localhost' port = 4010 [selfregistration] disabled = true redirectUrl = '' [server] host = 'localhost' port = 4008 [session] lifetimeInMinutes = 60 maxCountPerUser = 5 background_verify_expired_sessions = true background_verify_expired_sessions_interval = "1m" #[telegram] #accessToken = 'TELEGRAM_TOKEN' #authLifeTimeSeconds = 60 #inlineBindingEnable = true #listenerGetUpdatesTimeout = 60 #senderTimeoutMilliSeconds = 1 #verificationLifeTimeInSeconds = 60 [templates] localization = 'public/templates/localization' oauth2_error_template = 'public/templates/oauth2-error-response.html' oauth2_form_post_template = 'public/templates/oauth2-formpost-response.html' saml_response = 'public/templates/saml-response.html' templates = 'public/templates/default' [userLocker] inactivePeriodInDays = 10 [user_providers] [usernameBlacklistPolicy] active = false blacklistDefaultDurationDays = '365' [logging] level = "trace"
Описание параметров конфигурационного файла config.toml.default
| Параметр | Описание |
|---|---|
baseUrl | Базовый URL (основной URL, по которому доступен Avanpost FAM). |
cert | Путь к сертификату и ключу, которые будут использоваться в Avanpost FAM. |
privateKey | Путь к приватному ключу подписи SAML и шифрования gRPC. |
encryptionKey | Имя ключа шифрования паролей в БД, генерируется Avanpost FAM (утрата ключа приведет к необходимости повторного создания базы данных). |
issuer | Адрес автора сертификата при выдаче токенов подтверждения личности. |
publicPath | Путь размещения публичных ресурсов (статические файлы и шаблоны). |
backgroundTasks | Флаг, указывающий, должна ли выполняться задача импорта данных из MS AD (используется, когда несколько серверов FAM работают с одной БД). При значении true данные импортируются. |
[kerberos] (секция параметров для настройки Kerberos-аутентификации) | |
| keytab | Путь к keytab-файлу, который содержит ключи аутентификации Kerberos. |
| serviceAccountName | Определяет имя УЗ службы, которая используется для представления приложения в системе. |
| requireHostAddr | Флаг, указывающий, требуется ли при аутентификации использовать IP-адрес хоста. Если значение установлено в true, при аутентификации требуется совпадение IP-адреса хоста, с которого выполняется запрос, с зарегистрированным IP-адресом в Kerberos. |
[server] (секция настроек сервера) | |
| host | Хост (адрес) сервера. |
| port | Порт, на котором работает сервер. |
[database] (секция настроек базы данных) | |
| connectionString | Строка подключения к базе данных PostgreSQL. |
| driver | Драйвер базы данных. |
[adminconsole] (секция настроек административной консоли) | |
baseUrl | Базовый URL административной консоли. Для работы консоли в качестве отдельной службы значение 'baseUrl' не должно совпадать с базовым URL Avanpost FAM. |
dir | Директория хранения файлов пользовательского интерфейса административной консоли. |
path | Устанавливает относительный адрес административной консоли (необязательный параметр.) |
runAsService | Флаг определяет, будет ли административная консоль запущена как отдельный сервис с отдельным URL-адресом (true) или будет запущена вместе с основным приложением и доступна по тому же URL-адресу (false). Адрес консоли необходимо изменить при совпадении с базовым URL Avanpost FAM. |
host | Хост (адрес) административной консоли. |
port | Порт административной консоли. Если установлено runAsService = true, то необходимо изменить значение порта на отличное от других секций. Используется при настройке reverse-proxy в NGINX. |
canCreateRadiusApp | Флаг возможности создания RADIUS-приложений (по умолчанию true). |
canCreateDesktopApp | Флаг возможности создания Desktop-приложений (по умолчанию true). |
idleTimeoutInMinutes | Устанавливает длительность сессии пользователя в административной панели, в минутах. |
[lk] (секция настроек личного кабинета пользователя) | |
| idleTimeoutInMinutes | Устанавливает длительность сессии пользователя в личном кабинете, в минутах |
| dir | Директория хранения файлов интерфейса личного кабинета. |
| path | Определяет подпуть относительно текущего домена. |
verifyPermissions | Если параметру присвоено значение false, то самостоятельное изменение пользователем своих данных (фамилия, имя, отчество, электронная почта, телефон) в личном кабинете запрещено. |
runAs | Определяет режим запуска личного кабинета:
|
webauthnOrigin | URL-адрес компонента FAM SelfService, который используется для работы механизма WebAuthn. |
[cryptoprovider] (секция настроек криптопровайдера CryptoPro) | |
pathToCProCspDir | Путь к директории с установленным криптопровайдером CryptoPro CSP. |
[cryptoprovider.certToUserLink] (секция настроек сертификата криптопровайдера | |
| certSubjectRdnOid | OID (Идентификатор объекта) для RDN (Именованный дескриптор) сертификата пользователя. |
| userAttributeName | Имя атрибута пользователя, который будет использоваться при связывании сертификата с пользователем. |
[grpcServer] (секция настроек gRPC-сервера) | |
| ensureToken | Флаг, указывающий, должен ли запрос на gRPC сервере содержать токен. |
| host | Хост (адрес) для gRPC-сервера. |
| network | Сеть для gRPC-сервера. |
| port | Порт, на котором работает gRPC-сервер. |
| useTls | Флаг, указывающий, следует ли использовать TLS для защищенного соединения. |
[metrics] (секция настроек публикации метрик) | |
| host | Хост (адрес) для метрик. |
| port | Порт, на котором доступны метрики. |
[qrsigninConfig] (секция настроек для входа по QR-коду) | |
| skipPassword | Флаг, указывающий, необходим ли запрос пароля, если вход по QR-коду уже выполнен. Если флагу присвоено значение true, пароль запрошен не будет. |
| lifeTime | Устанавливает время существования QR-кода (после создания), в секундах. |
[radiusServer] (секция настройки сервера RADIUS) | |
| address | Адрес и порт сервера RADIUS. |
| secret | Секрет-пароль для аутентификации и взаимодействия клиент-сервер RADIUS. |
[restorePassword] (секция настроек восстановления пароля) | |
| emulatedUsers | Устанавливает количество эмулируемых пользователей для восстановления пароля. |
| emulationEnable | Флаг, указывающий, включить ли эмуляцию для восстановления пароля. |
| emulationFactors | Определяет факторы эмуляции для восстановления пароля. |
| throttleOn | Флаг, указывающий, включить ли ограничение степени использования восстановления пароля. |
[reverseproxyServer] (секция настроек обратного прокси-сервера) | |
| host | Хост (адрес) для обратного прокси-сервера. |
| port | Порт, на котором работает обратный прокси-сервер. |
| runNatsServer | Флаг, запускающий NATS-сервер для приема запросов от компонента FAM Reverse Proxy Service. |
[selfregistration] (секция настроек самостоятельной регистрации пользователя) | |
| redirectUrl | URL-адрес перенаправления после самостоятельной регистрации пользователя. |
| disabled | Флаг, определяющий отключение возможности самостоятельной регистрации пользователя. |
[session] (секция настроек сессионной пользовательской политики) | |
| lifetimeInMinutes | Определяет длительность сессии пользователя, в минутах. |
| maxCountPerUser | Устанавливает максимальное количество сессий для одного пользователя. |
| background_verify_expired_sessions | Флаг, включающий автоматическое удаление данных о завершенных сессиях через заданный промежуток времени. |
| background_verify_expired_sessions_interval | Определяет промежуток времени в минутах, через который будут удалены завершенные сессии. |
[templates] (секция настроек шаблонов) | |
| localization | Путь размещения директории с шаблонами локализации. |
| oauth2_error_template | Путь размещения шаблона ошибки OAuth2. |
| oauth2_form_post_template | Путь размещения шаблона формы ответа OAuth2 для метода POST. |
| saml_response | Путь размещения шаблона ответа SAML. |
| templates | Путь размещения папки с шаблонами по умолчанию. |
[cookie] (секция настроек cookies-файлов) | |
| path | Путь размещения директории для хранения файлов. |
| secure | При назначении флагу значения true используется защищенное соединение (https). |
| http_only | При назначении флагу значения true используется незащищенное соединение (http) . |
| same_site | При установлении значения None cookie будет отправлено во всех запросах к выдавшему его сайту, даже в тех, которые вызваны не связанными с ним сторонними сайтами. |
| max_age | Устанавливает время жизни cookies-файлов, в секундах. |
[payControlConfig] (секция настроек взаимодействия с сервисом PayControl) | |
| active | При присвоении флагу значения true активна интеграция с сервисом PayControl. |
| apiUrl | URL-адрес API сервиса PayControl. |
| callbackUrl | URL-адрес обратного вызова. |
| systemId | Идентификатор системы для сервиса PayControl. |
[replication] | |
memberID | Уникальный UUID, сгенерированный для репликатора и указанный в параметре |
[events] (секция настроек фоновых задач, связанных с событиями в системе) | |
maxTriesRunTasks | Максимальное количество попыток запуска фоновых задач (например, оповещения пользователя о смене пароля), связанных с событием в системе (например, сменой пароля, входом в приложение и т.д, по умолчанию 25. |
archivatorTickerInMinutes | Периодичность запуска архиватора для задач, исчерпавших максимальное количество попыток запуска, в минутах. Архивированная задача больше не запускается. |
taskExecTickerInSeconds | Периодичность запуска задач, связанных с событиями в системе, по умолчанию 20. Уменьшение значения не рекомендуется, так как ведет к повышению нагрузке. |
savingDisabledFor | Список событий, не записывающихся в базу данных и не запускающих фоновые задачи. Доступные типы событий:
|
[syslog] | |
network | Сетевой протокол, используемый для передачи syslog-сообщений. |
address | IP-адрес и порт, используемый для подключения к SIEM-системе. |
tag | Тег, добавляемый к каждому syslog-сообщению. |
tlsCertPath | Включение защищенного соединения TLS в системе журналирования. |
[restorePassword] (секция параметров для настройки парольной политики) | |
| emulatedUsers | Количество эмулируемых пользователей для восстановления пароля. |
| emulationEnable | Флаг, указывающий, включить ли эмуляцию для восстановления пароля. |
| emulationFactors | Факторы эмуляции для восстановления пароля. |
| throttleOn | Флаг, указывающий, включить ли ограничение степени использования восстановления пароля. |
[selfregistration] (секция параметров для настройки параметров регистрации пользователя) | |
| redirectUrl | URL-адрес перенаправления после самостоятельной регистрации пользователя. |
| disabled | Флаг, указывающий на отключение возможности самостоятельной регистрации пользователя. |
[server] (секция базовых параметров настройки сервера) | |
| host | Хост (адрес) сервера. |
| port | Порт, на работает сервер. |
[telegram] (секция параметров для настройки взаимодействия с Telegram) | |
| accessToken | Токен доступа Telegram, который используется для аутентификации и авторизации при взаимодействии с Telegram API. |
| authLifeTimeSeconds | Время жизни авторизации в секундах, которое определяет, сколько времени пользователю разрешено оставаться авторизованным, не выполняя повторную аутентификацию. |
| inlineBindingEnable | Флаг, указывающий, разрешено ли использование inline-привязки в Telegram для процесса аутентификации. |
| listenerGetUpdatesTimeout | Время ожидания (в секундах) для получения Системой обновлений от Telegram-бота. |
| senderTimeoutMilliSeconds | Время ожидания (в миллисекундах) для отправки сообщений. |
| verificationLifeTimeInSeconds | Время жизни верификации в секундах, которое определяет, сколько времени есть у пользователя на подтверждение операции. |
[templates] (секция параметров для настройки шаблонов) | |
| localization | Путь к директории с шаблонами локализации. |
| oauth2_error_template | Путь к шаблону ошибки OAuth2. |
| oauth2_form_post_template | Путь к шаблону формы ответа OAuth2 для метода POST. |
| saml_response | Путь к шаблону ответа SAML. |
| templates | Путь к папке с шаблонами по умолчанию. |
[userLocker] (секция настройки блокировки неактивных УЗ) | |
| inactivePeriodInDays | Время (в днях), через которое блокируется УЗ пользователя, не выполнявшего действий в течение этого периода. |
[user_providers] (секция параметров для настройки пользовательских провайдеров) | |
[usernameBlacklistPolicy] (секция параметров для настройки политики блокировки пользователей) | |
| active | Флаг, указывающий, активна ли политика блокировки имен пользователей. |
| blacklistDefaultDurationDays | Стандартная длительность блокировки имен пользователей. |
[logging] (секция уровня логирования) | |
| level | Уровень логирования системы. |