Системные настройки — Администрирование¶
Обзор¶
Домен system — кросс-доменный административный контур, включающий глобальные настройки приложения, сервисы интеграций, модули, управление фоновыми задачами и инфраструктурные провайдеры. Администрирование использует:
- Автоадминка (dbadmin) — 24+ форм (system-settings 364 поля/21 секция, кастомные настройки, модули, локализация, 17+ форм интеграционных сервисов)
- EntityEditor — 10 схем (
authenticationProviders,domains,fileProviders,fileProviderDefault,includes,licenses,licensesList,smsProviders,smsProviderSettings,shortlinks) - Admin API — 6+ контроллеров (модули, сервисы, jobs, LDAP, auth-провайдеры, файловые провайдеры, includes)
Механизмы администрирования¶
Автоадминка (dbadmin) — основные формы¶
| Alias формы | Название | Таблица БД | Полей | Секций | Deps | Папка |
|---|---|---|---|---|---|---|
system-settings ¹ |
Общие настройки приложения | dbo.Settings | 364 | 21 | 7 | Системные настройки |
custom-settings |
Кастомные настройки приложения | dbo.SettingsCustom | 6 | 1 | 0 | Системные настройки |
modules |
Модули | dbo.Modules | 3 | 1 | 0 | Дополнительно |
localization-resources |
Ресурсы локализации | dbo.LocalizationResources | 5 | 1 | 0 | Устаревшее |
equivalent-chars |
Равнозначные буквы | dbo.EquivalentChars | 4 | 1 | 0 | Служебное |
system-services |
Сервисы | dbo.ServicesSettings | 5 | 1 | 0 | Подключения |
¹ Форма system-settings использует автоадминку в режиме edit (Url = /admin-ds/forms/system-settings/edit?column=[SettingID]&value=1). Таблица dbo.Settings содержит единственную строку, поэтому грид не нужен — клик ведёт сразу в форму редактирования.
Автоадминка (dbadmin) — интеграционные сервисы¶
| Alias формы | Название | Таблица БД | Полей | Папка |
|---|---|---|---|---|
authentication-providers |
Провайдеры аутентификации | dbo.AuthenticationProviders | 13 | Подключения |
active-directory-service-settings |
Сервис Active Directory | dbo.LDAPServicesCredentials | 7 | Подключения |
openldap-service-settings |
Сервис OpenLDAP | dbo.OpenLDAPServicesCredentials | 8 | Подключения |
oauth-service-settings |
Сервис OAuth | dbo.OAuthServicesSettings | 9 | Подключения |
saml-service-settings |
Сервис SAML | dbo.SAMLServicesSettings | 6 | Подключения |
radius-service-settings |
Сервис Radius | dbo.RadiusServicesCredentials | 6 | Подключения |
multifactor-service-settings |
Сервис Multifactor | dbo.MultifactorCredentials | 6 | Подключения |
ews-service-settings |
Сервис ExchangeWebService | dbo.EwsServiceSettings | 12 | Подключения |
diadoc-service-settings |
Сервис Diadoc | dbo.DiadocServiceCredentials | 8 | Подключения |
sbis-service-settings |
Сервис Sbis | dbo.SbisCredentials | 9 | Подключения |
dadata-service-settings |
Сервис Dadata | dbo.DadataServiceCredentials | 5 | Подключения |
paycontrol-service-settings |
Сервис PayControl | dbo.PayControlServiceCredentials | 10 | Подключения |
tika-service-settings |
Сервис Tika | dbo.TikaServiceSettings | 8 | Подключения |
azure-service-settings |
Сервис TranslateService | dbo.AzureCognitiveServiceCredentials | 8 | Подключения |
universalapi-service-settings |
Сервис UniversalApi | dbo.UniversalApiServiceSettings | 7 | Подключения |
vector-search-service-settings |
Сервис VectorSearch | dbo.VectorSearchServiceSettings | 4 | Подключения |
EntityEditor¶
| Схема JSON | Таблица | Назначение |
|---|---|---|
authenticationProviders |
dbo.AuthenticationProviders | Расширенная настройка auth-провайдеров |
domains |
dbo.Domains | Домены организации |
fileProviders |
dbo.FileProviders | Файловые провайдеры хранилища |
fileProviderDefault |
(виртуальная) | Провайдер по умолчанию |
includes |
dbo.Includes | Глобальные JS/CSS includes |
licenses |
dbo.Licenses | Управление лицензиями |
licensesList |
(связанная) | Список лицензий |
smsProviders |
dbo.SmsProviders | SMS-провайдеры |
smsProviderSettings |
(связанная) | Настройки SMS-провайдера |
shortlinks |
dbo.ShortLinks | Короткие ссылки |
Admin API контроллеры¶
| Контроллер | Маршрут | Методы | Назначение |
|---|---|---|---|
| ModulesAdminController | /api/admin/modules |
GET, POST, PUT | Управление модулями |
| ServicesAdminController | /api/admin/services |
GET, POST | Состояние и управление сервисами |
| JobsAdminController | /api/admin/jobs |
GET, POST | Управление фоновыми задачами |
| LdapAdminController | /api/admin/ldap |
GET, POST | Управление LDAP-провайдерами |
| AuthProvidersController | /api/admin/authentication-providers |
GET, POST, DELETE | CRUD auth-провайдеров |
| FileProvidersController | /api/admin/fileproviders |
GET, POST, PUT | Файловые провайдеры |
| IncludesController | /api/admin/includes |
GET, POST, DELETE | Глобальные includes |
Ключевые настройки¶
Общие настройки приложения (Settings)¶
Где настраивается: автоадминка → форма system-settings
Таблица БД: dbo.Settings
364 поля в 21 секции. Крупнейшая форма в системе. Содержит глобальные флаги и лимиты:
| Секция (примеры) | Что контролирует |
|---|---|
| Общие | Имя системы, URL, таймзона |
| Файлы | Квоты, версионирование, провайдеры |
| Безопасность | Сложность паролей, блокировка, сессии |
| Почта | SMTP-параметры, шаблоны |
| Уведомления | Push, email-дайджесты |
| Интерфейс | Темы, локализация, логотип |
Зависимости (deps): 7 зависимостей между полями (условная видимость секций/полей).
Эффект в runtime: значения кэшируются в SettingsService и влияют на все домены приложения.
Кастомные настройки (SettingsCustom)¶
Где настраивается: автоадминка → форма custom-settings
Таблица БД: dbo.SettingsCustom
6 полей: Key/Value пары для доменных feature flags. Ключевые записи:
- socialNetworksSettings — конфигурация социальной сети
- SpaceSettings — конфигурация пространств
- Другие доменные настройки в формате JSON
Эффект в runtime: читаются через SettingsCustomService, влияют на portal, social-network, spaces и другие домены.
Провайдеры аутентификации¶
Где настраивается: автоадминка → форма authentication-providers / EntityEditor → authenticationProviders
Таблицы БД: dbo.AuthenticationProviders, dbo.AuthenticationProviderGroups
13 полей + 15 зависимостей: модель входа, поддерживаемые способы аутентификации, привязка к группам.
Эффект в runtime: определяет доступные способы входа в систему для разных групп пользователей.
Интеграционные сервисы¶
Где настраивается: автоадминка → соответствующие формы *-service-settings
Таблицы БД: по одной таблице credentials на каждый сервис
Подключение к внешним системам: LDAP, OAuth, SAML, EWS, Diadoc, Sbis, Dadata, Tika, и т.д. Каждая форма содержит URL сервиса, учётные данные, параметры подключения.
Файловые провайдеры¶
Где настраивается: EntityEditor → fileProviders / Admin API → FileProvidersController
Таблица БД: dbo.FileProviders
Провайдеры файлового хранилища. Влияют на домены disk, files, ext-params.
Фоновые задачи (Jobs)¶
Где настраивается: Admin API → JobsAdminController
Маршрут: /api/admin/jobs
Управление фоновыми задачами: просмотр состояния, блокировка/разблокировка, настройки расписания.
CustomSettings — параллелизм и таймауты QueuedHostedService¶
| Ключ | Тип / Default | Назначение |
|---|---|---|
BackgroundQueueMaxConcurrency |
int / 50 |
Максимум фоновых задач, выполняемых одновременно в QueuedHostedService. При значении 1 задачи обрабатываются последовательно (поведение до v2.268) |
BackgroundQueueTaskTimeoutMinutes |
int / 10 |
Таймаут одной фоновой задачи (мин). По истечении задача прерывается |
LazyJobsNumberOfItemsToProcessInBatch |
int / — | Размер batch'а, обрабатываемого за один тик LazyUpdatableCachesUpdateJob |
LazyJobsShowDetailedLog |
bool | Выводит подробные сообщения от LazyUpdatableCachesUpdateJob (ключи и значения) — используется для диагностики кэшей |
QuartzRunInClusterMode |
bool / false |
Кластерный режим Quartz: координация запусков джобов между несколькими экземплярами приложения. По умолчанию выключен |
QueueEventsAmount |
int | Сколько событий обрабатывает джоб очереди за один запуск. Регулирует пропускную способность очереди событий |
DisableAllCachesUpdate |
bool / false |
Отключает автоматическое обновление кэша после импорта конфигурации. Используется при массовых импортах для ускорения; после импорта кэш надо перестроить вручную |
CommitTransactionAfterSubcatIDChange |
bool / false |
Если true — обновление ДП при переносе задачи между категориями (через dbo.UpdateTaskSubcatIDIsClosed) выполняется вне общей транзакции. Используется для обхода долгих блокировок |
MigrationExportSettings |
string (JSON) | Список типов объектов, исключаемых из экспорта конфигурации (см. процедуру экспорта-импорта). Применяется при миграциях между инсталляциями |
Изменение
BackgroundQueueMaxConcurrencyвлияет на нагрузку на CPU и пул соединений с БД. Поднимать выше 50 имеет смысл только при наличии свободных ресурсов и при подтверждённом «сужении» очереди задач.
Глобальные includes (JS/CSS)¶
Где настраивается: EntityEditor → includes / Admin API → IncludesController
Таблица БД: dbo.Includes
Глобальные JS/CSS-вставки используются в актуальном админском контуре как рабочий функционал (не только legacy).
Для грида включений в AdminSPA endpoint GET /api/includes/get-all возвращает список включений с привязкой к подкатегориям:
IdTypeNameSubcategories[{Id, Name}]
Типичные ошибки настройки¶
| Симптом | Причина | Где проверить | SQL-диагностика |
|---|---|---|---|
| Пользователи не могут войти после смены auth-провайдера | Неверная привязка провайдера к группам | Форма authentication-providers |
select ap.*, apg.GroupId from dbo.AuthenticationProviders ap left join dbo.AuthenticationProviderGroups apg on ap.Id = apg.ProviderId |
| Интеграционный сервис «включён», но не работает | Неверные credentials | Соответствующая форма *-service-settings |
select * from dbo.{ServiceTable} |
| Проблемы с файлами после правок infrastructure | Неверный файловый провайдер | EntityEditor fileProviders |
select * from dbo.FileProviders |
| Фоновые процессы не исполняются | Job заблокирован или неверные настройки | /api/admin/jobs |
Проверить состояние через API |
| UI нестабилен после изменения global settings | Критичные флаги в Settings | Форма system-settings |
select * from dbo.Settings |
| Доменная функция не работает | Неверный ключ в SettingsCustom | Форма custom-settings |
select * from dbo.SettingsCustom where [Key] = '{keyName}' |
Глобальные настройки платформы (форма system-settings)¶
Форма
system-settingsсодержит 364 поля в 21 секции. Ниже описаны ключевые инварианты и смысловые кластеры, критичные для администрирования. Карта всех форм автоадминки:../../reference/database/dbadmin-forms-map.md.
Критические инварианты — ⚠️ необратимые или неочевидные настройки¶
HSTS (HTTP Strict Transport Security)¶
Настройка: Использовать HSTS. После включения все браузеры, хоть раз заходившие на площадку, запоминают флаг и требуют HTTPS.
⚠️ Настройка необратима. После включения её нельзя отключить — пользователи, получившие HSTS-заголовок, не смогут зайти по HTTP до истечения срока действия заголовка. Администратор не может принудительно сбросить кеш HSTS в браузерах пользователей.
Квота личной папки на Диске¶
Настройка: Квота личной папки пользователя в файловом хранилище (байты).
- Значение по умолчанию: 5 GB (5 368 709 120 байт).
- ⚠️ Если значение не задано или равно 0 — папка «Мои файлы» раздела Диск недоступна для всех пользователей. Без квоты файловый раздел полностью выключен.
- Квота распространяется на все файлы, где пользователь является владельцем (кто вложил файл). Файлы в задачах и чатах не учитываются.
- Для загрузки файлов > 300 МБ требуются дополнительные изменения в системных файлах приложения.
Минимальное количество символов для поиска¶
Настройка: Количество обязательных символов для поиска.
⚠️ Принудительный минимум — 3 символа, независимо от значения настройки. Поиск по 1–2 символам невозможен. Ограничение действует на:
- Общий поиск в панели навигации
- Меню «Сотрудники»
- Табличное представление списка задач (кроме числовых колонок)
- ДП «Lookup-поле» и «Выбор пользователей» в карточке задачи
Не распространяется на режим администрирования. Значение транслируется в параметр NumberCharactersForSearch файла app-settings.json.
Делегирование подписи¶
Настройка: Пользователь всегда может делегировать свою подпись.
- Если настройка включена — пользователь может делегировать подпись, если у подписи есть такая резолюция. Право доступа «Добавлять и менять акцептантов» в категории не проверяется.
- Если настройка отключена — делегирование доступно только при наличии права «Добавлять и менять акцептантов» в категории.
⚠️ Частая причина несоответствия ожиданий при разграничении доступа к делегированию подписи.
Руководитель наследует право просмотра¶
Настройка: Руководитель наследует право на просмотр задач, где его подчинённые — заказчики или исполнители.
⚠️ После изменения этой настройки автоматически вызывается GenerateExtParamRightsFunctions — пересчёт прав для всех категорий с ДП-доступом. На крупных инсталляциях пересчёт может занять значительное время.
Настройка учитывает только роль пользователя в задачах, независимо от прав доступа в категории. По умолчанию руководители не наследуют право доступа по группам на просмотр всех задач категории от подчинённых; включить такое наследование можно через кастомную настройку ForbidSubcatRightsInheritanceToDirector.
Обязательные поля профиля при самостоятельной регистрации¶
Настройка: Обязательные поля профиля пользователя (Дата рождения, Псевдоним, E-mail, Внешний E-mail).
⚠️ Если в кастомной настройке RegistrationFields (ключ SettingsCustom) задан блок PasswordSettings или список обязательных полей — он имеет приоритет выше, чем флаги в форме system-settings. Это относится только к форме самостоятельной регистрации.
Удаление истории акцептантов подписи¶
Настройка: Удалять историю акцептантов подписи после обработки.
- Если настройка включена — после обработки подписи в БД остаётся только фактически подписавший. Информация о том, у кого была запрошена подпись, теряется.
- Если настройка отключена — сохраняется и первоначальный акцептант, и фактически подписавший.
Важно для контроля деятельности заместителей: если заместитель подписал за руководителя, при выключенной настройке видно, что подпись была запрошена у руководителя, а обработана заместителем.
Системные сущности¶
Администраторская группа¶
Настройка: Администраторская группа.
Только пользователи указанной группы видят интерфейс администрирования. Если группа не задана — административный UI закрыт для всех.
Системные категории¶
| Категория | Поле в форме | Назначение |
|---|---|---|
| Личные задачи | Категория для личных задач | Создание личных задач пользователей |
| Ошибки | Категория для ошибок | Регистрация ошибок — если задана, на странице ошибок отображается кнопка «Поставить задачу Техподдержке» |
| Обратная связь | Категория для обратной связи | Вопросы пользователей по использованию системы |
| Анонимные задачи | Категория для анонимных задач | Задачи, создаваемые от имени анонимного пользователя для автоматизации |
Каждая категория назначается отдельным полем. Если не задана — соответствующая функция недоступна.
Системные пользователи¶
| Пользователь | Поле в форме | Назначение |
|---|---|---|
| Пользователь для анонимных публикаций | Пользователь для анонимных публикаций | Создание анонимных задач |
| Диспетчер задач | Диспетчер задач | Создание объектов с опцией «от имени диспетчера задач» |
| Робот нотификатор | Робот нотификатор | Рассылка уведомлений о пропущенных звонках |
Системные подписи¶
| Подпись | Поле в форме | Назначение |
|---|---|---|
| Подпись заказчика | Подпись заказчика | Запрашивается при завершении задач, если у заказчика включено «Требует акцепта всех своих задач» |
| Подпись пользователя | Подпись пользователя | Используется как личная динамическая подпись. ⚠️ Заполняется автоматически при инсталляции — изменять не рекомендуется |
| Подпись на согласование трудозатрат | Подпись на согласование плановых трудозатрат | Запрашивается при согласовании плановых трудозатрат |
| Подпись на согласование исполнителей | Подпись на согласование плановых исполнителей | Запрашивается при согласовании плановых исполнителей |
Группы по умолчанию¶
| Группа | Поле в форме | Назначение |
|---|---|---|
| Группа по умолчанию | Группа по умолчанию для новых пользователей | Назначается новым пользователям с признаком «Сотрудник компании» |
| Группа для внешних | Группа для внешних пользователей | Назначается пользователям без признака «Сотрудник компании» |
Логирование производительности¶
Логирование смарт-операций (4 порога)¶
Каждый вид логирования имеет отдельное поле и независимый порог (мс):
| Вид логирования | Поле в форме | Минимум | Рекомендация | Значение 0 |
|---|---|---|---|---|
| Смарт-запросы | Логировать время выполнения smart запросов дольше мс. | 100 мс | 200 мс | Логировать все |
| Смарт-действия | Логировать время выполнения smart действий дольше мс. | 100 мс | 200 мс | Логировать все |
| Пакеты действий | Логировать выполнение smart пакетов действий дольше мс. | 100 мс | 200 мс | Логировать все |
| Смарт-доступ | Логировать выполнение smart доступа дольше мс. | 100 мс | 200 мс | Логировать все |
⚠️ Минимально допустимое значение — 100 мс. Значения < 100 система не позволит сохранить.
С v2.264 Кассиопея логирование пакетов действий также охватывает смарт-расписания.
Результаты записываются в журнал выполнения автоматизации (таблица AutomationLog). Подробнее: ../../platform/database/journals.md.
Смарт-доступ логируется отдельно, детали администрирования — ../smart-actions/admin.md.
SQL-логирование¶
Настройка: Логировать SQL запросы (мс, по умолчанию 200 мс).
При наличии кастомной настройки LogPlanExecution (SettingsCustom) для запросов, превысивших указанный в ней порог, дополнительно формируется план выполнения и записывается в колонку «План запроса» журнала автоматизации. ⚠️ Функция планов выполнения — только PostgreSQL.
Глубина рекурсии смарт-пакетов¶
Настройка: Глубина рекурсии смарт-пакетов (default = 10).
При превышении глубины рекурсивных вызовов смарт-действия в рамках одного потока (TaskID + UserID + контекст) генерируется ошибка в журнале ошибок. Не применяется к пакетам, выполняющимся в рамках расписаний и циклических пакетов.
Сроки хранения журналов¶
Все настройки задаются в Общих настройках приложения. Старые записи удаляются автоматически (housekeeping-джобы; подробности — ../../platform/database/db-housekeeping.md).
| Журнал | Параметр | Default |
|---|---|---|
| Журнал ошибок | Срок хранения в логе ошибок истории (дни) | 14 дней |
| Журнал звонков | Время жизни записи в журнале звонков | 7 дней |
| Журнал действий с файлами | Время жизни записи в журнале действий с файлами | 7 дней |
| Журнал активности пользователя | Срок хранения информации о активности пользователя в системе | 14 дней |
⚠️ Большой срок хранения увеличивает размер таблиц-журналов и может отрицательно сказаться на быстродействии. Перед увеличением — проверьте дисковое потребление и индексы.
Связанные настройки активности:
| Параметр | Назначение |
|---|---|
| Включить мониторинг активности пользователя в системе | Если включено — ведётся журнал онлайн-времени пользователей |
| Включить мониторинг действий пользователя в мобильном приложении | Если включено — в UserCounters / UserCountersLog пишутся вход/комментарии/просмотры из МП |
| Время неактивности (мин) | Период неактивности, после которого пользователь считается оффлайн (имя в UI не подсвечивается зелёным) |
| Интервал обновления в оффлайне (мин) | Как часто браузер обновляет счётчик непрочитанных, когда пользователь оффлайн, но вкладка с 1Ф открыта |
Активность определяется per-tab: при сворачивании браузера или переключении на другую вкладку 1Ф учитывает это для счётчика конкурентных лицензий (
ConcurrentSessionMinLengthInMinutes, см.auth/admin.md).
Требования к паролям¶
⚠️ Параметры данного блока применяются только к созданию/сбросу паролей пользователей из режима администрирования. Для самостоятельной регистрации требования задаются в кастомной настройке RegistrationFields (блок PasswordSettings) — см. ../auth/admin.md.
| Параметр | Поле в форме | Описание |
|---|---|---|
| Срок действия | Срок действия пароля (дни) | Только для Forms-авторизации. При просрочке — принудительная смена |
| Мин. длина | Минимальная длина пароля | Если не задано — без ограничения |
| Макс. длина | Максимальная длина пароля | Если не задано — без ограничения |
| Спецсимволы | Пароль должен содержать минимум один символ, не являющийся буквой или цифрой | !, @, #, $, % |
| Заглавные буквы | Пароль должен содержать минимум одну заглавную букву | Хотя бы одна прописная |
| Запрет совпадения с логином | Пароль может совпадать с логином | При включении — совпадение разрешено |
| История паролей | Длина истории паролей | Количество предыдущих паролей, запрещённых к повторному использованию |
| Проверка даты рождения | Проверять пароль на наличие даты рождения | Запрещает пароль, содержащий дату рождения пользователя |
| Клавиатурные ряды | Минимальная длина последовательности символов для проверки | Цифры (123…), алфавит (abc…), клавиатурные ряды (йцукен/qwerty/azerty и т.д.) |
| Повторяющиеся паттерны | Минимальная длина повторяющегося паттерна для проверки | Например, qweqwe, 123123. Только непосредственный повтор, не разрозненный |
Дизайн карточки задачи МТФ (v2.264 Кассиопея)¶
Блок настроек доступен начиная с версии 2.264. Позволяет кастомизировать внешний вид карточки задачи.
Фон и обводка полей¶
| Настройка | Значения |
|---|---|
| Включить фон полей МТФ | on/off (default = off) |
| Цвет фона полей МТФ | default, primary, level-zero, level-one, level-two, level-three |
| Включить обводку полей МТФ | on/off (default = off) |
| Цвет обводки полей МТФ | default, shallow, base, deep, primary |
Блоки МТФ¶
| Настройка | Значения |
|---|---|
| Стиль фона блоков МТФ | default (по умолчанию), none (без фона), color (цветной) |
| Цвет фона блоков МТФ | default, primary, level-zero, level-one, level-two, level-three (только при стиле color) |
Иконки, аватары, кнопки¶
| Настройка | Значения |
|---|---|
| Цвет иконок ДП МТФ | default, brand, primary, secondary, tertiary |
| Цвет аватаров | Цветные (по умолчанию) / Брендовые / Серые — единый цвет на всю площадку, не затрагивает аватары чатов и задач |
| Стиль базовых кнопок | По умолчанию, Стиль 1, Стиль 2, Стиль 3 — применяется в карточке создания, модальных окнах, интерфейсе администрирования |
Привязки ДП модуля ресурсов¶
Следующие 14 настроек задают привязку к дополнительным параметрам (ДП) модуля ресурсов. Расположены в форме system-settings.
ДП справочника ресурсов¶
| Настройка | Тип ДП | Назначение |
|---|---|---|
| Тип ресурса | Выпадающий список | Типы: трудовой, затратный и т.д. |
| Подтип | Выпадающий список | Подтипы: сотрудник, материальный, внешний и т.д. |
| Основные исполнители | Выбор пользователей | Основные исполнители элемента справочника |
| Дополнительные исполнители | Выбор пользователей | Дополнительные исполнители |
| Внутренний исполнитель | Выбор пользователей | Внутренние исполнители |
| Единица измерения | Текст | Единица измерения элемента |
| Владелец ресурса | Выбор пользователей | Владелец элемента справочника |
| Ответственный за ресурс | Выбор пользователей | Ответственный за элемент |
| Группы, обладающие правом планировать ресурс | Выбор пользователей | Группы планирования |
| Утверждение трудозатрат | Выбор пользователей | Ответственные за утверждение |
| Блокирование трудозатрат | Выбор пользователей | Ответственные за блокирование |
Сводные разделы и подписи¶
| Настройка | Назначение |
|---|---|
| Сводный раздел типов ресурсов | ID сводного раздела со всеми типами ресурсов |
| Сводный раздел экземпляров ресурсов | ID сводного раздела со всеми экземплярами |
| Подпись на согласование плановых трудозатрат | Подпись для согласования трудозатрат (в секции ресурсов) |
| Подпись на согласование плановых исполнителей | Подпись для согласования исполнителей (в секции ресурсов) |
Инфраструктурные и административные настройки¶
Миграционный ключ (dev-режим)¶
Настройка: Миграционный ключ — число от 1 до 9. Активирует dev-режим для переноса конфигурации между средами (dev → test → prod). Кнопка «Перевести сервер в dev-режим» в верхней части формы system-settings.
Денормализатор¶
Настройка: Категории, исключаемые из полной денормализации. Категории с большим количеством ДП предпочтительнее денормализовать вручную — их исключают из полной денормализации.
Доступные языки¶
Настройка: Доступные языки — JSON-массив:
[{"Id":1,"Name":"Русский","Available":true}, {"Id":2,"Name":"English","Available":true}, ...]
Параметры: Id = ID из таблицы Languages, Name = название (LangDescr), Available — доступен для выбора.
⚠️ Языки с признаками IsDefault и IsInternational в таблице Languages нельзя отключить.
Обработка персональных данных¶
Настройка: Требовать подтверждение согласия на обработку персональных данных.
При включении — при первой авторизации пользователю отображается форма с текстом соглашения (поле Текст соглашения). Пользователь не сможет войти без подтверждения. Проверяется поле IsAgreeToStorePersonalData в таблице Users.
Если настройка отключена — отметка о согласии не проверяется и согласие не запрашивается.
Кеширование задач¶
| Настройка | Описание |
|---|---|
| Количество записей для загрузки | Число записей при полном обновлении кеша (0 = без ограничения) |
| Категории без ограничения | Список категорий, по которым записи выгружаются без ограничения количества |
Провайдер карт¶
Настройка: Провайдер карт. Поддерживается только Bing — требуется уникальный API-ключ. Используется в отчётах геолокации.
Синхронизация с Exchange (настройки в system-settings)¶
⚠️ Форма system-settings содержит настройки синхронизации с Exchange напрямую, независимо от сервиса EWS (форма ews-service-settings в разделе «Подключения»). Детали администрирования календарей: ../calendar/admin.md.
| Параметр | Описание |
|---|---|
| Адрес EWS | URL Exchange Web Service |
| Исключаемые категории Exchange | Список через ; |
| Режим работы с сервисами Exchange | Автоматическое включение для новых пользователей |
| Синхронизация событийная | При каждом изменении календарной задачи |
| Синхронизация периодических встреч | Синхронизация повторяющихся встреч |
| Порог давности событий (дни) | Не синхронизировать события старше N дней; 0 = все |
| Макс. неудачных попыток | При превышении пользователь исключается из синхронизации; 0 = без ограничения |
| Перевоплощение | Служебный пользователь перевоплощается в организатора встречи (менее приоритетно, чем аналогичная опция в ews-service-settings) |
| Доменная авторизация | Для сервера в домене (on) / в рабочей группе (off) |
| Логин / Пароль / Домен | Учётные данные служебного пользователя синхронизации |
appsettings.json — справочник системных ключей¶
Параметры в appsettings.json загружаются при старте приложения. Большинство — серверная инфраструктура; повторное прочтение конфига на горячую — не поддерживается, нужен restart. Для динамических переключений используйте CustomSettings (см. выше) или общие настройки приложения.
Корневые ключи (root)¶
| Ключ | Тип / Default | Назначение |
|---|---|---|
Urls |
string | Адреса прослушивания Kestrel: <схема>://<хост>:<порт> через ;. Игнорируется при работе под IIS. ⚠️ Приоритет ниже, чем у ASPNETCORE_URLS и --urls |
AllowedHosts |
string / * |
Разрешённые Host-заголовки. * — все |
MaxRequestLength |
int (байты) / 2 ГБ |
Максимальный размер HTTP-запроса (ограничение на загрузку файлов) |
MultipartBodyLengthLimit |
int (байты) / 134 217 728 (~128 МБ) |
Размер каждой части multipart/form-data |
OutboundHttpAllowed |
bool / false |
Разрешает приложению любые исходящие HTTP-запросы (превью ссылок и т. п.). Для метаданных — лимит 2 МБ |
OutboundHttpProxy |
string (URL) | Прокси для всех исходящих HTTP-запросов |
LicensesKey |
string | Принудительная установка ключа лицензии. Скрыт при просмотре через UI «Системные файлы» |
📌 Ключи из определённых секций работают как в своей секции, так и в корне файла (cв. с источника).
Server¶
| Ключ | Назначение |
|---|---|
IsMainServer |
Главный сервер. Если IsJobServer не задан явно, джобы запускаются здесь |
IsJobServer |
Сервер заданий по таймеру. При true на старте поднимается механизм Jobs |
Application (только эти ключи входят в эту секцию)¶
| Ключ | Default | Назначение |
|---|---|---|
MessageBus |
— | Провайдер шины сообщений: None / Redis / RebusSQL / RebusPostgre |
RebusLoggerType |
None |
Тип лога Rebus: None / Console / NLog |
RebusLogLevel |
— | Уровень: None / Debug / Info / Warn / Error (накопительно: Debug включает всё выше) |
ApplicationInstanceId |
— | Уникальное имя очереди для шины сообщений. ⚠️ Без - (только _) |
JobServerMaxConcurrency |
10 |
Максимум параллельных заданий по таймеру (Quartz Jobs) |
BackgroundQueue:MaxConcurrency |
5 |
Параллелизм QueuedHostedService (async SmartRule, ответы Анфисы, фоновые скрипты, кэши). При 1 — последовательное выполнение |
Корневые ключи без секции (системные)¶
| Ключ | Тип / Default | Назначение |
|---|---|---|
IsCachingDisabled |
bool | Полное отключение кэширования (для отладки) |
IsDevelopmentMode |
bool | Отключает кодовые миграции на старте |
CodeMigrationsIsEnabled |
bool | Включение/отключение миграций БД |
DisableAllCachesUpdate |
bool | Отключает auto-обновление кэша после импорта конфигурации |
DontUseGetMachineIPForLog |
bool | Не использовать IP машины в логах (анонимизация) |
IgnoreDomainCheck |
bool | Отключает разрешённые домены — подключение с любого хоста |
InvalidateUsersCacheByEvent |
bool / false |
Инвалидация UsersCache по сигналу мастер-сервера. ⚠️ Не рекомендуется без подтверждённого сценария |
DisableSqlShell |
bool / false |
Скрывает в UI пункт «Выполнить SQL-запрос», кнопку «В TSQL» в редакторе и блокирует редактирование процедур (403) |
DisableAQB |
bool / true |
Отключение AspQueryBuilder. Default — выключен. Включается явным false |
DefaultIsolationLevel |
int / 2 (ReadCommitted) |
Уровень изоляции транзакций. ⚠️ С v2.261 «Лира» рекомендуется 2 |
UseTransactionOnTaskSynchronization |
bool | Использовать транзакцию при синхронизации задач |
IsSpaHost |
bool / true |
Генерация SPA-файлов брендирования в локальную ФС |
UseSpaPortals |
bool | Использование новых порталов в старом фронте |
UsePostgreSQLDatabase |
bool | Используется PostgreSQL (vs MS SQL) |
Use404Logger |
bool | Логирование 404 в журнал автоматизации |
EnableRemovalOfUnusedFiles |
bool | Включает джобы удаления неиспользуемых файлов. ⚠️ На тестовом сервере с боевыми файловыми провайдерами не включать — удалит файлы и в проде |
RemovalOfUnusedFilesBatchCount |
int | Лимит файлов на один прогон RemovePreparedFileStorageFilesJob |
FilesCacheSize |
int (МБ) / 500 |
Размер файлового кэша |
FilesExtensionsToNotCache |
string | Расширения, не попадающие в кэш (через запятую) |
WinToFormsRedirectFormsUrl / WinToFormsRedirectWinUrl |
URL | Базовые адреса forms- и win-приложений для редиректа между ними |
OpenLDAPProtocolVersion |
int / 3 |
Версия LDAP-протокола |
ExcludeAdSubdomains |
string | Исключённые поддомены (для дерева, AD-синхронизации, поиска) |
PhoneProfileLocation |
string | Идентификатор локации телефонии (для нескольких контуров) |
RestrictAbsenceMessageForAll |
bool | Ограничить сообщение об отсутствии для всех пользователей |
logoutRedirectUrl |
URL / /exit.html |
Куда редиректить пользователя после logout |
ProviderType / Name / Id (на уровне auth-провайдера) |
— | Тип провайдера, имя, идентификатор (SAML/OAuth/...) — см. auth/admin.md |
Доменно-специфичные корневые ключи вынесены в соответствующие admin.md: -
IsExchangeSyncServer,UseExchangeAutodiscover,ExchangeTraceListenerFlags,CreateTasksForAppointments→calendar/admin.md; -DecodeEdsSignatures→signatures/admin.md; -UseClassicEncodeInComments→comments/admin.md; -UseHacksForMailSending→mail/admin.md; -UseDevexpressDocToPdfConverter→files/admin.md; -ActiveDirectoryAuthenticationMode,AuthUseInsecureCookies,SetCookieForUpperLevelDomain,WinAuthHost→auth/admin.md.
ConnectionStrings¶
| Ключ | Назначение |
|---|---|
TCConnectionString |
Основная БД TaskCenter. ⚠️ MultipleActiveResultSets=false |
RebusConnectionString |
Шина сообщений Rebus. ⚠️ MultipleActiveResultSets=true (иначе не работает) |
SmartConnectionString |
Отдельный пул для TSQL-выражений и «Выполнить SQL-запрос». Если не задан — используется TCConnectionString. ⚠️ MultipleActiveResultSets=false |
SmartPgConnectionString |
PG-пул для PGSQL-вариантов смарт-выражений. Без него — кнопка «Тест PGSQL» и чип PGSQL не отображаются (используется для тестирования PG-скриптов с MSSQL-стенда) |
SignalRedisConnectionString |
Redis для SignalR-сигналинга (<host>:<port>,Password=...) |
VectorDbConnectionString |
[deprecated 2026-05-08] PostgreSQL для legacy vector_search namespace (AI Search). При наличии — регистрируется JS API VECTORDB (query / query_one / scalar); иначе SmartScript использует Npgsql fallback. Csharp 1f-agent больше не использует VECTORDB API (см. docs/domains/search/end-to-end-pipeline.md). Config-ключ оставлен для совместимости — backend MR на удаление — отдельная инициатива. |
⚠️ Параметры строк подключения: Data Source, Initial Catalog, User ID, Password, Persist Security Info, Max Pool Size, Min Pool Size, Connect Timeout, Encrypt, packet size.
ForwardHeaders (для развёртывания за прокси / TLS-терминатором)¶
| Ключ | Значения | Назначение |
|---|---|---|
Headers |
* / None / For / Host / Proto / Prefix (через запятую) |
Какие X-Forwarded-* заголовки обрабатывать |
Networks |
список IP / * |
Известные сети |
Proxies |
список IP / * |
Известные прокси |
Без этой секции ASP.NET не подменяет схему/хост из заголовков — получаются ошибки в перенаправлениях для HTTPS-сайтов за HTTP-прокси.
Telemetry (OpenTelemetry)¶
| Ключ | Default | Назначение |
|---|---|---|
EnableTracing |
bool | Включает трассировку |
EnableMetrics |
bool | Включает сбор метрик |
OtlpEndpoint |
http://localhost:4317 |
Конечная точка OTLP для метрик/трасс/логов |
Logging — стандартная секция .NET¶
Конфигурируется через NLog (см. nlog.config) и Serilog. Подробности — в system/admin.md § «Логирование производительности» выше и в smart-actions/admin.md § «Журнал автоматизации».
Системные эндпоинты — типичные ошибки¶
| Операция | Неправильно | Правильно |
|---|---|---|
| Очистка кеша | /api/system/cache/clear, /api/admin/cache/clear → 404 |
POST /api/system/updateallcaches |
| Hostname стенда PG | проверить корректность DNS-зоны (.ru vs .net) | использовать актуальный хост из конфига |
Связанные документы¶
../../reference/database/dbadmin-forms-map.md— полная карта форм автоадминки../../reference/database/objects-catalog.md— каталог объектов БД../../reference/enums.md— справочник enum-значений (SmartScriptLogLevel,TickerType,ClickAction,EventID)../../platform/database/journals.md— журналы (автоматизации, ошибок)../../platform/backend/admin-architecture.md— общая архитектура администрирования../../reference/api/core-endpoints.md— все API endpoints../../reference/api/spa-api-endpoints.md— SPA API endpoints../auth/admin.md— провайдеры аутентификации, двухшаговая авторизация, регистрация по телефону../calendar/admin.md— синхронизация с Exchange (EWS)../notifications/admin.md— тикеры, уведомления о просроченных задачах../mail/admin.md— настройка почтовых ящиков для ответов../smart-actions/admin.md— логирование смарт-доступа../signatures/admin.md— вид динамической подписи по умолчанию, хеш вложений, делегирование../portal/admin.md— множественные блоки (multiple_blocks)../resources/admin.md— рабочее время, рабочие минуты в дне/предпраздничном (ресурсы)