Ещё по теме

Комментарии по теме

«Как эффе­кти­вно испо­льзо­ва­ть инфотипы пла­ни­ру­е­мо­го во­зна­гра­жде­ния для по­стро­е­ния стратегии во­зна­гра­жде­ний»
Юрий Щербаков:
В статье достаточно подробно и, в то же время, компактно описано назначение инфо-типа 1005 (Нормативная оплата), используемого для штатных должностей (объекты типа S). Примечание: Из этих объектов...
«Создание деревьев принятия решений с помощью ста­нда­ртных операций SAP»
Александр Иванов:
Автор описывет использование функции IF в схеме расчёта, приводит понятный пример. Знания, нужные любому консультанту.   Я бы добавил, что в конструкции IF ENDIF можно использовать функцию...
«Создание и хранение по­льзо­ва­те­льских шаблонов Excel для Ваших отчетов в SAP ERP HCM»
Борис Костенко:
В статье говориться, что при подготовке шаблона обычно скрываются ненужные стандартные листы из (например, Format, Header, RawData, Pivot и Sub1...Sub10, что является распространенной практикой,...

База знаний

Работа с LDAP. Обмен данными HR с AD в ручном режиме

456

Оглавление

Введение

Работа с LDAP в ручном режиме. Транзакция LDAP

Делаем тест соединения с сервером LDAP

Кнопка «Переимен.» - Переименование в LDAP

Поиск в LDAP (кнопка «Поиск»)

Пример с кнопкой «Создать»

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

Построение подчиненности в LDAP

Создание фото в LDAP из ABAP/4

Введение

Достаточно набрать в строке поиска Google фразу «SAP HR LDAP interface», и Вы получите много полезных ссылок про организацию обмена данными. Типовой подход к синхронизации HR с LDAP сводится к настройке и экстракции данных из запроса   или ABAP отчета. Данная процедура описана на портале help.sap.com

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

Работа с LDAP в ручном режиме. Транзакция LDAP

Для программирования обмена HR с LDAP потребуется расширенное понимание обмена данными, поэтому рекомендую сначала освоить выполнение ручных запросов в LDAP.

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

Рисунок 1 «Транзакция LDAP (ведение сервера LDAP, настройка параметров соединения)»

Мэппинг полей осуществляется в транзакции LDAPMAP (для использования подхода, описываемого в справочной документации).

Делаем тест соединения с сервером LDAP

Устанавливаем и тестируем соединение (Рис.2.-3.)

Рисунок 2 «Транзакция LDAP , вход (установка соединения)»

Рисунок 3 «Транзакция LDAP, зеленый статус после успешного соединения»

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

Кнопка «Переимен.» - Переименование в LDAP

Зайдем на сервер Active Directory, запустим диспетчер сервера и выберем объект для эксперимента (Рис.4.).

Рисунок 4 «Экран сервера Active Directory с объектами»

Обратите внимание, для правильного составления запроса к LDAP необходимо перечислить все подразделения: OU=Temp,OU=SAP_HR

Итак, мы хотим, чтобы объект CN=CBK 00000077,OU=TEMP,OU=SAP_HR,DC=testdom,DC=local (см. рис.4)  был переименован в объект CN=KKK 00000077,OU=TEMP,OU=SAP_HR,DC=testdom,DC=local (Рис.5.).

Рисунок 5 «Транзакция LDAP – переименование объекта»

В случае успешного выполнения меняется отличительное имя объекта(DN) в LDAP (Рис.6.)

Рисунок 6 «Результат в Active Directory после переименования объекта»

Далее перемещаем объект по ветке LDAP вверх, с OU=Temp в OU=SAP_HR. На картинке (Рис.7.) не видно полное имя DN (CN=KKK 00000077,OU=TEMP,OU=SAP_HR,DC=testdom,DC=local)

Рисунок 7 «Переименование в LDAP с изменением расположения в ветви иерархии объектов AD»

Теперь мы умеем менять отличительное имя, перемещать объекты по веткам Active Directory

Поиск в LDAP (кнопка «Поиск»)

В строке «фильтр» уточняю класс объекта, табельный номер, глубину поиска, также перечисляю необходимые атрибуты – получаю в ответ только нужные поля (Рис.8.).

Рисунок 8 «LDAP. Поиск объекта в  Active Directory с указанием возврата значений запрошенных  атрибутов»

Выполним поиск подразделения с заполнением строки поиска (Рис.9):

(&(objectclass=OrganizationalUnit)(OU=50001130))

Рисунок 9 «LDAP. Пример поиска подразделения»

Пример с кнопкой «Создать»

Выполним упражнение с созданием объектов в Active Directory (смотри рис.10). Обратите внимание, заполняем подразделение в DN в обратной последовательности (см. рисунок 11).

Рисунок 10 LDAP. Пример с кнопкой «Создать»

Рисунок 11 LDAP. Пример создания объекта «подразделение»

Проверяем в AD результат (Рис.12.)

Рисунок 12 Консоль объектов Active Directory.

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

Заполняем необходимые атрибуты , самый главный в начале DN (Рис.13.)

Рисунок 13 LDAP. Пример создания объекта «Group»

Для того, чтобы указать учетные записи в группу надо заполнить поле member (Рис.14.)

Рисунок 14 LDAP. Пример создания участников в группе

В случае успешного выполнения команды ,получаем положительный ответ (Рис.15.)

Рисунок 15 LDAP. Успешный статус выполнения

Если на стороне консоли Aсtive Directory не видим сразу созданные группы, то включаем опции просмотра дерева (Рис.16.)

Рисунок 16 Консоль объектов AD. Включение опции отражения различных объектов

После выполнения упражнений можно переходить к программированию на ABAP.

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

Построение подчиненности в LDAP

Все данные о подразделениях, сотрудниках и подчиненности ведутся в SAP HR. На стороне HR заполняется информация о руководителе (Рис.17.)

Рисунок 17 HR-OM , пример с указанием руководителя

Обмен данными с AD осуществляется по объекту user , основные поля для синхронизации в AD: cn, givenName, title, telephonenumber, middleName, Name, samaccountName, initials, employeeNumber, departmentNumber, department, UserPrincipalName, MANAGER , company , displayname, comment, distinguishedName

Настраиваем мэппинг для синхронизации, добавляем MANAGER (Рис.18.).

Рисунок 18 LDAP. Мэппинг полей

Обновление данных происходит в два этапа HR->LDAP  (Обновление объектов AD),  затем

Ограниченный доступ

Для прочтения полной версии статьи необходимо зайти как зарегистрированный пользователь.


Любое воспроизведение запрещено.
Копирайт © «Издательство ООО «Эксперт РП»