Общие сведения
Конфигурационный файл 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 #path = 'admin' dir = './webui/adm/dist' runAsService = false host = 'localhost' port = 4012 [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' [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' [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' [user_providers] [usernameBlacklistPolicy] active = false blacklistDefaultDurationDays = '365'
Описание параметров конфигурационного файла config.toml.default
Параметр | Описание |
---|---|
baseUrl | Базовый URL Системы |
cert | Путь к сертификату, который будет использоваться в Системе |
encryptionKey | Путь к файлу ключа шифрования |
issuer | Идентификатор системы (автора токена) при выдаче токенов подтверждения личности |
privateKey | Путь к закрытому ключу, который будет использоваться в Системе |
publicPath | Путь к публичной директории, где располагаются публичные ресурсы (статические файлы и шаблоны) |
backgroundTasks | Флаг, указывающий, должны ли выполняться фоновые задачи в Системе |
[kerberos] (секция параметров для настройки Kerberos-аутентификации) | |
keytab | Путь к файлу keytab, который содержит ключи аутентификации Kerberos |
serviceAccountName | Определяет имя УЗ службы, которая используется для представления приложения в системе |
requireHostAddr | Флаг, указывающий, требуется ли при аутентификации использовать IP-адрес хоста. Если значение установлено в true, при аутентификации требуется совпадение IP-адреса хоста, с которого выполняется запрос, с зарегистрированным IP-адресом в Kerberos. |
[adminconsole] (секция параметров для настройки административной консоли) | |
baseUrl | Базовый URL административной консоли |
path | Необязательный параметр. Установить для определения подпути относительно текущего домена. |
dir | Директория хранения файлов пользовательского интерфейса административной консоли |
runAsService | Флаг определяет, будет ли административная консоль запущена как отдельный сервис с отдельным URL-адресом (true) или будет запущена вместе с основным приложением и доступна по тому же URL-адресу (false). Для работы административной консоли в качестве отдельной службы значение 'baseUrl' не должно совпадать с базовым URL Системы. |
host | Хост (адрес) для административной консоли |
port | Порт, на котором работает административная консоль |
[cryptoprovider] (секция параметров для настройки крипторовайдеров) | |
pathToCProCspDir | Путь к директории с установленным криптопровайдером CryptoPro CSP |
[cryptoprovider.certToUserLink] | |
certSubjectRdnOid | OID (Идентификатор объекта) для RDN (Именованный дескриптор) сертификата пользователя |
userAttributeName | Имя атрибута пользователя, который будет использоваться при связывании сертификата с пользователем |
[database] (секция параметров для настройки подключения баз данных) | |
connectionString | Строка подключения к базе данных PostgreSQL |
driver | Драйвер базы данных |
[grpcServer] (секция параметров для настройки подключения gRPC-сервера) | |
ensureToken | Флаг, указывающий, должен ли запрос на gRPC сервере содержать токен |
host | Хост (адрес) для gRPC-сервера |
network | Сеть для gRPC-сервера |
port | Порт, на котором работает gRPC-сервер |
useTls | Флаг, указывающий, следует ли использовать TLS для защищенного соединения |
[lk] (секция параметров для настройки личного кабинета пользователя) | |
idleTimeoutInMinutes | Промежуток времени бездействия (в минутах), после которого пользователь будет отключен от личного кабинета |
path | Необязательный параметр. Установить для определения подпути относительно текущего домена. |
[metrics] (секция параметров для настройки метрик) | |
host | Хост (адрес) для метрик |
port | Порт, на котором доступны метрики |
[cookie] (секция параметров для настройки cookies-файлов) | |
path | Путь к директории для хранения файлов |
secure | Флаг устанавливается в true в случае использования защищенного соединения (https) |
http_only | Флаг устанавливается в true в случае использования незащищенного соединения (http) |
same_site | Если установлено None, то cookie будет отправлено во всех запросах к выдавшему его сайту, даже в тех, которые вызваны не связанными с ним сторонними сайтами |
max_age | Время жизни файлов, устанавливается в секундах |
[payControlConfig] (секция параметров для настройки взаимодействия с сервисом PayControl) | |
active | Флаг, указывающий, активна ли интеграция с сервисом PayControl |
apiUrl | URL-адрес API сервиса PayControl |
callbackUrl | URL-адрес обратного вызова |
systemId | Идентификатор системы для сервиса PayControl |
[qrsigninConfig] (секция параметров для настройки QR) | |
skipPassword | Флаг, указывающий, можно ли использовать вход по QR-коду без пароля |
[radiusServer] (секция параметров для настройки подключения к RADIUS-серверу) | |
address | Адрес и порт сервера RADIUS |
secret | Секрет для сервера RADIUS |
[restorePassword] (секция параметров для настройки парольной политики) | |
emulatedUsers | Количество эмулируемых пользователей для восстановления пароля |
emulationEnable | Флаг, указывающий, включить ли эмуляцию для восстановления пароля |
emulationFactors | Факторы эмуляции для восстановления пароля |
throttleOn | Флаг, указывающий, включить ли ограничение степени использования восстановления пароля |
[reverseproxyServer] (секция параметров для настройки прокси-сервера) | |
host | Хост (адрес) для обратного прокси-сервера |
port | Порт, на котором работает обратный прокси-сервер |
[selfregistration] (секция параметров для настройки параметров регистрации пользователя) | |
redirectUrl | URL-адрес перенаправления после самостоятельной регистрации пользователя |
disabled | Флаг, указывающий на отключение возможности самостоятельной регистрации пользователя |
[server] (секция базовых параметров настройки сервера) | |
host | Хост (адрес) сервера |
port | Порт, на работает сервер |
[session] (секция параметров для настройки сессионной пользовательской политики) | |
lifetimeInMinutes | Продолжительность жизни сессии пользователя в минутах |
maxCountPerUser | Максимальное количество сессий для одного пользователя |
background_verify_expired_sessions | Флаг, указывающий, будет ли обновляться статусы сессий пользователя на фронт-части приложения |
background_verify_expired_sessions_interval | Время обновления статуса сессии пользователя, в минутах |
[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 | Путь к папке с шаблонами по умолчанию |
[user_providers] (секция параметров для настройки пользовательских провайдеров) | |
[usernameBlacklistPolicy] (секция параметров для настройки политики блокировки пользователей) | |
active | Флаг, указывающий, активна ли политика блокировки имен пользователей |
blacklistDefaultDurationDays | Стандартная длительность блокировки имен пользователей |