Описание ключей web.config¶
| Что определяет | Ключ или тег | Описание и примеры |
|---|---|---|
| Конфигурация | <configSections> </configSections> | |
| Соединение с БД | < connectionStrings configSource\="_localConfig\localConnectionStrings.config" /> | |
| Имперсонирование пользователя | impersonate | Для работы в режиме однократной синхронизации почтового клиента необходимо, чтобы была включена Windows-авторизация, а также режим имперсонирования: |
| Ключ фермы | machineKey | Требуется для SingleSignOn между серверами "Первой Формы" и/или приложениями (например, "Первой Формой" и Личным кабинетом). |
| Настройки авторизации | authentication | Аутентификация Windows (Active Directory): |
| Редирект для разных доменных имен | SetCookieForUpperLevelDomain | Ключ SetCookieForUpperLevelDomain определяет, для какого домена будет задана cookie 1FormaAuth — для домена верхнего уровня (значение true) либо для полного доменного имени (false). |
| Настройка сессии | sessionState | По умолчанию |
| Отдача контейнеров мобильных приложений, а также вызов отчетов FastReport из контекста задачи | TaskCenter.iOSClientServices.API | В зависимости от используемого протокола для корректной отдачи контейнеров мобильного приложения в файле web.config необходимо выставить соответствующий параметр в секции |
| Путь к Swagger для тестирования API | ApplicationPath | В секции |
| Сервер заданий по таймеру | IsJobServer | Чтобы на сервере запускались задания по таймеру, в секции |
| Задания по удалению неиспользуемых файлов | EnableRemovalOfUnusedFiles RemovePreparedFileStorageFilesJob | Чтобы работали задания по таймеру, отвечающие за удаление неиспользуемых файлов, в секции |
| Создание задач для календарных встреч из Exchange (при включенной синхронизации) | CreateTasksForAppointments | Если календарная встреча создается в "Первой Форме", создается задача в календарной категории и запись в таблице Appointments. Если календарная встреча создается в Exchange, то в "Первой Форме" создается запись в таблице Appointments, а соответствующая задача в системной календарной категории может создаваться или не создаваться. Будет ли создаваться такая задача, определяет ключ CreateTasksForAppointments – если он имеет значение false, задача в системном календаре не создается, если true — создается. По умолчанию задача в "Первой Форме" создается, но чтобы ускорить синхронизацию, этот режим можно отключить. <appSettings> |
| Доступность прямой работы с SQL из интерфейса администрирования | disableSQLShell | В интерфейсе администрирования "Первой Формы" можно включить возможность работы напрямую с SQL. Это определяет ключ disableSQLShell: Если ключ имеет значение true, то в разделе Интерфейс недоступен пункт Выполнить SQL-запрос, а в редакторе смарт-выражений не отображается кнопка В TSQL. При попытке отредактировать хранимую процедуру будет возникать ошибка 403. <appSettings> |
| Генерация app-settings при старте приложения | DisableAppSettingsCreation | Обеспечивает возможность отключить генерацию app-settings при старте приложения. Доступно только для версии 2.260 Пегас. <appSettings> |
| Минимальная продолжительность активной сессии в минутах для конкурентной лицензии | ConcurrentSessionMinLengthInMinutes | После авторизации в системе пользователь попадает в список активных сессий. Время сессии по умолчанию — 1 минута, обновляется и увеличивается с активностью пользователя. После отсутствия активности в системе конкурентная лицензия высвобождается. В ключе ConcurrentSessionMinLengthInMinutes можно задать время активной сессии: |
| Режим аутентификации в ActiveDirectory | ActiveDirectoryAuthenticationMode | Для аутентификации через ActiveDirectory в секции appSettings может быть установлен ключ ActiveDirectoryAuthenticationMode. Возможные значения: DirectoryServices, ldap, PrincipalContext. Значение по умолчанию — ldap , DirectoryServices — библиотека "system.directoryservices" (только для AD). , PrincipalContext — "System.DirectoryServices.AccountManagement", более высокоуровневая библиотека (только для AD). Необходимо выбрать значением для ActiveDirectoryAuthenticationMode, если в лесе ActiveDirectory используются одноименные учетные записи. , ldap — "Novell.Directory.Ldap" — библиотека, работающая по протоколу LDAP. Работает как с AD, так и для других LDAP-серверов (к примеру, OpenLDAP). |
| Обновление кэшей через БД | ApplicationInstanceId | Для задания имени инстанса в секции appSettings необходим ключ ApplicationInstanceId. Его значение (имя инстанса) должно быть уникальным для каждого инстанса приложения. |
| Сигнализация для обновления кешей через БД | MessageBus UseSqlServerBus | Ключ MessageBus определяет очередь сообщений. Возможные значения: None, Redis (устаревшее), RebusSQL (по умолчанию). При старте приложения "Первая Форма" соответствующая очередь сообщений Rebus очищается. Чтобы работала сигнализация для обновления кешей, в секции appSettings ключ UseSqlServerBus должен быть установлен в значение true. Чтобы выключить Rebus, значение UseSqlServerBus должно быть явно задано как false |
| Быстрая регистрация модулей приложения | ExperimentalEnableOptimizedRegistration | Для быстрой регистрации модулей при старте приложения в секции appSettings ключ ExperimentalEnableOptimizedRegistration должен быть установлен в значение true. |
| Обновление пользовательского кеша по сигналу от мастер-сервера | InvalidateUsersCacheByEvent | Чтобы включить обновление UsersCache по сигналу от мастер сервера, в секции appSettings ключ InvalidateUsersCacheByEvent должен быть установлен в значение true. |
| Скачивание файлов одним архивом (групповая обработка в табличном представлении категории) | <dependentAssembly> |
|
| Запуска Rebus на Postgre | PostgreQueueInterval | По умолчанию 120 секунд |
| Тип БД | UsePostgreSQLDatabase | В зависимости от БД переключается секция defaultConnectionFactory PostgreSQL: <defaultConnectionFactory type\="Npsql.NpgsqlConnectionFactory, EntityFramework6.Npgsql" SQL Server: <entityFramework> |
| SSL при LDAP аутентификации | UseSecureLDAP | Использование SSL при аутентификации через LDAP. По умолчанию включено. |
| Кэширование | IsCachingDisabled | Указывает, отключено ли кэширование Возможные значения: true (отключено) / false (не отключено) <appSettings> |
| Миграции | CodeMigrationsIsEnabled | Указывает, будут ли проводиться миграции или нет. Возможные значения: true (будут проведены миграции) / false (не будут проведены миграции) <appSettings> |
| Уровень изоляции транзакций | DefaultIsolationLevel | Указание IsolationLevel для приложения. Возможные значения: Serializable, RepeatableRead, ReadCommitted, ReadUncommitted, Snapshot, Chaos, Unspecified. Пример: |
| Уровень изоляции транзакций при миграциях | MigrationIsolationLevel | Указание IsolationLevel, используемого при выполнении кодовых миграций. Возможные значения аналогичны DefaultIsolationLevel. |
| Обновление кэша при импорте конфигурации | DisableAllCachesUpdate | Отключение автоматического запуска обновления кэша после импорта конфигурации. Возможные значения: true (Отключено) / false (Включено) <appSettings> |
| Обновление токенов аутентификации | AuthTokenRefreshStrategy | Стратегия обновления токенов. Возможные значения: , SlidingExpiration (значение по-умолчанию) — автоматическое обновление токенов при активности пользователей. , None — обновление не предусмотрено, при истечении времени access-токена требуется повторная авторизация. , RefreshToken — используются refresh-токены (обновление токенов с помощью api-метода api/auth/token/refresh). |
| Срок действия RefreshToken | AuthRefreshTokenExpiresInMinutes | Время жизни refresh-токена в минутах. Указывается, если в ключе "AuthTokenRefreshStrategy" установлено значение "RefreshToken". По умолчанию время жизни refresh-токена — 30 дней. <appSettings> |
| Срок действия AccessToken | AuthTokenExpiresInMinutes | Время жизни access-токена в минутах. <appSettings> |
| Отключение AspQueryBuilder (AQB) | DisableAQB | Отключение AspQueryBuilder. AQB по умолчанию отключен. Для этого ключ DisableAQB в секции appSettings по умолчанию имеет значение true. Если ключ в конфигурации отсутствует, поведение считается как true (AQB отключен). Чтобы включить AspQueryBuilder, необходимо явно указать значение false. <appSettings> |
| Включение Мультифактора | MultifactorIsEnabled | Чтобы включить Мультифактор, ключ MultifactorIsEnabled должен быть установлен в значение true. По умолчанию включено. Двухфакторная аутентификация через систему MULTIFACTOR активируется в настройках системы. Подробнее о настройке мультифактора. |
| MultifactorHost | Адрес хоста, где должен быть включен/отключен Мультифактор | |
| Размер загружаемых файлов | MaxRequestLength | Длина запроса (ограничение размер загружаемых файлов) Если ключ не задан, значение по умолчанию = int.MaxValue (2147483647) = 2 Гб |
| Ограничение длины тела файла | MaxAllowedContentLength | Максимальная допустимая длина содержимого. Максимальное значение — 4 294 967 295 байт, что примерно равно 3,99 ГБ. |
| Отключение разрешенных доменов | IgnoreDomainCheck | Для отключения разрешенных доменов, что позволяет подключаться с любого доменного имени, ключ IgnoreDomainCheck должен быть установлен в значение true. |
| Использование небезопасных cookie для аутентификации. | AuthUseInsecureCookies | Разрешает использование небезопасных (не secure) файлов cookie для аутентификации. Возможные значения: true (разрешено) / false (запрещено). Значение по умолчанию — false. |
| Интеграция с LDAP | OpenLDAPProtocolVersion | Версия протокола LDAP. Если не задана, значение по умолчанию — 3. |
| Строка подключения (ConnectionString) для выполнения TSQL-выражений | SmartConnectionString | Если значение указано, то TSQL-выражения и функция Выполнить SQL запрос будут выполняться под заданной строкой подключения (ConnectionString). Если значение в ключе не задано, по умолчанию используется "TCConnectionString". |
| Интерфейс SPA | ||
| Брендирование | IsSpaHost | Запускает генерацию SPA-файлов брендирования в папку локальной файловой системы. По умолчанию true. Если ключ указан в значении false, то генерация брендированных статических файлов запускаться не будет. <appSettings> |
| Заполнение NaturalValue в БД | Backwards | Если настройка активна, в таблице dbo.ExtParamTableValues атрибут NaturalValue не будет затрагиваться при обновлении. Возможные значения true/false. |
| Доступность интерфейса SPA | EnableSpaSettings | Чтобы в пользовательском и администраторском интерфейсах "Первой Формы" были доступны элементы интерфейса SPA, ключ EnableSpaSettings должен быть установлен в значение true. <appSettings> |
| Карточка задачи | UseNewMTF | Чтобы шапка карточки задачи отображалась в новом дизайне (заказчик, срок и исполнитель в одну строку, под ними категория и текст), нужно установить ключ UseNewMTF в значение true. Если ключ UseNewMTF установлен в значение false или не определен, будет отображаться старый дизайн (слева столбец с основными параметрами и их значениями, справа — текст задачи). Обратите внимание: добавленные ранее вставки не будут работать при переходе из старого МТФ в новый в SPA. Подробнее о правилах миграции JS-вставок со старой карточки задачи в SPA. |
| UseNewMTFStyle | Чтобы отображалась карточка задачи с новой лентой комментариев и перепиской, нужно установить ключ UseNewMTFStyle в значение true. Если ключ UseNewMTFStyle установлен в значение false или не определен, будет отображаться старый дизайн (лента комментариев внизу). | |
| Порталы | UseSpaPortals | Чтобы включить использование новых порталов в старом фронте, нужно установить ключ UseSpaPortals в значение true |
| Профиль пользователя | UseSPAProfilePage | В интерфейсе SPA для просмотра профиля пользователя используется ссылка ~/spa/user/profile/{userid}. В старом интерфейсе по умолчанию используется ссылка ~/UserInfo.aspx?UserID={userid}. Чтобы включить переадресацию со старого профиля на новый, нужно включить ключ UseSPAProfilePage. Если UseSPAProfilePage установлен в значение true, то переадресация выполняется, если UseSPAProfilePage установлен в значение false или не определен — переадресация не выполняется |
| Страница авторизации | UseSpaLoginPage | Чтобы использовать страницу авторизации, адаптированную для интерфейса SPA, нужно установить ключ UseSpaLoginPage в значение true |
| Размер кэша файлов | FilesCacheSize | Позволяет задать максимальный размер кэша, выделяемый для файлов. Значение указывается в МБ. |
| Файлы, которые не нужно кэшировать | FilesExtensionsToNotCache | Позволяет задать типы файлов, которые не следует кэшировать. Расширения файлов указываются в строку через запятую: |
| Иерархия задач | useNewHierarchy | Чтобы использовать новую иерархию задач, нужно установить ключ useNewHierarchy в значение 1 |
Также настройки web.config можно посмотреть в разделах: