US English (US)
FR French
DE German
PL Polish
SE Swedish
FI Finnish

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

Polish
US English (US)
FR French
DE German
PL Polish
SE Swedish
FI Finnish
  • Log in
  • Home
  • Zarządzanie tożsamością i administracja ( IGA )
  • Biblioteka rozwiązań IGA
  • Instrukcje i uid
  • Konfiguruj łączniki

Łącznik HR (import)

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

  • Zarządzanie usługami
    Rozwiązanie Matrix42 Professional Rozwiązanie Matrix42 Core Zarządzanie usługami przedsiębiorstwa Inteligencja Matrix42
  • Zarządzanie tożsamością i administracja ( IGA )
    Przegląd IGA Biblioteka rozwiązań IGA
  • Platforma
    ESM ESS2 ES Efecte Chat do zarządzania usługami Efektywne integracje Dodatki
  • Informacje o wydaniu dla M42 Core & Pro , IGA , Conversational AI
    2025.3 2025.2 2025.1 2024.2 2024.1 2023.4 2023.3 2023.2 2023.1 2022.4 2022.3 Informacje i zasady dotyczące wydania
  • Inny materiał
    Wytyczne uid terminów i dokumentacji Oświadczenia dotyczące dostępności
  • Usługi
+ More
    • Zarządzanie usługami

    • Zarządzanie tożsamością i administracja ( IGA )

    • Platforma

    • Informacje o wydaniu dla M42 Core & Pro , IGA , Conversational AI

    • Inny materiał

    • Usługi

Łącznik HR (import)

Złącze HR

Jest częścią natywnych konektorów Efecte Connect i wykorzystuje gotowy skrypt z niestandardowego konektora skryptowego Efecte Provisioning Engine . Dzięki temu natywnemu konektorowi HR klienci mogą importować dane osobowe i organizacyjne ze swojego rozwiązania HR. Konektor został zaprojektowany dla rozwiązania IGA , ale można go zmodyfikować, aby można go było używać we wszystkich rozwiązaniach Efecte. Konektor obsługuje formaty XML, CSV i JSON oraz zawiera funkcje walidacji danych i porównania z poprzednim plikiem.

W przypadku korzystania z łącznika HR obowiązki klienta są następujące:

  1. Wygeneruj plik(i) zgodnie z instrukcjami opisanymi w rozdziale „Generowanie pliku z rozwiązania HR”
  2. Zaplanuj generowanie plików zgodnie z ustalonym harmonogramem dostawy
  3. Pro serwer SFTP (i dostępy), na który dostarczane są pliki i z którego łącznik HR może pobierać pliki

Jak działa łącznik HR?

Ogólny przegląd

HR-connector wykorzystuje Efecte Provisioning Engine (niestandardowy łącznik skryptów) do odczytu danych z pliku. Łącznik został zaprojektowany do wykorzystania w rozwiązaniach IGA w zarządzaniu cyklem życia użytkownika. Użycie go do innych celów wymaga wyeksportowania skryptu z komputera hosta i zmodyfikowania go zgodnie z wymaganiami klienta. Należy pamiętać, że możliwe jest również utworzenie nowego skryptu od podstaw i użycie niestandardowego łącznika skryptów do jego walidacji i zaimportowania.

Łącznik HR obsługuje jeden lub kilka okresów pracy, pod warunkiem, że okresy pracy są generowane zgodnie z opisem w rozdziale „Generowanie pliku z rozwiązania HR”.

Podstawowe zasady łącznika HR,

1. Łącznik używa dodatkowych argumentów zdefiniowanych w zadaniu dostarczania opartym na harmonogramie w celu znalezienia pliku ze ścieżki (jeśli brakuje dodatkowego argumentu, proces zostaje zatrzymany)

2. Pliki są konwertowane do formatu JSON (słownik) i przechowywane jako JSON

3. Każdy plik można uruchomić w całości lub w części

4. Częściowe uruchomienie zawsze porównuje dane z plikiem archiwalnym (jeśli plik archiwalny jest nieobecny, proces zostaje zatrzymany)

5. W pliku w formacie JSON wszystkie mapowane atrybuty są polami obowiązkowymi, a zadanie zatrzymuje import, jeśli w którymkolwiek z importowanych obiektów brakuje atrybutów obowiązkowych. Format CSV działa inaczej – wystarczy, że wszystkie mapowane atrybuty zostaną znalezione w wierszu nagłówka jako kolumny.

6. Po wykonaniu importu łącznik zaimportuje zadanie administracyjne IGA do rozwiązania IGA w tym błędy i pliki JSON zawierające zarchiwizowane i zaimportowane wiersze.

Dobrze pamiętać!

Przeglądanie (po zapisaniu zaplanowanego zadania dla łącznika HR) dodatkowych argumentów wymaga zapisania hasła w bezpiecznym miejscu w celu wprowadzenia ewentualnych zmian w argumentach.

Pliki łączników,

Plik (w kontenerze EPE-worker) Opis

/tmp/skrypty-custom-provisioning/3_log.txt
Zawiera logi, liczba w nazwie pliku to taskid.

