Настройка работы с несколькими доменами
Docsvision поддерживает работу в одном или нескольких доменах. Для этого в конфигурационном файле модулей Платформа и Web-клиент поддерживается новая расширенная настройка доменных каталогов — параметр "Catalogs":
Возможность настройки со старыми параметрами настройки через параметр "Domains" (для модуля Платформа) и параметр "DefaultDomain" (для модуля Web-клиент) сохраняется.
|
В конфигурационных файлах настройка представлена следующим массивом: "Catalogs": []. Если в массиве есть хоть одно описание каталога, включается новая логика работы — будут учитываться только настройки из "Catalogs": [].
{
"Catalogs": [
{
"FullDomainName": "example1.com", (1)
"NetBiosDomainName": "example1", (2)
"LdapOptions": { (3)
"LdapServerAddresses": [ "example1.com" ], (4)
"AuthType": "Basic", (5)
"Credential": { (6)
"UserName": "user@example1.com",
"Password": "Password"
}
}
},
{
"FullDomainName": "example2.com", (7)
"ChallengeTo": "example1.com" (8)
}
]
}
| 1 | FullDomainName — полное имя домена указывается в формате user@example.com учётной записи после @. |
| 2 | NetBiosDomainName — NetBios-имя домена указывается в формате domain\\user перед \\. |
| 3 | LdapOptions — настройки подключения к LDAP каталогу домена. |
| 4 | LdapServerAddresses — адреса серверов LDAP данного домена. Если адрес соответствует полному имени домену, параметр можно удалить. |
| 5 | AuthType — тип аутентификации в LDAP. |
| 6 | Credential — логин и пароль пользователя для подключения к LDAP-каталогам текущего домена. Пароль для подключения можно зашифровать, см. подробнее в документации по установке системы, раздел "Защита системной учётной записи". |
| 7 | FullDomainName — полное имя домена указывается в формате user@example.com учётной записи после @. |
| 8 | ChallengeTo — настройка позволяет переадресовывать запросы от выбранного домена к каталогам указанного домена, см. далее. |
Catalogs может содержать массив настроек вида: {
"FullDomainName": "example.com", (1)
"NetBiosDomainName": "EXAMPLE", (2)
"LdapOptions": { (3)
"LdapServerAddresses": [ "example.com" ], (4)
"AuthType": "Basic", (5)
"Port": 389, (6)
"Credential": { (7)
"UserName": "user@example.com",
"Password": "Password"
}
}
}
| 1 | FullDomainName — полное имя домена указывается в формате user@example.com учётной записи после @. |
| 2 | NetBiosDomainName — NetBios-имя домена указывается в формате domain\\user перед \\. |
| 3 | LdapOptions — настройки подключения к LDAP каталогу домена. |
| 4 | LdapServerAddresses — адреса серверов LDAP данного домена. Если адрес соответствует полному имени домену, параметр можно удалить. |
| 5 | AuthType — тип аутентификации в LDAP. |
| 6 | Port — порт подключения к LDAP каталогам, перечисленным в LdapServerAddresses. |
| 7 | Credential — логин и пароль пользователя для подключения к LDAP-каталогам текущего домена. Пароль для подключения можно зашифровать, см. подробнее в документации по установке системы, раздел "Защита системной учётной записи". |
Настройка "ChallengeTo"
Для большей гибкости предусмотрена настройка ChallengeTo, позволяющая переадресовывать запросы от выбранного домена к каталогам указанного домена. Например, если пользователи в домене example.com, имеют учётную запись user@example1.com, конфигурационный файл можно изменить следующим образом:
{
"FullDomainName": "example1.com",
"NetBiosDomainName": "example1",
"ChallengeTo": "example2.com"
}
Осуществляется проверка значения, указанного после @ (для UPN-формата) или до \ (для NT-формата), проводится поиск соответствия в Catalogs. Если у такого соответствия есть ChallengeTo, далее аутентификация пользователя будет проверяться по LDAP серверу того каталога, который указан у домена в ChallengeTo.
После выполнения вышеуказанной настройки аутентификация и получение информации о пользователе user@example1.com будут осуществляться в каталогах домена example2.com.
Настройка ChallengeTo применима именно при наличии UPN-суффиксов внутри одного домена, если доменов несколько, рекомендуется добавить столько же записей с указанием отдельных LDAP-серверов для этих доменов.
| При такой настройке существует ограничение. Встроенная (сквозная) аутентификация будет работать только для тех пользователей домена, в который введен сервер на Linux. |
Кэширование информации о пользователе от LDAP
Следующие данные пользователя могут кэшироваться в ответах от LDAP серверов[1]:
-
SID— идентификатор безопасности (Security Identifier). -
SAM— имя пользователя в формате SAM (Security Account Manager). -
UPN— имя пользователя в формате UPN (User Principal Name). -
WindowsAccountName— имя пользователя в формате NTAccount (NetBios домен\имя пользователя в формате SAM). -
DomainName— полное имя домена пользователя. -
NetBiosDomainName— NetBios имя домена пользователя.
| Кэширование ответов от LDAP серверов по умолчанию отключено. |
Кэширование ответов от LDAP серверов по умолчанию отключено. Чтобы включить кэширование, необходимо добавить параметр UseCatalogsResponseCache со значение true в конфигурационные файлы модулей Платформа и Web-клиент. Параметр добавляется в корень конфигурационного файла dvappserver или модуля Web-клиент:
{
"UseCatalogsResponseCache": true
}
Временем кэширования ответов можно управлять, по умолчанию время кэширования составляет 24 часа. Чтобы изменить время, необходимо добавить параметр CatalogsResponseCacheExpirationInSeconds и указать в нём нужное значение в секундах.
{
"UseCatalogsResponseCache": true, (1)
"CatalogsResponseCacheExpirationInSeconds": 60 (2)
}
| 1 | Кэширование включено. |
| 2 | Время кэширования — 60 секунд. |
Кэширование работает только совместно с расширенной конфигурацией доменов — конфигурация доменов определена в разделе Catalogs.
| Обратите внимание, параметры настройки необходимо добавлять в конфигурационные файлы модулей Платформа и Web-клиент. |
При включенном журналировании в режиме трассировки предоставление данных из кэша диагностируется сообщением вида:
LDAP query data from cache returned for account [имя учётной записи/SID]