Настройка интеграции с LDAP предусматривает настройку связи элементов каталога LDAP с пользователями и ролями bpm’online. Для выполнения настройки необходимо обладать базовыми знаниями структуры каталога LDAP, с которым выполняется интеграция.
В статье приведены примеры настройки LDAP для Active Directory и OpenLDAP.
Важно
В зависимости от особенностей структуры каталогов LDAP, атрибуты элементов LDAP в вашем каталоге могут отличаться от атрибутов, которые приведены в качестве примеров.
1. Запуск настройки интеграции
Чтобы начать настройку, откройте дизайнер системы и в группе [Импорт и интеграции] кликните по ссылке [Настройка интеграции с LDAP]. Откроется страница настроек. Выделенные поля нужно обязательно настроить. Для остальных можно использовать значения по умолчанию.
Настройки для Active Directory
Настройки для OpenLDAP
Ниже приведено детальное описание настроек.
2. Настройка подключения к серверу LDAP
Укажите общие настройки подключения к серверу для Active Directory (Рис. 3) или для OpenLDAP (Рис. 4).
•[Имя сервера] — имя или IP-адрес сервера LDAP.
•[Тип аутентификации] — выбор протокола соединения с LDAP-сервером.
На заметку
Тип аутентификации определяется используемым сервером LDAP, а также требованиями к защищенности аутентификации. Например, выберите тип “Ntlm” для аутентификации “NT LanManager”, поддерживаемой Windows.
•[Логин администратора], [Пароль] — учетные данные администратора.
•[Интервал синхронизации (часов)] — интервал, по которому будет происходить автоматическая синхронизация пользователей, подробнее читайте в статье “Синхронизация с LDAP”.
3. Настройка синхронизации пользователей
Для настройки синхронизации пользователей укажите атрибуты элементов каталога LDAP, из которых будут импортированы данные о пользователях (Рис. 5, Рис. 6).
Обязательные атрибуты
•[Имя домена] — уникальное имя элемента организационной структуры LDAP, в который входят синхронизируемые пользователи. При этом для синхронизации будут доступны только те пользователи, которые входят в указанный элемент либо в подчиненные ему элементы, вне зависимости от уровня вложенности. Например, если вы укажете корневой элемент структуры каталога, для синхронизации будут доступны все пользователи в каталоге.
•[ФИО пользователя] — атрибут LDAP, который содержит имя и фамилию пользователя LDAP. Значение атрибута используется для автоматического заполнения поля [ФИО] страницы контакта при импорте пользователей. Например, ФИО пользователя может содержать атрибут “name” или “cn” (Common Name).
•[Имя пользователя] — атрибут, который содержит имя пользователя LDAP, используемое для входа в систему. Пользователь, учетная запись которого синхронизирована с LDAP, будет входить в систему под этим именем. Например, “sAMAccountName”.
•[Уникальный идентификатор пользователя] — атрибут, который может быть использован в качестве уникального идентификатора пользователя. Значение указанного атрибута должно быть уникальным для каждого пользователя.
•[Атрибут даты изменения] — атрибут, в который автоматически записывается дата и время последнего изменения элемента LDAP.
Важно
Отсутствие хотя бы одного из вышеперечисленных атрибутов синхронизируемого пользователя приведет к ошибке интеграции с LDAP.
Дополнительные атрибуты
Вы можете указать дополнительные атрибуты, из которых будет взята информация для автоматического заполнения страницы контакта пользователя:
•[Имя организации] — атрибут с названием организации, в которой работает пользователь. Используется для заполнения поля [Контрагент] страницы контакта. При синхронизации в поле указывается контрагент, название которого полностью соответствует значению указанного атрибута.
•[Должность] — атрибут, который содержит должность пользователя. Используется для заполнения поля [Должность] страницы контакта. При синхронизации будет выбрана из справочника должность, название которой полностью соответствует значению указанного атрибута.
На заметку
Организации и должности в системе не создаются автоматически в результате синхронизации, их необходимо создавать вручную.
•[Номер телефона] — атрибут, который содержит номер рабочего телефона пользователя. Используется для заполнения поля [Рабочий телефон] страницы контакта.
•[E-mail] — атрибут, который содержит адрес электронной почты пользователя. Используется для заполнения поля [E-mail] страницы контакта.
Важно
Если поля не заполнены, то соответствующие поля страницы контакта не будут автоматически заполняться при импорте пользователей из LDAP.
4. Настройка синхронизации групп пользователей с ролями bpm’online
Настройка синхронизации групп обеспечивает возможность привязки групп LDAP к элементам организационной структуры bpm’online. Для настройки укажите атрибуты элементов каталога LDAP, из которых будут импортированы данные о группах для Active Directory (Рис. 7) или для OpenLDAP (Рис. 8).
•[Название группы LDAP] — атрибут, который содержит название группы пользователей в LDAP. Например, здесь можно указать атрибут “cn” (“common name”).
•[Идентификатор группы] — атрибут, который может быть использован в качестве уникального идентификатора группы. Значение указанного атрибута должно быть уникальным для каждой группы. Например, может быть использован атрибут “objectSid”.
•[Имя домена групп] — уникальное имя элемента организационной структуры LDAP, в который входят синхронизируемые группы. Для синхронизации будут доступны только те группы, которые входят в указанный элемент либо в подчиненные ему элементы независимо от уровня вложенности. Например, если вы укажете корневой элемент структуры каталога, то для синхронизации будут доступны все группы в каталоге.
На заметку
В процессе синхронизации система проверяет пользователей, которые входят в участвующие в синхронизации группы. Если дата, которая хранится в атрибуте даты изменения пользователя LDAP, превышает дату последней синхронизации, то происходит актуализация вхождения этих пользователей в элементы организационной структуры bpm’online.
Важно
Отсутствие хотя бы одного из вышеперечисленных атрибутов синхронизируемого пользователя приведет к ошибке интеграции с LDAP.
5. Настройка условий фильтрации
Настройка условий фильтрации позволяет определить, по каким критериям элементы LDAP будут включаться в список синхронизируемых групп и пользователей. Укажите настройки фильтрации для Active Directory (Рис. 9) или для OpenLDAP (Рис. 10).
•[Список пользователей] – фильтр, по которому из общего списка элементов каталога LDAP будут выбраны только те, которые будут синхронизированы с пользователями bpm’online. Фильтр должен выбирать только активные элементы.
•[Список групп] – фильтр, по которому будут выбраны только элементы LDAP для синхронизации с элементами организационной структуры bpm’online (организационными ролями). Фильтр должен выбирать только активные элементы.
•[Список пользователей группы] – фильтр для получения списка пользователей, которые входят в группу LDAP. Вхождение пользователя в группу определяется одним или несколькими атрибутами. Например, в большинстве каталогов используется такой атрибут, как “memberOf”. Фильтр (memberOf=[#LDAPGroupDN#]) содержит макрос bpm’online и приведет к получению всех объектов (пользователей), которые входят в группу [#LDAPGroupDN#].
6. Настройка файла Web.config
Для включения возможности авторизации пользователей с помощью LDAP внесите изменения в файл Web.config в корневой папке приложения.
Настройки для Active Directory и OpenLDAP имеют некоторые различия.
1.Укажите “Ldap” и “SspLdapProvider” в списке доступных провайдеров авторизации. Шаг выполняется одинаково для Active Directory и OpenLDAP.
<terrasoft>
<auth providerNames="InternalUserPassword,Ldap,SSPLdapProvider" autoLoginProviderNames="" defLanguage="en-US" defWorkspaceName="Default" useIPRestriction="false" loginTimeout="30000">
<providers>
Важно
Необходимо соблюдать регистр согласно примеру.
2.Укажите IP или адрес сервера, а также параметры домена для пользователей в секции Ldap. Параметры для Active Directory и OpenLDAP различаются.
Для Active Directory
<provider name="Ldap" type="Terrasoft.WebApp.Loader.Authentication.Ldap.LdapProvider, Terrasoft.WebApp.Loader">
<parameters>
...
<add name="ServerPath" value="testactivedirectory.com" />
<add name="AuthType" value="Ntlm" /
<add name="DistinguishedName" value="dc=tscrm,dc=com" />
<add name="UseLoginUserLDAPEntryDN" value="false" />
<!--<add name="SearchPattern"
value="(&(objectCategory=person)(objectClass=user)
(!(userAccountControl:1.2.840.113556.1.4.803:=2))
memberOf=CN=SVNUsers,OU=groups,OU=Terrasoft,DC=tscrm,
DC=com))" />-->
<add name="SearchPattern"
value="(&(sAMAccountName={0})(objectClass=person))" />
<add name="KeyDistributionCenter" value="" />
</parameters>
Для OpenLDAP
<provider name="Ldap" type="Terrasoft.WebApp.Loader.Authentication.Ldap.LdapProvider, Terrasoft.WebApp.Loader">
<parameters>
...
<add name="ServerPath" value="testopenldap.com" />
<add name="AuthType" value="Basic" />
<add name="DistinguishedName" value="dc=example,dc=org" />
<add name="UseLoginUserLDAPEntryDN" value="true" />
<add name="SearchPattern"
value="(&(uid={0})(objectClass=inetOrgPerson))" />
<add name="KeyDistributionCenter" value="" />
</parameters>
3.Укажите IP или адрес сервера, а также параметры домена для портальных пользователей в секции SspLdapProvider. Шаг выполняется одинаково для Active Directory и OpenLDAP.
<provider name="SSPLdapProvider" type="Terrasoft.WebApp.Loader.Authentication.SSPUserPassword.SSPLdapProvider, Terrasoft.WebApp.Loader">
<parameters>
...
<add name="ServerPath" value="bpmonlineapp.com" />
...
<add name="DistinguishedName" value="dc=tscrm,dc=com" />
...
</parameters>
4.Сохраните изменения в файле Web.config.
5.Шаг только для настройки OpenLDAP: перед синхронизацией с OpenLDAP-сервером укажите в файле Web.config в Terrasoft.WebApp значение для UseLoginUserLDAPEntryDN.
<appSettings>
...
<add key="UseLoginUserLDAPEntryDN" value="true" />
Без данной настройки пользователи будут синхронизироваться без значений в поле LDAPEntryDN таблицы SysAdminUnit, что приведет к проблемам с авторизацией.
Смотрите также