/tmp/custom-provisioning-scripts/3_output.json
Zawiera wiersze, które przeszły walidację i powinny zostać zaimportowane do rozwiązania IGA .
Liczba w nazwie pliku to taskid.
/tmp/custom-provisioning-scripts/data/archive/(data_type)_archive.json Przechowuje wszystkie wiersze z pliku, które zostały uruchomione, zarówno prawidłowe, jak i nieprawidłowe. Plik jest nadpisywany przy każdym uruchomieniu.
/tmp/custom-provisioning-scripts/data/archive/error_(data_type)_archive.json Przechowuje wiersze, które nie przeszły walidacji podczas przebiegu. Wiersze te nie są importowane do rozwiązania IGA . Plik jest nadpisywany przy każdym przebiegu.
/tmp/custom-provisioning-scripts/only_scheduled/ Złącze IGA Skrypt łącznika
W tym folderze może znajdować się wiele skryptów. W interfejsie użytkownika zadań należy wybrać, który skrypt ma zostać uruchomiony przez dane zadanie.

/tmp/skrypty-custom-provisioning/pliki-różne/translation.json
1. Służy do tłumaczenia raportów na dany język.
2. Nowe języki można dodać, dodając „język”, np. „de” lub „en”, pod każdym przypadkiem z kluczem „tekst”. Każdy przypadek raportu musi mieć nowy język, w przeciwnym razie łącznik będzie generował błąd.
3. Aby użyć konkretnego języka, potrzebne są dodatkowe argumenty z kluczem „language” i wartością z pliku translation.json

Wygeneruj plik z rozwiązania HR

Łącznik HR oczekuje, że plik zostanie wygenerowany przez rozwiązanie HR zgodnie z poniższą logiką, a następnie zapisany na serwerze SFTP klienta, skąd łącznik może pobrać plik(i). Należy pamiętać, że kodowanie musi być UTF-8.
Jeśli używasz formatu pliku csv, domyślnym separatorem pól używanym przez skrypt łącznika HR jest ; (średnik).

Proces generowania pliku różni się w zależności od rozwiązania HR, z którego korzysta klient. Przykładowo rozwiązanie IGA wymaga pobierania informacji zarówno z przeszłości, jak i z przyszłości.

W przypadku rozwiązań HR Workday zaleca się utworzenie niestandardowego raportu w Workday, który będzie zawierał potrzebne informacje, i użycie w tym raporcie formatu json do sformatowania danych.

Dobrze wiedzieć!

Czasami rozwiązania HR mogą generować nowe znaczniki czasu ostatniej aktualizacji w sytuacjach, gdy nie ma potrzeby dostarczania informacji do rozwiązania Efecte, na przykład gdy wypłaty wynagrodzeń są często realizowane przed dniem wypłaty. Te zbędne dane powodują wiele zadań provisioningowych w systemach docelowych, a rozwiązanie tych problemów zazwyczaj zajmuje czas administratorom/agentom klienta.

Zaleca się walidację danych przed rozpoczęciem pełnej automatyzacji na podstawie otrzymanych informacji (gwarancja jakości danych). Rozwiązanie IGA firmy Efecte umożliwia symulowanie zmian (więcej informacji znajdziesz tutaj ).

Przykłady, jakie informacje są wykorzystywane do generowania wymaganego pliku,

Logika Informacje dodatkowe
Wszyscy użytkownicy z aktywnymi okresami pracy Użytkownicy są wybierani na podstawie dat okresu pracy
Wszyscy użytkownicy z aktywnym okresem pracy w przyszłości Miesiąc do przodu
Wszyscy użytkownicy z aktywnym okresem pracy w przeszłości Miesiąc temu jest to konieczne, jeśli zmiany w danych użytkownika zostały wprowadzone po zakończeniu stosunku pracy.
Użytkownicy są sortowani na podstawie unikalnego identyfikatora Unikalnym identyfikatorem może być numer pracownika lub numer ubezpieczenia społecznego.
Znak czasu ostatniej aktualizacji Użytkowników można wybierać na podstawie ostatniego znacznika czasu aktualizacji, ale należy sprawdzić u specjalisty ds. kadr klienta, który zmieni znacznik czasu.

 

Zalecenia dotyczące struktury folderów serwera SFTP

Jeśli klient chce użyć łącznika HR do importowania wielu różnych typów danych, zaleca się posiadanie jednego łącznika HR na każdy typ danych.

Na przykład, jeśli klient chce zaimportować organizacje i użytkowników, powinien mieć 2 łączniki, takie jak „Łącznik HR Organizacje” i „Łącznik HR Użytkownicy”.

Mając te dwa pliki łączników na tym samym serwerze ftp, struktura folderów mogłaby wyglądać na przykład tak:

/sftp/iga/in/organisation

/sftp/iga/in/organization/archive

/sftp/iga/in/użytkownik

/sftp/iga/in/użytkownik/archiwum

Folder danych powinien zawierać tylko jeden plik na raz.

Dzięki takiej strukturze folderów możesz używać następujących parametrów skryptu dla organizacji łącznika HR:

“sftp_remote_path_data”:"/sftp/iga/in/organization",

“sftp_remote_path_archive”:"/sftp/iga/in/organization/archive",

