Синхронизировать пользователей с каталогом LDAP

Продукты
Все продукты

Синхронизация с каталогом LDAP позволяет автоматизировать управление учетными записями пользователей в Creatio. Пользователи, синхронизированные с LDAP, могут использовать свое доменное имя пользователя и пароль для входа в систему.

В системе поддерживаются следующие реализации LDAP: Active Directory и OpenLDAP.

Процедуру синхронизации можно условно разделить на три этапа:

  1. Настройка интеграции с LDAP. Выполняется однократно либо при изменении структуры синхронизируемого каталога LDAP. Настройка необходима для того, чтобы была доступна остальная функциональность по синхронизации с LDAP. Также необходимо настроить фильтрацию пользователей Active Directory для определения параметров синхронизации. Подробнее читайте в статье “Настроить фильтры Active Directory”.

  1. Привязка элементов (пользователей и элементов организационной структуры) Creatio к соответствующим элементам каталога LDAP. Выполняется при добавлении новых пользователей либо организационных ролей. Вы можете привязать уже зарегистрированных пользователей Creatio либо импортировать пользователей из LDAP, создав связанные записи в Creatio.

  1. Синхронизация пользователей и элементов организационной структуры Creatio со связанными элементами каталога LDAP. Действие необходимо для обновления данных в соответствии с изменениями, произошедшими в каталоге LDAP с момента предыдущей синхронизации. Выполняется регулярно: автоматически либо по действию Синхронизировать с LDAP раздела управления ролями и пользователями.

    На заметку. Каждая организационная роль является элементом организационной структуры и представляет собой организацию или подразделение.

Настроить интеграцию с LDAP 

Настройка интеграции с LDAP предусматривает настройку связи элементов каталога LDAP с пользователями и ролями Creatio. Для выполнения настройки необходимо обладать базовыми знаниями структуры каталога LDAP, с которым выполняется интеграция.

В статье приведены примеры настройки LDAP для Active Directory и OpenLDAP.

Важно. В зависимости от особенностей структуры каталогов LDAP, атрибуты элементов LDAP в вашем каталоге могут отличаться от атрибутов, которые приведены в качестве примеров.

1. Запустить настройку интеграции 

Чтобы начать настройку, откройте дизайнер системы и в группе Импорт и интеграции кликните по ссылке Настройка интеграции с LDAP. Откроется страница настроек. Выделенные поля нужно обязательно настроить. Для остальных можно использовать значения по умолчанию.

Рис. 1 — Страница настроек интеграции с LDAP для Active Directory
chapter_ldap_synchronization_setup_1_all.png 
Рис. 2— Страница настроек интеграции с LDAP для OpenLDAP
chapter_openldap_synchronization_setup_1_al.png 

Ниже приведено детальное описание настроек.

2. Настроить соединение с сервером LDAP 

Укажите общие настройки подключения к серверу для Active Directory (Рис. 1) или для OpenLDAP (Рис. 2).

Рис. 1 — Настройка подключения к серверу для Active Directory
chapter_ldap_synchronization_setup_2_server.png 
Рис. 2 — Настройка подключения к серверу для OpenLDAP
chapter_openldap_synchronization_setup_2_server.png 
    • Имя сервера — имя или IP-адрес сервера LDAP.

    • Тип аутентификации — выбор протокола соединения с LDAP-сервером.

НА ЗАМЕТКУ. Тип аутентификации определяется используемым сервером LDAP, а также требованиями к защищенности аутентификации. Например, выберите тип “Ntlm” для аутентификации “NT LanManager”, поддерживаемой Windows.

    • Логин администратора, Пароль — учетные данные администратора.

    • Интервал синхронизации (часов) — интервал, по которому будет происходить автоматическая синхронизация пользователей с LDAP. Подробно последовательность настройки описана в статье “Запустить синхронизацию с LDAP”.

3. Настроить синхронизацию пользователей 

Для настройки синхронизации пользователей укажите атрибуты элементов каталога LDAP, из которых будут импортированы данные о пользователях (Рис. 1, Рис. 2).

Рис. 1 — Настройка атрибутов пользователей для Active Directory
chapter_ldap_synchronization_setup_3_users_sync.png 
Рис. 2 — Настройка атрибутов пользователей для OpenLDAP
chapter_openldap_synchronization_setup_3_users_sync.png 

