Настройка работы с несколькими доменами

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 и указать в нём нужное значение в секундах.

Пример включения кэширования ответов на 1 минуту:
{
  "UseCatalogsResponseCache": true, (1)
  "CatalogsResponseCacheExpirationInSeconds": 60 (2)
 }
1 Кэширование включено.
2 Время кэширования — 60 секунд.

Кэширование работает только совместно с расширенной конфигурацией доменов — конфигурация доменов определена в разделе Catalogs.

Обратите внимание, параметры настройки необходимо добавлять в конфигурационные файлы модулей Платформа и Web-клиент.

При включенном журналировании в режиме трассировки предоставление данных из кэша диагностируется сообщением вида:

LDAP query data from cache returned for account [имя учётной записи/SID]

1. Кэширование ответов от LDAP поддерживается в модуле Платформа начиная с версии 6.1. сборка 380 и выше, а также в модуле Web-клиент, начиная с версии 6.1. сборка 735 и выше.