“file_path”:"./organization/*.csv"

Podobnie różne parametry skryptu dla użytkowników łącznika HR.

Parametry, walidacja i wyjątki

Parametry

Służą do definiowania ustawień łącznika HR, które są sprawdzane po uruchomieniu skryptu.
Pamiętaj o zapisaniu hasła w bezpiecznym miejscu, na wypadek gdybyś po zapisaniu zaplanowanego zadania musiał sprawdzić parametry.

Łącznik HR wykorzystuje następujące parametry:

Parametr Opis Obowiązkowe / opcjonalne
ścieżka_pliku Ścieżka i wzorzec pliku, gdzie znajduje się plik. Obowiązkowy
typ_danych Wartości: centrum kosztów, organizacja, stanowisko lub okres pracy. Obowiązkowy
limit_aktualizacji Ile aktualizacji jest dozwolonych w rozwiązaniu Efecte. Obowiązkowy
typ_biegu Typ uruchomienia określa, czy zostanie wykonane porównanie z poprzednim plikiem.
Wartości: pełne obciążenie lub częściowe, domyślnie częściowe
Obowiązkowy
nadpisanie_limitu_aktualizacji Nadpisuje limit aktualizacji, jeśli liczba aktualizacji przekracza podany limit. Wartości to prawda lub fałsz, domyślnie ustawiona jest wartość fałsz. Obowiązkowy
minimalna_liczba_wierszy Jaka jest minimalna liczba wierszy, która powinna znajdować się w pliku. Fakultatywny
użytkownik webapi Użytkownik API sieci Web (użytkownik ESM) do tworzenia raportów. Wymaga uprawnień do tworzenia i aktualizacji zadań administracyjnych IGA . Obowiązkowy
hasło_webapi Hasło użytkownika API sieciowego. Obowiązkowy
adres URL webapi Adres URL do środowiska rozwiązań Efecte. Obowiązkowy
kod_szablonu_raportu Kod szablonu docelowego. Obowiązkowy
kod_folderu_raportu Kod folderu docelowego. Obowiązkowy
odpluskwić Włącza rejestrowanie debugowania. Wartości: prawda (true) lub fałsz (false), wartość domyślna: fałsz (false).
Jeśli ustawisz debugowanie na true, otrzymasz bardziej szczegółowe komunikaty w dzienniku, ale zadanie będzie działać nieco wolniej. Dzienniki można znaleźć w folderze kontenera epe-worker /custom-provisioning-scripts.
Fakultatywny

Walidacja

Walidacja oznacza, że łącznik HR weryfikuje, czy wszystkie obowiązkowe informacje dotyczące użytkowników zostały otrzymane z rozwiązania HR, a w przypadku ich braku łącznik HR tworzy domyślne zadanie administratora IGA .

Klient może zdefiniować więcej atrybutów do odczytu, spoza listy poniżej, ale wymaga to modyfikacji skryptu łączników HR (więcej informacji można znaleźć w rozdziale o możliwościach rozszerzenia).

Atrybut Opis Obowiązkowe / opcjonalne
Nazwisko Nazwisko użytkownika, wymagane na przykład przy generowaniu adresu e-mail dla użytkownika. Obowiązkowy
Imię Imię użytkownika, wymagane na przykład przy generowaniu adresu e-mail dla użytkownika. Obowiązkowy
Numer ubezpieczenia społecznego / dowód osobisty Wymagane, jeśli wybrano jako unikalny identyfikator użytkownika (lub na przykład jeśli dostarczane jest także uwierzytelnianie identyfikatorem bankowym). Obowiązkowe / opcjonalne
Numer pracownika (ID pracownika) Wymagane, jeśli wybrano jako unikalny identyfikator użytkownika. Obowiązkowe / opcjonalne
Data rozpoczęcia zatrudnienia Kiedy rozpoczął się lub ma się rozpocząć okres pracy użytkownika. Obowiązkowy
Identyfikator tytułu Unikalny identyfikator tytułu dla tytułu użytkownika (powiązany z nazwą tytułu) Obowiązkowy
Identyfikator menedżera Unikalny identyfikator dla menedżera użytkowników, zwykle identyfikator pracownika menedżera Obowiązkowy
Identyfikator jednostki organizacyjnej Unikalny identyfikator jednostki organizacyjnej (powiązany z nazwą jednostki organizacyjnej) Obowiązkowy
Imię mówione Można go używać na przykład w adresach e-mail, powszechnie używanych w Skandynawii, gdzie użytkownik może wybrać jedno ze swoich oficjalnych imion i używać go jako nazwy, pod którą będzie się zwracał. Fakultatywny
Drugie imię Jest powszechnie używany do identyfikacji użytkowników o tym samym imieniu i nazwisku. Jeśli występuje imię i nazwisko, w adresie e-mail używane są drugie litery imienia. Fakultatywny
Data zakończenia zatrudnienia Kiedy kończy się okres pracy użytkownika, informacja jest wykorzystywana do rozpoczęcia procesów poza pokładem Fakultatywny
Rodzaj zatrudnienia Stałe, tymczasowe, godzinowe, zewnętrzne Fakultatywny
Czy jest menedżerem użytkowników? Tytuł użytkownika nie zawsze musi wskazywać, czy użytkownik jest menedżerem. W niektórych rozwiązaniach HR informacja ta jest dostępna osobno w osobnym atrybucie. Fakultatywny
Tytuł Nazwa dla identyfikatora tytułu użytkownika Fakultatywny
Imię menedżera Nazwa dla identyfikatora menedżera użytkowników Fakultatywny
Typ użytkownika Wewnętrzny, zewnętrzny Fakultatywny
Centrum kosztów Nazwa centrum kosztów użytkownika Fakultatywny
Nazwa jednostki organizacyjnej Zaleca się odczytanie informacji z rozwiązania HR, szczególnie w przypadkach, gdy klient chce uaktualnić informacje o jednostkach organizacyjnych w katalogach lub aplikacjach i/lub gdy wykorzystywane są zautomatyzowane reguły IGA . Fakultatywny