Обязательные атрибуты 

    • Имя домена — уникальное имя элемента организационной структуры LDAP, в который входят синхронизируемые пользователи. При этом для синхронизации будут доступны только те пользователи, которые входят в указанный элемент либо в подчиненные ему элементы, вне зависимости от уровня вложенности. Например, если вы укажете корневой элемент структуры каталога, для синхронизации будут доступны все пользователи в каталоге.

    • ФИО пользователя — атрибут LDAP, который содержит имя и фамилию пользователя LDAP. Значение атрибута используется для автоматического заполнения поля ФИО страницы контакта при импорте пользователей. Например, ФИО пользователя может содержать атрибут “name” или “cn” (Common Name).

    • Имя пользователя — атрибут, который содержит имя пользователя LDAP, используемое для входа в систему. Пользователь, учетная запись которого синхронизирована с LDAP, будет входить в систему под этим именем. Например, “sAMAccountName”.

    • Уникальный идентификатор пользователя — атрибут, который может быть использован в качестве уникального идентификатора пользователя. Значение указанного атрибута должно быть уникальным для каждого пользователя.

    • Атрибут даты изменения — атрибут, в который автоматически записывается дата и время последнего изменения элемента LDAP.

Важно. Отсутствие хотя бы одного из вышеперечисленных атрибутов синхронизируемого пользователя приведет к ошибке интеграции с LDAP.

Дополнительные атрибуты 

Вы можете указать дополнительные атрибуты, из которых будет взята информация для автоматического заполнения страницы контакта пользователя:

    • Имя организации — атрибут с названием организации, в которой работает пользователь. Используется для заполнения поля Контрагент страницы контакта. При синхронизации в поле указывается контрагент, название которого полностью соответствует значению указанного атрибута.

    • Должность — атрибут, который содержит должность пользователя. Используется для заполнения поля Должность страницы контакта. При синхронизации будет выбрана из справочника должность, название которой полностью соответствует значению указанного атрибута.

На заметку. Организации и должности в системе не создаются автоматически в результате синхронизации, их необходимо создавать вручную.

    • Номер телефона — атрибут, который содержит номер рабочего телефона пользователя. Используется для заполнения поля Рабочий телефон страницы контакта.

    • E-mail — атрибут, который содержит адрес электронной почты пользователя. Используется для заполнения поля E-mail страницы контакта.

Важно. Если поля не заполнены, то соответствующие поля страницы контакта не будут автоматически заполняться при импорте пользователей из LDAP.

4. Настроить синхронизацию групп пользователей LDAP с ролями Creatio 

Настройка синхронизации групп обеспечивает возможность привязки групп LDAP к элементам организационной структуры Creatio. Для настройки укажите атрибуты элементов каталога LDAP, из которых будут импортированы данные о группах для Active Directory (Рис. 1) или для OpenLDAP (Рис. 2).

Рис. 1 — Настройка групп пользователей для Active Directory
chapter_ldap_synchronization_setup_4_groups.png 
Рис. 2 — Настройка групп пользователей для OpenLDAP
chapter_openldap_synchronization_setup_4_groups.png 
    • Название группы LDAP — атрибут, который содержит название группы пользователей в LDAP. Например, здесь можно указать атрибут “cn” (“common name”).

    • Идентификатор группы — атрибут, который может быть использован в качестве уникального идентификатора группы. Значение указанного атрибута должно быть уникальным для каждой группы. Например, может быть использован атрибут “objectSid”.

    • Имя домена групп — уникальное имя элемента организационной структуры LDAP, в который входят синхронизируемые группы. Для синхронизации будут доступны только те группы, которые входят в указанный элемент либо в подчиненные ему элементы независимо от уровня вложенности. Например, если вы укажете корневой элемент структуры каталога, то для синхронизации будут доступны все группы в каталоге.

На заметку. В процессе синхронизации система проверяет пользователей, которые входят в участвующие в синхронизации группы. Если дата, которая хранится в атрибуте даты изменения пользователя LDAP, превышает дату последней синхронизации, то происходит актуализация вхождения этих пользователей в элементы организационной структуры Creatio.

Важно. Отсутствие хотя бы одного из вышеперечисленных атрибутов синхронизируемого пользователя приведет к ошибке интеграции с LDAP.

5. Настроить условия фильтрации 

Настройка условий фильтрации позволяет определить, по каким критериям элементы LDAP будут включаться в список синхронизируемых групп и пользователей. Укажите общие настройки подключения к серверу для Active Directory (Рис. 1) или для OpenLDAP (Рис. 2).