Wyjątki

Klient może zdefiniować, w którym szablonie, folderze i atrybucie łącznik HR generuje następujące wyjątki,

Wyjątek Opis Działania administratora IGA
Plik nie został odebrany lub jest pusty W przypadku gdy plik nie istnieje na serwerze SFTP klienta lub jest pusty, generowane jest zadanie administracyjne IGA umożliwiające bardziej szczegółowe rozwiązywanie problemów. Administrator IGA weryfikuje przyczynę, dla której plik nie został wygenerowany z systemu HR lub jest pusty. Plik należy ponownie wygenerować, a zaplanowane zadanie łącznika HR zostanie uruchomione ponownie.
Użytkownikowi brakuje unikalnego identyfikatora Importowani są użytkownicy o unikalnych identyfikatorach, a także tworzone jest zadanie administratora IGA umożliwiające ręczny przegląd tych użytkowników, którzy nie mieli dostępnych informacji.
Należy wprowadzić unikalny identyfikator użytkownika do rozwiązania HR, następnie plik zostanie wygenerowany ponownie, a zaplanowane zadanie zostanie uruchomione ręcznie.
Zaplanowanemu zadaniu brakuje dodatkowych argumentów Obowiązkowe dodatkowe argumenty to:
ścieżka_pliku
typ_danych
limit_aktualizacji
użytkownik webapi
hasło_webapi
adres URL webapi
kod_szablonu_raportu
Do zadania dostarczania opartego na harmonogramie należy dodać dodatkowe argumenty i ponownie uruchomić zadanie.
Brak pliku archiwum Aby możliwe było częściowe wykonanie, konieczne jest znalezienie pliku archiwum Zadanie administratora IGA mające na celu rozwiązanie problemu z brakującym plikiem. Gdy plik zostanie znaleziony, należy ponownie uruchomić zaplanowane zadanie.
Brak obowiązkowego pola (obiektu) lub wartości pola Wiersz jest zablokowany, a import sfinalizowany Administrator IGA może sprawdzić w raporcie łącznika (zadanie administratora IGA ), czy jakiekolwiek wiersze zostały zablokowane. Należy dodać informacje do systemu źródłowego, a następnie ponownie wygenerować plik i uruchomić go ponownie.
Przekroczono limit aktualizacji (update_limit) Import został przerwany (nie został uruchomiony). Zadanie administratora IGA jest tworzone w celu rozwiązania problemu i ponownego uruchomienia zaplanowanego zadania.
Minimalna liczba wierszy na koncie nie została przekroczona Import został przerwany (nie został uruchomiony). Zadanie administratora IGA jest tworzone w celu rozwiązania problemu i ponownego uruchomienia zaplanowanego zadania.
Wiele plików spełniających kryteria nazewnictwa na serwerze SFTP Import został przerwany (nie został uruchomiony). Należy usunąć dodatkowe pliki i ponownie uruchomić zaplanowane zadanie łącznika HR.

Instrukcje konfiguracji

Instrukcje te uid jak korzystać ze wstępnie skonfigurowanego łącznika HR lub jak utworzyć go od podstaw. Należy pamiętać, że modyfikowanie skryptu wymaga umiejętności pisania skryptów w języku Python.

Wymagania wstępne

Przed uruchomieniem zaplanowanego zadania dla łącznika HR upewnij się, że wykonano następujące zadania:

  1. Skrypt IGA Connector.py można znaleźć w środowiskach testowych i produkcyjnych klientów
    1. W przypadku braku prosimy o kontakt z Service Desk Efecte
  2. Łącznik HR jest skonfigurowany w środowisku testowym rozwiązań Efecte dla klienta
  3. Łącznik HR został przetestowany w środowisku testowym rozwiązań Efecte dla klienta
    1. Utwórz potrzebne dane testowe, przetestuj użytkowników i przypadki testowe
  4. Jakość danych została potwierdzona przez specjalistów ds. HR klientów i przyszłych administratorów IGA
  5. Plik został poprawnie wygenerowany, zaplanowany i zapisany na serwerze SFTP klienta
  6. W przypadku rozwiązania IGA wdroż instrukcje konfiguracji dla przypadków użycia zarządzania cyklem życia użytkownika
    1. Karta(y) danych z informacjami o okresie pracy IGA są dostępne
    2. Karta(y) danych konta IGA są na miejscu
    3. Uzgodniono fazę symulacji, a administrator IGA weryfikuje otrzymane dane w okresie xx przed ich udostępnieniem (gdy jakość danych zostanie zapewniona, można włączyć pełną automatyzację, zmieniając ustawienia na karcie(ach) danych informacji o okresie pracy IGA ).

Ogólne uid dotyczące zaplanowanych zadań

General g uid ance for scheduled tasks

How to Create New Scheduled Task to import data

For configuring scheduled-based provisioning task, you will need access to Administration / Connectors tab.

1. Open the Administration area (a cogwheel symbol).

2. Open Connectors view.

3. Choose Connector for Scheduled-based task and select New Task
   Note! If connector is not created, you have to choose first New connector and after that New task.

 

4. Continue with connector specific instructions: Native Connectors

 
 

Should I use Incremental, Full or Both?

Scheduled task can be either Incremental or Full -type.

Do not import permissions with AD and LDAP incremental task

Incremental task has issue with permissions importing. At the moment it is recommended not to import group memberships with incremental scheduled task.

On Microsoft Active Directory and OpenLDAP connectors, remove this mapping on incremental task:
 

 

 

Setting on Scheduled tasks:

Incremental type is supported only for Microsoft Active Directory, LDAP and Microsoft Graph API (formerly known as Entra ID) Connectors.

Incremental type means, that Native Connectors (EPE) fetches data from source system, using changed timestamp information, so it fetches only data which is changed or added after previous incremental task run.

When Incremental type task is run for very first time, it does a full fetch (and it marks the current timestamp to EPE database),  thereafter, task uses that timestamp to ask the data source for data that changed since that timestamp (and then EPE updates the timestamp to EPE database for next task run). Clearing task cache doesn't affect this timestamp, so Incremental task is always incremental after first run.
 

Full type is supported for all Connectors.