Рис. 1 — Настройка условий фильтрации для Active Directory
chapter_ldap_synchronization_setup_5_filtration.png 
Рис. 2 — Настройка условий фильтрации для OpenLDAP
chapter_openldap_synchronization_setup_5_filtration.png 
    • Список пользователей – фильтр, по которому из общего списка элементов каталога LDAP будут выбраны только те, которые будут синхронизированы с пользователями Creatio. Фильтр должен выбирать только активные элементы.

    • Список групп – фильтр, по которому будут выбраны только элементы LDAP для синхронизации с элементами организационной структуры Creatio (организационными ролями). Фильтр должен выбирать только активные элементы.

    • Список пользователей группы – фильтр для получения списка пользователей, которые входят в группу LDAP. Вхождение пользователя в группу определяется одним или несколькими атрибутами. Например, в большинстве каталогов используется такой атрибут, как “memberOf”. Фильтр (memberOf=#LDAPGroupDN#) содержит макрос Creatio и приведет к получению всех объектов (пользователей), которые входят в группу #LDAPGroupDN#.

Настроить фильтры Active Directory 

Синхронизация с каталогом Active Directory (совместимая с LDAP служба каталогов Windows) может стать удобным инструментом для настройки и управления учетными записями пользователей Creatio, которые также работают в домене Windows. А правильная настройка фильтров LDAP обеспечит необходимые параметры для синхронизации пользователей, групп и пользователей определенной группы.

Формат фильтров 

В общем случае фильтры Active Directory имеют следующий формат:

(<оператор><фильтр1><фильтр2>)

В котором <фильтр1> имеет вид:

(<атрибут><оператор><значение>)

На заметку. Вы можете использовать необходимое количество операторов и фильтров при настройке фильтрации.

Для создания и настройки фильтров вы можете использовать следующие операторы:

= — логическое равенство;

~= — приблизительное равенство;

<= — меньше или равно;

>= — больше или равно;

& — “И”;

| — “Или”;

! — “Не”.

Значения представляют фактические значения атрибутов AD. Они не чувствительны к регистру и не заключаются в кавычки. Кроме того, возможно использование символа подстановки *, например, для получения всех элементов в виде:

(objectClass=*).

Фильтрация пользователей 

Если в вашей компании используется служба каталогов Active Directory, то рекомендуем воспользоваться стандартным фильтром для синхронизации активных пользователей:

(&(objectClass=user)(objectClass=person)(!objectClass=computer)(!(isDeleted=TRUE)))

В этой функции:

& — оператор “И” для всех фильтров;

objectClass=user — выбор в массиве всех элементов “user”;

objectClass=person — выбор в массиве всех элементов “person”;

!objectClass=computer — исключить все элементы “computer”;

!(isDeleted=TRUE) — объекты не удалены.

Фильтрация групп 

Чтобы синхронизировать пользователей Active Directory с организационной структурой Creatio, необходимо настроить фильтрацию групп. Как и в случае с синхронизацией пользователей, воспользуйтесь стандартным фильтром для синхронизации групп всех активных пользователей:

(&(objectClass=group)(!userAccountControl:1.2.840.113556.1.4.803:=2))

В этой функции:

& — оператор “И” для всех фильтров;

objectClass=group — выбор в массиве всех элементов групп;

userAccountControl — флаги контроля учетных записей, числовое обозначение;

:1.2.840.113556.1.4.803:  — побитовое “И” в формате LDAP;

2 — флаг ACCOUNTDISABLE.

То есть фильтр (!userAccountControl:1.2.840.113556.1.4.803:=2) исключает отключенные (неактивные) аккаунты. Подробнее читайте на сайте поддержки Microsoft.

Стандартные фильтры пользователей группы Active Directory 

Кроме фильтрации пользователей и организационной структуры, дополнительно нужно получить список пользователей, которые входят в группу Active Directory и, соответственно, в LDAP. Стандартный фильтр, который находит весь список пользователей в группе, имеет вид:

(memberOf=#LDAPGroupDN#)

В этой функции:

memberOf — стандартный атрибут объекта Active Directory, определяет имя группы, к которой принадлежит данный объект;

#LDAPGroupDN# — макрос Creatio для получения списка пользователей группы с уникальным именем (т.н. Distinguished Name).

Макросы не являются стандартом LDAP и используются только для формирования запроса на выборку объектов. В зависимости от настроек AD, можно использовать следующие параметры:

#LDAPGroupName# — название группы, указанной в поле Название группы LDAP в настройках интеграции с LDAP;

#LDAPGroupIdentity# — уникальный идентификатор группы, указанный в поле Идентификатор группы.

Настроить фильтры для синхронизации пользователей/групп 

В зависимости от потребностей, вы можете самостоятельно настроить фильтры для синхронизации пользователей и групп.

Пример. Необходимо различать сотрудников с одинаковыми ФИО после синхронизации с Active Directory.

Чтобы решить задачу, нужно дополнить фильтр синхронизации пользователей. При поиске объектов по умолчанию используется атрибут CN (Common Name). Он обязателен для корректной работы Creatio, так как связан с деталью ФИО пользователя. В условия фильтрации можно также включить атрибут “displayName”, который будет отличаться для разных пользователей. То есть необходимо синхронизировать пользователей с атрибутом “displayName”. Для этого:

  1. Откройте настройки синхронизации с LDAP.

  1. Перед стандартным фильтром списка пользователей добавьте условие “атрибут displayName заполнен”: The filter will look like this:

    (displayName=*)(&(objectClass=user)(objectClass=person)(!objectClass=computer)(!(isDeleted=TRUE)))

  1. Добавьте булеву функцию «И» для одновременного выполнения условий фильтрации:

    (&(displayName=*)(&(objectClass=user)(objectClass=person)(!objectClass=computer)(!(isDeleted=TRUE))))

  1. Замените стандартный фильтр в поле Список пользователей полученным фильтром.

  1. Сохраните настройки и запустите синхронизацию с LDAP.

Привязать элементы LDAP к пользователям и ролям Creatio 

В Creatio существует возможность синхронизации организационных и функциональных ролей пользователей системы с группами Active Directory.

Вы можете перенести в приложение организационную структуру компании и настройки всех ролей из Active Directory после выполнения синхронизации с LDAP. Подробнее о синхронизации читайте в статье “Синхронизировать пользователей с каталогом LDAP”.

Настроить синхронизацию организационных ролей Creatio и групп Active Directory 

  1. Перейдите в дизайнер системы, например, по кнопке btn_system_designer.png.

  1. В блоке “Пользователи и администрирование” перейдите по ссылке “Организационные роли”.

  1. На открывшейся странице выберите из дерева групп роль, для которой вы хотите настроить синхронизацию (Рис. 1), либо добавьте новую с помощью кнопки Добавить.

    Рис. 1— Выбор организационной роли для настройки синхронизации
    chapter_ldap_synchronization_roles_choosing.png 
  1. На вкладке Пользователи установите признак Синхронизировать с LDAP и в поле Элемент LDAP выберите группу Active Directory, соответствующую данной организационной роли в Creatio (Рис. 2).

    Рис. 2— Выбор группы Active Directory для настройки синхронизации
    chapter_ldap_synchronization_set_group.png 
  1. Если необходимо, добавьте новых пользователей на детали Пользователи, нажав кнопку btn_add_ke.png.

    Чтобы синхронизировать большое количество пользователей, которые еще не были зарегистрированы в Creatio, рекомендуем импортировать их из каталога LDAP. Подробнее >>>

    На заметку. Для синхронизации с LDAP существующих пользователей Creatio необходимо вручную связать их учетные записи с соответствующими пользователями LDAP. Подробнее >>>

  1. Примените настройки по кнопке Сохранить.

    В результате при следующей синхронизации будет синхронизироваться и выбранная организационная роль.

Настроить синхронизацию функциональных ролей Creatio и групп Active Directory 

  1. Перейдите в дизайнер системы, например, по кнопке btn_system_designer00001.png.

  1. В блоке “Пользователи и администрирование” перейдите по ссылке “Функциональные роли”.

  1. Дальнейшие настройки аналогичны пунктам 35 настроек синхронизации организационных ролей Creatio и групп Active Directory, описанным выше.

Связать учетные записи пользователей Creatio и пользователей LDAP 

  1. Перейдите в дизайнер системы, например, по кнопке btn_system_designer00002.png.

  1. В блоке “Пользователи и администрирование” перейдите по ссылке “Организационные роли” либо “Функциональные роли” в зависимости от того, для пользователей каких групп вы хотите настроить синхронизацию.

  1. На открывшейся странице выберите роль, в которую входит нужный пользователь.

  1. Перейдите на вкладку Пользователи, выберите строку, содержащую данные нужного пользователя, и с помощью двойного клика откройте его страницу.

  1. На вкладке Основная информация выберите опцию Аутентификация средствами LDAP.

  1. В поле Имя пользователя выберите необходимого пользователя LDAP.

  1. Примените настройки по кнопке Сохранить (Рис. 1).

    Рис. 1 — Привязка пользователя
    chapter_ldap_synchronization_user_connect.png 

В результате выбранный пользователь Creatio будет связан с пользователем LDAP и сможет входить в систему, используя имя пользователя и пароль, которые хранятся в каталоге LDAP (например, имя и пароль доменного пользователя).

Импортировать новых пользователей из LDAP 

  1. Перейдите в дизайнер системы, например, по кнопке btn_system_designer00003.png.

  1. В блоке “Пользователи и администрирование” перейдите по ссылке “Организационные роли” либо “Функциональные роли” в зависимости от того, в какие группы вы хотите импортировать пользователей.

  1. В дереве ролей выберите элемент, в который будут импортироваться пользователи LDAP.

  1. На вкладке Пользователи установите признак Синхронизировать с LDAP и в поле Элемент LDAP выберите группу Active Directory, соответствующую данной организационной роли в Creatio.

  1. Сохраните изменения.

  1. Запустите синхронизацию по действию Синхронизировать с LDAP в меню действий раздела. После завершения синхронизации в выбранную организационную или функциональную группу импортируются все пользователи из группы на сервере LDAP.

    В результате для выбранных пользователей LDAP будут созданы контакты и связанные с ними учетные записи пользователей Creatio. Новые учетные записи будут автоматически помещены в выбранный элемент организационной структуры. При этом поля на страницах контактов импортированных пользователей автоматически заполняются значениями атрибутов элементов LDAP, указанными при настройке синхронизации.

    Важно. В списке пользователей LDAP отображаются все пользователи, независимо от того, включены они в элемент LDAP, связанный с элементом организационной структуры, или нет.
    При синхронизации с LDAP будут синхронизированы только те пользователи, которые входят в элемент LDAP, связанный с элементом организационной структуры.

    НА ЗАМЕТКУ. При связывании пользователя LDAP с учетной записью пользователя Creatio происходит автоматическое лицензирование последней.

Запустить синхронизацию с LDAP 

В процессе синхронизации изменения, которые произошли с пользователями и группами LDAP, переносятся на связанные с ними учетные записи пользователей и элементы организационной структуры Creatio.

Важно. Синхронизация с LDAP может быть запущена только для приложений Creatio, развернутых на серверах с операционной системой Windows.

Настроить автоматическую синхронизацию 

Для настройки автоматического запуска синхронизации:

  1. Откройте дизайнер системы по кнопке btn_system_designer00004.png в правом верхнем углу приложения.

  1. В группе Импорт и интеграции кликните по ссылке Настройка интеграции с LDAP.

  1. На открывшейся странице заполните поле Интервал синхронизации (часов). Автоматическая синхронизация пользователей с LDAP будет выполняться с указанным интервалом.

  1. Установите признак в поле Синхронизировать только группы, если вы хотите автоматически деактивировать в Creatio пользователей, исключенных из синхронизируемых групп в каталоге LDAP и активировать в Creatio пользователей, добавленных в синхронизируемые с приложением LDAP группы.

  1. Снимите признак в поле Раздавать лицензии, если вы не хотите автоматически раздавать лицензии при синхронизации пользователей по LDAP.

    На заметку. Заполнение остальных полей на странице Настройка интеграции с LDAP описано в статье “Настройка интеграции с LDAP”.

  1. Нажмите кнопку Сохранить (Рис. 1).

    Рис. 1 — Сохранение заполненной страницы Настройка интеграции с LDAP
    scr_chapter_ldap_synchronization_save_ldap_integr_setup.png 

После сохранения страницы Настройка интеграции с LDAP автоматически запустится синхронизация. При этом будет запущен процесс “Запустить импорт элементов с LDAP” (Рис. 2).

Рис. 2 — Процесс “Запустить импорт элементов с LDAP”
scr_chapter_ldap_synchronization_process_log_launch_import.png 

Запустить синхронизацию вручную 

Для ручного запуска синхронизации:

  1. Откройте дизайнер системы нажатием кнопки btn_system_designer00005.png в правом верхнем углу приложения.

  1. В группе Пользователи и администрирование кликните по ссылке Организационные роли.

  1. В меню действий раздела выберите действие Синхронизировать с LDAP (Рис. 1). При этом запустится процесс “Запустить синхронизацию с LDAP”, который в свою очередь вызывает процесс “Синхронизировать данные о пользователях с LDAP” (Рис. 2).

    Рис. 1 — Действие Синхронизировать с LDAP
    scr_chapter_ldap_synchronization_process_org_roles_ldap_sync.png 
Рис. 2 — Процессы “Запустить синхронизацию с LDAP” и “Синхронизировать данные о пользователях с LDAP”
scr_chapter_ldap_synchronization_process_process_log_sync_users_data.png 

После завершения процесса синхронизации будет отображено информационное сообщение.

На заметку. Если при синхронизации c каталогом LDAP количество пользователей превысит количество доступных лицензий, то администраторы системы получат уведомление на коммуникационной панели и детальную информацию в email-сообщении.

Результаты синхронизации 

    • Если пользователь LDAP более не входит в список активных пользователей, то на странице синхронизируемого с ним пользователя Creatio будет снят признак Активен, и он не сможет залогиниться.

    • Если ранее неактивный пользователь LDAP был активирован, то на странице синхронизируемого с ним пользователя Creatio будет установлен признак Активен.

    • Если пользователь LDAP либо группа пользователей LDAP были переименованы, то будут переименованы и синхронизированные с ними пользователь/роль Creatio.

    • В случае установки признака в поле Синхронизировать только группы при исключении пользователя LDAP из группы LDAP, связанной с элементом организационной структуры Creatio, синхронизируемый с ним пользователь Creatio будет деактивирован и исключен из соответствующего элемента организационной структуры Creatio.

    • В случае установки признака в поле Синхронизировать только группы при добавлении пользователя в группу LDAP, связанную с элементом организационной структуры Creatio, связанный с ним пользователь Creatio будет добавлен в соответствующий элемент структуры и активирован.

    • Если в синхронизируемый элемент LDAP были включены новые пользователи, ранее не синхронизированные с Creatio, пользователи будут импортированы в Creatio.

    • Если в Creatio есть пользователи (не импортированные из LDAP) с именами, совпадающими с именами пользователей в LDAP, то их синхронизация не выполняется.

    • Если синхронизированный пользователь LDAP был удален из группы, связанной с элементом организационной структуры Creatio, то соответствующий пользователь останется активным в Creatio, но не сможет залогиниться.

    • Всем синхронизированным пользователям будут предоставлены лицензии.

Настроить аутентификацию пользователей через LDAP в Windows 

Для включения возможности авторизации пользователей с помощью LDAP внесите изменения в файл Web.config в корневой папке приложения.

Настройки для Active Directory и OpenLDAP имеют некоторые различия.

Важно. Необходимо соблюдать регистр согласно примеру. Также обратите внимание, что названия провайдеров должны быть приведены через запятую и без пробелов.

Для OpenLDAP

<provider name="Ldap" type="Terrasoft.WebApp.Loader.Authentication.Ldap.LdapProvider, Terrasoft.WebApp.Loader">
<parameters>
(Customer Portal)
            <add name="ServerPath" value="10.0.14.145" />
            <add name="AuthType" value="Basic" />
            <add name="DistinguishedName" value="dc=example,dc=org" />
            <add name="UseLoginUserLDAPEntryDN" value="true" />
            <add name="SearchPattern"
             value="(&amp;(uid={0})(objectClass=inetOrgPerson))" />
            <add name="KeyDistributionCenter" value="" />
</parameters>
  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>
    (Customer Portal)
                <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="(&amp;(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="(&amp;(sAMAccountName={0})(objectClass=person))" />
                <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>
    (Customer Portal)
                <add name="ServerPath" value="ldapserver.domain.com" />
    ...
                <add name="DistinguishedName" value="dc=domain, dc=com" />
    ...
    </parameters>
  4. Сохраните изменения в файле Web.config.

  5. Шаг только для настройки OpenLDAP: перед синхронизацией с OpenLDAP-сервером укажите в файле Web.config в Terrasoft.WebApp значение для UseLoginUserLDAPEntryDN.

    <appSettings>
    ...
                      <add key="UseLoginUserLDAPEntryDN" value="true" />

Без данной настройки пользователи будут синхронизироваться без значений в поле LDAPEntryDN таблицы SysAdminUnit, что приведет к проблемам с авторизацией.

Настроить аутентификацию пользователей через LDAP на Linux 

Для включения возможности авторизации пользователей с помощью LDAP внесите изменения в файл Web.config в корневой папке приложения.

  1. Укажите “Ldap” и “SspLdapProvider” в списке доступных провайдеров авторизации.

    <terrasoft>
    <auth providerNames="InternalUserPassword,LdapProvider,SSPLdapProvider,SSPUserPassword,SsoAuthProvider,SSPSsoAuthProvider" autoLoginProviderNames="" defLanguage="en-US" defWorkspaceName="Default" useIPRestriction="false" loginTimeout="30000">
    <providers>

    Важно. Необходимо соблюдать регистр согласно примеру. Также обратите внимание, что названия провайдеров должны быть приведены через запятую и без пробелов.

  2. Укажите IP или адрес сервера, а также параметры домена для пользователей в секции Ldap. Используйте домен Active Directory или OpenLDAP.

    На заметку. Обратите внимание, что Active Directory нельзя запустить на сервере с операционной системой Linux. Для того чтобы использовать синхронизацию Active Directory, необходимо развернуть узел Windows.

    Для OpenLDAP

    <provider name="LdapProvider" type="Terrasoft.Authentication.Core.Ldap.NetStandardLdapProvider, Terrasoft.Authentication">
    <parameters>
    (Customer Portal)
                <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="(&amp;(uid={0})(objectClass=inetOrgPerson))" />
                <add name="KeyDistributionCenter" value="" />
    </parameters>

    Для Active Directory

    <provider name="LdapProvider" type="Terrasoft.Authentication.Core.Ldap.NetStandardLdapProvider, Terrasoft.Authentication">
    <parameters>
    (Customer Portal)
                <add name="ServerPath" value="testactivedirectory.com" />
                <add name="DistinguishedName"
                value="dc=testactivedirectory,dc=com" />
                <add name="UseLoginUserLDAPEntryDN" value="false" />
            <!--<add name="SearchPattern"
                value="(&amp;(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="(&amp;(sAMAccountName={0})(objectClass=person))" />
                <add name="KeyDistributionCenter"
                value="testactivedirectory.com" />
                <add name="SecureSocketLayer" value="false" />
                <add name="CertificateFileName"
                value="ldap_certificate_example.cer" />
    </parameters>
    </provider>
  3. Укажите IP или адрес сервера, а также параметры домена для портальных пользователей в секции SspLdapProvider. Шаг выполняется одинаково для Active Directory и OpenLDAP.

    <provider name="SSPLdapProvider" type="Terrasoft.WebApp.Loader.Authentication.SSPUserPassword.SSPLdapProvider, Terrasoft.WebApp.Loader">
    <parameters>
    (Customer Portal)
                <add name="ServerPath" value="ldapserver.domain.com" />
    ...
                <add name="DistinguishedName" value="dc=domain, dc=com" />
    ...
    </parameters>
  4. Сохраните изменения в файле Web.config.

  5. Шаг только для настройки OpenLDAP: перед синхронизацией с OpenLDAP-сервером укажите в файле Web.config в Terrasoft.WebApp значение для UseLoginUserLDAPEntryDN.

    <appSettings>
    ...
                      <add key="UseLoginUserLDAPEntryDN" value="true" />

Без данной настройки пользователи будут синхронизироваться без значений в поле LDAPEntryDN таблицы SysAdminUnit, что приведет к проблемам с авторизацией.

Рис. 1 — Ввод учетных данных для анонимной аутентификации в IIS
chapter_ldap_synchronization_ntlm_auth_anonymous.png 

На заметку. Подробнее о настройке аутентификации Windows читайте в справочной документации Microsoft.

Настройка файла Web.config приложения-загрузчика 

Для настройки:

InternalUserPassword — провайдер, указанный в файле Web.config по умолчанию. Если вы хотите предоставить возможность аутентификации по NTLM-протоколу только пользователям, которые не синхронизированы с LDAP, не указывайте для параметра providerNames дополнительные значения.

Ldap — добавьте к значениям параметра providerNames данный провайдер, чтобы предоставить возможность аутентификации по NTLM-протоколу пользователям приложения, которые синхронизированы с LDAP.

SSPLdapProvider — добавьте к значениям параметра providerNames данный провайдер, чтобы предоставить возможность аутентификации по NTLM-протоколу пользователям портала самообслуживания, которые синхронизированы с LDAP.

NtlmUser — добавьте к значениям параметра autoLoginProviderNames данный провайдер, чтобы предоставить возможность аутентификации по NTLM-протоколу пользователям приложения, независимо от того, синхронизированы ли они с LDAP и какой тип аутентификации установлен для данных пользователей в Creatio.

SSPNtlmUser — добавьте к значениям параметра autoLoginProviderNames данный провайдер, чтобы предоставить возможность аутентификации по NTLM-протоколу пользователям портала самообслуживания, независимо от того, синхронизированы ли они с LDAP и какой тип аутентификации установлен для данных пользователей в Creatio.

Порядок записи провайдеров параметра autoLoginProviderNames определяет, в каком порядке выполняется проверка наличия пользователя системы среди пользователей приложения (NtlmUser) или среди пользователей портала (SSPNtlmUser). Например, чтобы проверка осуществлялась в первую очередь среди пользователей основного приложения, укажите провайдер NtlmUser первым в списке значений параметра autoLoginProviderNames.

Важно. Вы можете указать в качестве значения параметра autoLoginProviderNames провайдер SSPNtlmUser, только если указан дополнительно провайдер NtlmUser. Существует возможность использовать отдельно только провайдер NtlmUser.

Для отображения страницы входа в систему с доступной ссылкой Войти под доменным пользователем укажите значение “false” для параметра UsePathThroughAuthentication. При этом сквозная аутентификация будет выполняться лишь при переходе на главную страницу приложения. Чтобы отобразить страницу входа, добавьте запись /Login/NuiLogin.aspx к адресу сайта.

Если после выполнения описанных действий при первой попытке входа в систему отображается окно доменной авторизации, то необходимо дополнительно настроить свойства обозревателя Windows.

Чтобы в дальнейшем окно доменной авторизации не отображалось:

  1. Откройте для редактирования файл Web.config приложения-загрузчика.

  2. Укажите в файле провайдеры аутентификации Windows:

    auth providerNames="InternalUserPassword,SSPLdapProvider,Ldap"
    autoLoginProviderNames="NtlmUser,SSPNtlmUser"
  3. Если вы хотите активировать сквозную аутентификацию, чтобы пользователь имел возможность авторизоваться в Creatio, минуя страницу входа, укажите значение “true” для параметра UsePathThroughAuthentication элемента <appSettings>:

    <appSettings>
    <add key="UsePathThroughAuthentication" value="true" />
    ...
    </appSettings>
    1. В меню “Start” —> “Settings” —> “Control Panel” —> “Network and Internet” выберите пункт “Internet options” (Рис. 1).

      Рис. 1 — Настройка свойств обозревателя
      chapter_ldap_synchronization_ie_internet_options.png 
  4. В открывшемся окне перейдите на вкладку “Security” и по кнопке “Custom level” перейдите к настройкам безопасности (Рис. 2).

    Рис. 2 — Настройки безопасности
    chapter_ldap_synchronization_ie_internet_options_security_tab.png 
  5. В группе настроек “User Authentication” выберите способ авторизации “Automatic logon with current user name and password” (Рис. 3).

    Рис. 3 — Выбор способа авторизации
    chapter_ldap_synchronization_ie_internet_options_user_authentication.png 
  6. Нажмите “ОК”.

    В результате выполненных настроек окно доменной авторизации не будет отображаться при входе в систему.

Импортировать новых пользователей и роли из LDAP 

Если вы используете Active Directory, то импортируйте пользователей из каталогов в Creatio посредством синхронизации с LDAP. Синхронизация позволит скопировать пользователей и роли из Active Directory в Creatio.

Перед добавлением пользователей посредством синхронизации с LDAP подготовьте каталог к интеграции:

  • Убедитесь, что пользователи входят в группы Active Directory, которые будут синхронизированы с Creatio.

На заметку. Пользователи Active Directory (AD), не принадлежащие ни к одной группе пользователей AD, не будут импортированы. В Creatio импортируется только организационная структура, представленная группами пользователей AD.

  • Настройте интеграцию с LDAP. Подробнее >>>
    После того как вы нажмете Сохранить на странице настройки интеграции с LDAP, Creatio уведомит вас о запуске бизнес-процесса, в фоновом режиме выполняющего импорт пользователей и ролей из LDAP.

В результате группы пользователей Active Directory будут скопированы в базу данных Creatio.

После интеграции Creatio с LDAP вы можете настроить синхронизацию с AD и добавлять пользователей AD в Creatio.

Добавить пользователей посредством синхронизации с LDAP 

Синхронизация с LDAP позволяет импортировать пользователей из определенных групп AD в определенные организационные роли Creatio, связывая роли Creatio с группами AD.

Чтобы добавить пользователей в организационную роль Creatio:

  1. Нажмите btn_system_designer00006.png —> Организационные роли.

  1. Выберите роль, в которую вы хотите добавить пользователей LDAP из соответствующей группы пользователей AD. Вы также можете создать новую роль для группы пользователей AD в организационной структуре Creatio. Для этого:

    1. Выберите родительскую роль (например, “Все сотрудники” для добавления пользователей или “Все пользователи портала” для добавления пользователей портала) —> Добавить —> Организацию.

    2. Укажите название для новой роли. Название может совпадать с названием группы в AD или же отличаться от него.

  1. На вкладке Пользователи установите признак Синхронизировать с LDAP.

  1. В поле Элемент LDAP выберите соответствующую группу пользователей из списка, чтобы связать элемент LDAP с организационной ролью Creatio —> Сохранить.

  1. Нажмите btn_com_roles_actions_menu.png —>Синхронизировать с LDAP. После завершения синхронизации будет отображено информационное сообщение.

    На заметку. Если синхронизация LDAP была выполнена с ошибкой, то вы можете определить ее причину, проверив экземпляры бизнес-процесса Синхронизировать данные о пользователях с LDAP в разделе Журнал процессов.

  1. Обновите страницу Организационные роли.

    В результате на деталь Пользователи выбранной организационной роли будут добавлены пользователи LDAP, относящиеся к соответствующей группе Active Directory. Новая организационная роль будет отображаться на детали Организационные роли на странице пользователя. В ы можете убедиться в этом, открыв соответствующую запись пользователя и проверив вкладку Роли. (Рис. 1).

    Рис. 1 — Добавить пользователей посредством синхронизации с LDAP со страницы роли
    gif_section_users_adding_users_via_LDAP.gif