Full type import fetches always all data (it's configured to fetch) from source system, on every run. 
 

Both Full and Incremental type tasks use also Task cache in EPE, which makes certain imports faster and lighter for M42 system.

By default that task cache is cleared ad midnight UTC time. When cache is cleared, next import after that is run without caching used to reason if data fetched should be pushed to ESM, all fetched data is pushed to ESM. But after that, next task runs until next time cache is cleared, are using EPE cache to determine if fetched data needs to be pushed to ESM or not.

You can configure at what time of day task cache is emptied, by changing global setting in EPE datapump configuration: 

/opt/epe/datapump-itsm/config/custom.properties

which is by default set to: clearCacheHours24HourFormat=0

You can also clear cache many times a day, but that needs to be thinked carefully, as it has impact on overall performance as EPE will push changes to ESM, that probably are already there, example(do not add spaces to attribute value): clearCacheHours24HourFormat=6,12

After changing this value, reboot EPE datapump container to take change into use.

Recommendations:

Have always by default Full type scheduled task.

If you want to fetch changes to data fetched already by full task, more frequently than you can run full task, add also incremental task. Usually incremental task is not needed.

 
 

Recommended Scheduling Sequence

Recommended scheduling sequence, depends how much data is read from Customers system/directory to the Matrix42 Core, Pro or IGA solution and is import Incremental or Full. 

Examples for scheduling, 

Total amount of users  Total amount of groups Full load sequence Incremental load sequence
< 500 < 1000 Every 30 minutes if partial load is not used
Four (4) times a day if partial load is used
Every 10 minutes
< 2000 < 2000 Every 60 minutes, if partial load is not used
Four (4) times a day if partial load is used
Every 15 minutes
< 5000 < 3000 Every four (4) hours, if partial load is not used
Twice a day if partial load is used
Every 15 minutes
< 10 000 < 5000 Maximum imports twice a day, no matter if partial load is or is not used Every 30 minutes
< 50 000 < 7000 Maximum import once a day, no matter if partial load is or is not used Every 60 minutes
Over 50 000 Over 7000 There might be a need for another EPE-worker, please contact Product Owner Separately evaluated


Please note that if there are several tasks running at the same time you may need more EPE-workers. The tasks should be scheduled at different times and can be completed according to the table above. However, if there are more than 6 tasks running at the same time, the number of epeworkers should be increased. It's best practice not to schedule tasks to run at same time, if possible.

Recommendations related to performance
If the amount fo data to be imported is over 10000 concider these things:
Adjust log level of ESM and DATAPUMP to ERROR-level, to lowe the amount of logging during task run
Have as few as possible automations starting immediately for imported datacards (listeners, handlers, workflows), as those make ESM to take longer time handling new datacards.

 
 

Set removed accounts and entitlements status removed/disabled

With this functionality, you can mark account and entitlement status to e.g. Deleted or Disabled, when account or entitlement is removed from source system. Starting from version 2025.3 you can also set status to generic objects (not only to accounts/identities and entitlements/groups). 

For version 2025.3 and newer

In version 2025.3 these settings are moved from properties files to Task UI. Also you can now set these settings for Generic objects, which have not been possible before this version.

There is separate configuration for each scheduled task, and for all mapping types. Here is example of this config on task:

For version 2025.2 and older

This functionality is available for “full” type scheduled tasks.

Settings are on datapump dockers configuration file. To change those parameter values, you need to set those in /opt/epe/datapump-itsm/config/custom.properties file.

Configuration

To enable disabling functionality, datapump config should have these parameters set to true:

disable.unknown.esm.users=true
disable.unknown.esm.groups=true

Those 2 parameters are false by default in 2024.2 and 2025.1 versions. In 2025.2 and newer version those are true by default.

 

Next are these parameters:

personTemplateStatusCodeAttributeKey=accountStatus
personTemplateStatusAttributeDisabledValueKey=Deleted
groupTemplateStatusCodeAttributeKey=status
groupTemplateStatusAttributeDisabledValueKey=5 - Removed

First two attributes should point to the DatacardHiddenState attribute in the User template, and tell which value should be send there when the user is deleted.

By default its accountStatus and Value 5 - Removed on IGA Account template.

All these needs to match with the attribute configuration:

 

1.PNG

Same thing applies for the next two paramaters, but its for Groups.'

If you need to change those parameters in properties file, do changes in Datapump container to file: /opt/epe/datapump-itsm/config/custom.properties and those changes will then survive over container reboot and will be copied on reboot to /opt/epe/datapump-itsm/config/application.properties.

Description

Tasks save their __taskid__ shown as Task Id mapping in the UI to the datacards, its then used to determine if the datacard was added by this task. In case there are multiple tasks with different sets of users.

This field was previously used as datasourceid, but since we moved to the model where connector can have multiple tasks its identifier cannot be used anymore, thats why the field was repurposed as taskid instead.

 

Taking users as an example, when task runs ESM is asked for the list of users that have its taskid in Task Id mapping field, and doesn't have a personTemplateStatusAttributeDisabledValueKey value in the personTemplateStatusCodeAttributeKey

This result is then compared to what the task fetched, and the datacards of users that were not fetched have their personTemplateStatusattribute set to value specified in the config - 5 - Removedby default.

Example log below shows described process and informs that one user was removed.

 

2.PNG

Same thing applies to groups but groupTemplateStatusattributes are used instead.

Notes

  • Feature works only with full fetch scheduled tasks..
  • No support for generic templates yet, only identity and access
  • When migrating from the previous versions where datasourceid was still used it needs to run at least once to set its taskid’s in the datacards first.
  • EPE identifies Disabled users or groups as the ones that were removed from the AD, at the present we do not support statuses related to the entity beign active or not.
  • EPE does not enable users back on its own.
  • If more than one tasks fetches the same users or groups it may overwrite the taskid in the datacard depending on which task ran last. It is suggested that many full type tasks are not fetching same user or group.
  • Always do configuration file changes to custom.properties, do not change only application.properties as those changes are lost on container reboot if you have not done same changes to custom.properties.
 
 

 

Konfigurowanie łącznika HR i zaplanowanego zadania

Aby uzyskać dostęp do zarządzania złączami, użytkownik musi mieć uprawnienia do konfiguracji platformy Efecte.

1. Otwórz obszar administracyjny Efecte (symbol koła zębatego).
2. Otwórz widok złączy.
3. Wybierz nowe złącze

2. Wybierz typ źródła danych: Niestandardowe zaplecze

3. Uzupełnij informacje

  • Wpisz unikalną nazwę łącznika, pamiętaj, że nazwy tej nie można później zmienić.
  • Wybierz skrypt IGA Connector.py z pola skryptu provisioningowego
  • Hasło szyfrujące parametry jest potrzebne do ukrycia/ujawnienia parametrów po zapisaniu łącznika
  • Użytkownik API sieci Web jest potrzebny, gdy łącznik HR zapisuje dane klientom Rozwiązanie Efecte
  • Hasło API sieci Web jest potrzebne, gdy łącznik HR zapisuje dane klientom Rozwiązanie Efecte

4. Ujawnij i zmodyfikuj parametry zgodnie z definicjami klienta

  • Zapisz hasło szyfrowania w bezpiecznym miejscu. Będziesz go potrzebować później, jeśli zajdzie potrzeba zmiany parametrów.

    Przykład dotyczący parametrów:
    {"objectGUID_field_name":"objectGUID", "sftp_server_fqdn":"transfer.xx.com", "sftp_server_ssh_port_number":"22", "sftp_username":"username_here", "sftp_password":"username_here", "sftp_remote_path_data":"/sftp/data", "sftp_remote_path_archive":"/sftp/archive",
    "file_path":"./data/workperiod*.csv", // Path and file pattern where file is located. Mandatory value
    "data_type":"workperiod", // Values: costcenter, organization, title or workperiod. Mandatory value
    "run_type":"partial", // Run type specifies if comparison to previous file will be done. Values: full or partial. Optional value, default is 'partial'
    "update_limit": 100, // How many updates are allowed to IGA System. Mandatory value
    "override_update_limit":false, // overrides update limit, if amoun of updates is more than given limit. Values: true or false. Optional value, defaul is 'false'
    "minimum_row_count": 10, // What is the minimum amount of rows, that should exist in the file. Optional value
    "webapi_user": " IGA .Web API ", // Web API user for report creation. Requires Create and Read permissions to IGA Adminisitration task. Mandatory value
    "webapi_password": "aeiou", // Web API user's password. Mandatory value
    "webapi_url":"https://eisdemo.efectecloud-demo.com", // URL to ESM environment. Mandatory value
    "report_template_code":" IGA WorkflowTaskInformation", // Target template code. Mandatory value
    "report_folder_code":"iga_tasks", // Target folder code. Mandatory value
    "debug": false, // Enables debug logging. Values: true of false. Optional value, default is 'false'
    "language": "en" // Sets IGA Administration Task report language. Optional value, default is 'en'
    }

5. Utwórz nowe zaplanowane zadanie dla łącznika HR

6. Wypełnij szczegóły zadania

  • Unikalna nazwa zadania dla łącznika. Należy pamiętać, że nazwy tej nie można później zmienić.
  • Użycie zadań jest ustawione na zaplanowane
  • Typ mapowania jest ustawiony na ogólny (jeden szablon)
  • Nazwa atrybutu dla uid Objectg. Zapisano nazwę kolumny/atrybutu danych wejściowych, która zawiera unikalny identyfikator wiersza. Na przykład: objectGUID

7. Uzupełnij informacje o awarii

Opcjonalne ustawienia obsługi awarii. Jeśli zaplanowane zadanie zakończy się niepowodzeniem, może utworzyć kartę danych w systemie Efecte ESM, która wyświetla błąd. Jeśli zdefiniowano ustawienia awarii, administrator nie musi ręcznie sprawdzać statusu zaplanowanych zadań.

  • Szablon awarii — wybierz szablon karty danych, który zostanie utworzony w razie wystąpienia błędów podczas udostępniania (połączenie ze źródłami danych, przekroczenie limitu czasu itp.).
  • Folder awarii – wybierz folder, w którym będzie przechowywana karta danych awarii.
  • Atrybut awarii — wybierz atrybut, w którym w szablonie awarii mają być przechowywane informacje o błędzie.

8. Uzupełnij mapowania dla szablonu ogólnego

Dane ogólne są odczytywane według potrzeb dowolnego szablonu, a obowiązkowe jest ustawienie folderu docelowego, identyfikatora źródła danych i unikalnych wartości, które służą do identyfikacji danych pomiędzy działem HR klienta a rozwiązaniem Efecte.

  • Szablon docelowy — wybierz szablon, aby zdefiniować mapowania atrybutów
    Wybierz szablon, aby zdefiniować mapowania atrybutów
  • Folder docelowy – wybierz folder z listy folderów. Lista jest zawężana w celu dopasowania do wybranego szablonu.
  • Mapowania atrybutów
    1. Atrybut szablonu Efecte - do którego atrybutu w katalogu Efecte jest mapowany atrybut.
    2. Atrybut HR – który atrybut z pliku jest mapowany na Efecte

9. W przypadku konieczności modyfikacji skryptu należy go pobrać z komputera klienta, zmodyfikować i ponownie przesłać.

  • Jeśli nie masz dostępu do komputera-hosta, skontaktuj się z Service Desk Efecte, aby uzyskać pomoc.

10. Zapisz zmiany

11. Przed uruchomieniem zaplanowanego zadania dla łącznika HR,

  • Sprawdź, czy cała konfiguracja dotycząca przepływów pracy i ustawień na kartach danych jest na swoim miejscu.
  • Podczas pierwszego uruchomienia upewnij się, że obsługa katalogów i aplikacji jest wyłączona

12. Uruchom zadanie ręcznie lub poczekaj, aż rozpocznie się zaplanowane uruchamianie.

13. Sprawdź, czy dane zostały odczytane na właściwych kartach danych i czy zastosowano właściwe atrybuty.

14. Rozwiązywanie problemów

  • W przypadku użycia szablonu awarii należy sprawdzić poprawność karty danych
  • Sprawdź historię zaplanowanych zadań z poziomu zarządzania łącznikiem
  • Sprawdź dzienniki modułu Efecte Provisioning Engine

Dobrze pamiętać!

Pamiętaj, aby zapisać wszystkie hasła w bezpiecznym miejscu.

Czy łącznik HR jest odpowiedni do mojego zastosowania?

Wybierz łącznik HR jeśli:

  • Plik HR jest w formacie XML, CSV lub JSON
  • Klient ma serwer SFTP
  • Informacje HR są otrzymywane z przeszłości i przyszłości
  • Typ danych to centrum kosztów, organizacja, stanowisko lub okres pracy
  • Dane zawierają co najmniej nazwisko, imię, datę rozpoczęcia zatrudnienia, identyfikator stanowiska, identyfikator kierownika, identyfikator jednostki organizacyjnej
  • Dane zawierają co najmniej jedną z następujących unikalnych wartości: numer ubezpieczenia społecznego / dowód osobisty / numer pracownika

Jak dostosować import

How to create and modify custom Python scripts

General info

Generic Python Script connector comes with couple out-of-the box Python scripts. You should not modify those. Instead, if you need to make modifications to those, copy-paste those to new name and then do your modifications to newly named python script file. And as last step, modify your connector to use that script.

Work order:

  1. Create your custom scheduled or task-based script
  2. Take it into use to connector from Connectors UI

Scheduled scripts

How to take your custom python script into use for scheduled tasks, guidance for 1 host and 1 worker environment:

Note! Do not change "default" .py files which came with environment installation.

Copy your customly named (in this example mypythonscript.py) python script to these folders from HOST (remember to use correct tenant_name in path):

cp mypythonscript.py /var/lib/efecteone/tenant_files/{tenant_name}/epe-master/files/custom-provisioning-scripts/only_scheduled

cp mypythonscript.py /var/lib/efecteone/tenant_files/{tenant_name}/epe-worker-1/files/custom-provisioning-scripts

cp mypythonscript.py /var/lib/efecteone/tenant_files/{tenant_name}/epe-master/files/custom-provisioning-scripts

 

Change your custom python script file permission to 755 on all those above locations where you copied your script(in this example mypythonscript.py) (remember to use correct tenant_name in path):

chmod 755 /var/lib/efecteone/tenant_files/{tenant_name}/epe-master/files/custom-provisioning-scripts/only_scheduled/mypythonscript.py

chmod 755 /var/lib/efecteone/tenant_files/{tenant_name}/epe-worker-1/files/custom-provisioning-scripts/mypythonscript.py

chmod 755 /var/lib/efecteone/tenant_files/{tenant_name}/epe-master/files/custom-provisioning-scripts/mypythonscript.py

 

If you have more hosts, repeat on every host.

If you have more workers, repeat to every worker(check that worker folder name is correct).

 


 

Event-based scripts

How to take your custom python script into use for event-based tasks, guidance for 1 host environment:

Note! Do not change "default" .py files which came with environment installation.

Copy your customly named (in this example mypythonscript.py) python script to these folders from HOST (remember to use correct tenant_name in path):

cp mypythonscript.py /var/lib/efecteone/tenant_files/{tenant_name}/epe-master/files/custom-provisioning-scripts/only_event

cp mypythonscript.py /var/lib/efecteone/tenant_files/{tenant_name}/epe-master/files/custom-provisioning-scripts

 

Change your custom python script file permission to 755 on all those above locations where you copied your script(in this example mypythonscript.py) (remember to use correct tenant_name in path):

chmod 755 /var/lib/efecteone/tenant_files/{tenant_name}/epe-master/files/custom-provisioning-scripts/only_event/mypythonscript.py

chmod 755 /var/lib/efecteone/tenant_files/{tenant_name}/epe-master/files/custom-provisioning-scripts/mypythonscript.py

 

If you have more hosts, repeat on every host.

 

Example/base for custom Event-based python script 

This script reads attribute values from Connector and from Orchestration node. And prints values to logs. You can use this as a starting point for your own custom python script for Event-based tasks.

#!/usr/bin/python3

import json
import sys
import logging

def main():
    # Configure logging, change log file name
    logging.basicConfig(filename='python_event_task_abc.log', level=logging.INFO, format='%(asctime)s - %(message)s')
    
    # Read inputs from stdin
    lines = sys.stdin.read().splitlines()

    if len(lines) != 2:
        print("Error: Expected exactly two lines of input.")
        raise Exception("Expected exactly two lines of input.")

    # Parse the first line, this contains connector variables
    try:
        connector_parameters = json.loads(lines[0])
        host = connector_parameters.get('host', None)
        password = connector_parameters.get('password', None)
        logging.info(f"Connector parameters, Host={host}")
        # read custom connector parameters here
    except json.JSONDecodeError:
        raise Exception("Connector parameters is not a valid JSON string.") 

    # Parse the second line, this contains mappings data from template datacard
    try:
        task_mappings = json.loads(lines[1])
        logging.info(f"Task mappings JSON: {task_mappings}")
        #read task mappings data here

        # Implement your logic here

        
    except json.JSONDecodeError as e:
        raise Exception("Task mappings is not a valid JSON string.") from e
        # Exceptions raised are controlling workflow orchestration node flow, on exception it goes to Exception path, otherwise it goes to Completed path. Exception raised can be seen on Provisioning exception attribute value.
    except Exception as e:
        raise Exception("An unexpected error occurred") from e

if __name__ == "__main__":
    main()

 
 

 


Take customly named script into use to connector

How to take your customly named Python script into use, by selecting it from Connectors UI. Select your script from connectors Provisioning script -dropdown:

 

 

Implementation and work estimations

Only Matrix42 has access to host, which is needed for these custom scripts to be installed.

These expansion possibilities always need Matrix42 consultants review, before implementation and work estimations can be agreed.

 

 

Was this article helpful?

Yes
No
Give feedback about this article

Related Articles

  • Konfiguracja: EPE Utwórz kartę danych docelową ESM
  • Konfiguracja: EPE Usuń kartę danych z docelowego ESM
  • Konfiguruj: łącznik EPE Jira Cloud

Copyright 2026 – Matrix42 Professional.

Matrix42 homepage


Knowledge Base Software powered by Helpjuice

0
0
Expand