Generischer Python Script Konnektor
Generischer Python Script Konnektor
Der Konnektor „Generisches Python Script (früher bekannt als „Benutzerdefiniertes Skript“ und „Benutzerdefiniertes Backend“) ist Teil der nativen Konnektoren und kann zum Lesen von Daten aus beliebigen Anwendungen und zum Exportieren in Matrix42 Core , Pro and IGA Lösungen des Kunden verwendet werden. Die Funktionalität wird durch ein vom Kunden bereitgestelltes Python-Skript implementiert, das auf dem Host-Rechner der Kundenlösung ausgeführt wird. Das Skript liest Informationen aus der Zielanwendung und generiert anschließend eine JSON-Datei mit den gelesenen Informationen.
Wenn der benutzerdefinierte Skript-Connector verwendet wird, ist es erforderlich, dass
- Für den Connector wurde ein Python-Skript erstellt, das auf dem Hostcomputer der Efecte-Lösung des Kunden gespeichert ist.
- Die Connector-Details sind erfüllt und die geplante Aufgabe ist zum Importieren von Daten in die Kundenlösung konfiguriert.

Allgemeine Funktionalitäten
Konnektoren - allgemeine Funktionalitäten
Konnektoren - allgemeine Funktionalitäten
In diesem Artikel werden allgemeine Funktionen zur Verwaltung nativer Konnektoren in der Lösung beschrieben. Alle nativen Konnektoren werden über dieselbe Benutzeroberfläche zur Konnektorverwaltung verwaltet.
Beachten Sie, dass es für jeden Konnektor eine separate Beschreibung gibt, in der die konnektorspezifischen Funktionen und Konfigurationsanweisungen detailliert beschrieben werden.
Um auf die Connector-Verwaltung zugreifen zu können, benötigt der Benutzer Administratorrechte für die Plattformkonfiguration des Kunden. Bei korrekter Zugriffsberechtigung wird die Registerkarte „Connector“ angezeigt und der Benutzer kann die Connectors verwalten.

Linkes Menü
Die Connector-Verwaltung ist in vier Registerkarten unterteilt:

- Übersicht – zum Erstellen und Aktualisieren nativer Konnektoren. Der Administrator kann deren Status und Typ sowie die Anzahl der ihnen zugeordneten geplanten oder ereignisbezogenen Aufgaben sehen.
- Authentifizierung – zum Erstellen und Aktualisieren von Authentifizierungsaufgaben. Für Secure Access ist Pro Bereitstellungsaufgabe für die Authentifizierung erforderlich, um festlegen zu können, welche Endbenutzer des Kunden auf die Anmeldeseite Matrix42 Core , Pro and IGA zugreifen können.
- Protokolle – zum Herunterladen von Native Connector- und Secure Access Protokollen von der Benutzeroberfläche.
- Einstellungen – allgemeine Einstellungen für native Konnektoren und Secure Access , einschließlich Umgebungstyp für Protokollierung und Überwachung.
Registerkarte „Konnektorenübersicht“
Auf der Übersichtsseite kann der Benutzer einfach und schnell den Status aller Konnektoren sehen.

Obere Leiste:
- Status für native Konnektoren (EPE)
- Grüner Text zeigt an, dass Native Connectors online ist. Alle benötigten Dienste sind aktiv und werden ausgeführt.
- Roter Text weist darauf hin, dass ein Problem mit Native Connectors vorliegt und nicht alle Dienste ausgeführt werden.
- Status für Secure Access ( ESA )
- Grüner Text zeigt an, dass Secure Access online ist. Alle erforderlichen Dienste sind aktiv und werden ausgeführt.
- Roter Text zeigt an, dass ein Problem mit Secure Access vorliegt und alle Dienste nicht ausgeführt werden.
- Die Versionsnummer des nativen Connectors wird in der oberen rechten Ecke angezeigt
Obere Leiste für die Listenansicht:

- Neuer Connector – öffnet ein neues Fenster zum Hinzufügen und Konfigurieren eines neuen Connectors
- Konnektor(en) entfernen – Workflow-Referenzen werden berechnet und ein Popup-Fenster wird angezeigt, um die Entfernung zu bestätigen (beachten Sie, dass die Berechnung der Referenzen mehrere Sekunden dauern kann).
- Exportieren – Der Administrator kann einen oder mehrere Konnektoren (und Aufgaben) aus der Umgebung exportieren. Wird normalerweise zum Exportieren von Konnektoren und Konnektoren (und Aufgaben) vom Test in die Produktion verwendet. Die geheimen Informationen nativer Konnektoren sind passwortgeschützt.
- Importieren – Der Administrator kann einen oder mehrere Konnektoren (und Aufgaben) in die Umgebung importieren. Wird normalerweise zum Importieren von Konnektoren (und Aufgaben) vom Test in die Produktion verwendet.
- Der Administrator kann nicht von der alten EPE-Benutzeroberfläche (älter als 2024.1) in die neue importieren. Quell- und Zielumgebung müssen dieselbe Version haben.
- Der Import schlägt fehl, wenn die Konfiguration (Vorlagen, Attribute) nicht identisch ist – zum Beispiel wenn ein Attribut fehlt
- Wenn Sie etwas mit den gleichen Connector-Details importieren, wird es unter dem vorhandenen Connector zusammengeführt
- Aktualisieren – Der Administrator kann die Connector-Ansicht aktualisieren, indem er auf die Schaltfläche klickt .
Listenansicht zur Übersicht,

- Konnektor(en) auswählen - Wählen Sie einen Konnektor aus, indem Sie das Kontrollkästchen vor der Konnektorzeile anklicken. Durch Anklicken des Kontrollkästchens in der Kopfzeile werden alle Konnektoren ausgewählt.
- ID – Automatisch generierte eindeutige ID des Connectors. Kann nicht bearbeitet oder geändert werden.
- Status – zeigt den Status der geplanten Aufgabe an
-
Grünes Häkchen - Aufgabe wird ohne Fehler ausgeführt
-
Rotes Kreuz - Aufgabe wird ausgeführt, aber es sind Fehler aufgetreten
-
Graue Uhr – Aufgabe wurde noch nicht ausgeführt, wartet auf Planung -
Orange – eine der Aufgaben hat ein Problem
- Kein Wert – geplante basierte Aufgabe fehlt
-
- Name – Konnektorname, der den Konnektoreinstellungen hinzugefügt wurde. Eindeutiger Name des Konnektors, der die Konfiguration für eine Datenquelle enthält
- Typ – gibt das Ziel-/Quellsystem an
- Geplant – informiert darüber, wie viele geplante Aufgaben konfiguriert sind
- Ereignis - informiert darüber, wie viele Ereignisaufgaben konfiguriert sind
- Verwalten
- Stiftsymbol – öffnet die Konnektoreinstellungen (durch Doppelklicken auf die Konnektorzeile werden auch die Einstellungen geöffnet)
- Papiersymbol – kopiert den Konnektor
- Stopp – Workflow-Referenzen werden berechnet und ein Popup-Fenster wird angezeigt, um die Entfernung zu bestätigen
- Suchen – Der Benutzer kann den Connector suchen, indem er den Suchbegriff in das entsprechende Feld eingibt. Die Felder ID, Status, Name, Typ, Geplant und Ereignis können durchsucht werden.
Informationen zu geplanten Aufgaben (klicken Sie auf den Pfeil vor dem Connector)
Wenn Sie auf den Pfeil am Anfang der Verbindungszeile klicken, werden alle zugehörigen geplanten und ereignisbezogenen Aufgaben angezeigt

Obere Leiste für geplante Aufgaben
- Neue Aufgabe – öffnet die Konfigurationsseite für eine neue Aufgabe
- Aufgabe(n) entfernen – entfernt die ausgewählte(n) Aufgabe(n) aus dem System und sie können nicht mehr wiederhergestellt werden.
- Aktualisieren – Aktualisieren Sie die Ansicht geplanter Aufgaben
- Suche – Der Benutzer kann nach Aufgaben suchen, indem er den Suchbegriff in das entsprechende Feld für ID, Name, aktiviert, Extrahieren/Laden-Status eingibt.
Listenansicht für geplante Aufgaben

- Aufgabe(n) auswählen - Wählen Sie die zu löschende Aufgabe aus der Listenansicht durch Ankreuzen aus.
- ID – Eindeutige ID der Aufgabe. Wird automatisch generiert und kann nicht geändert werden.
- Name – Den Aufgabeneinstellungen hinzugefügter Aufgabenname, eindeutiger Name der Aufgabe.
- Aktiviert – Zeigt an, ob die Aufgabe geplant ist oder nicht
-
Grünes Häkchen – Aufgabe ist geplant
-
Rotes Kreuz – Aufgabe ist nicht geplant
-
- Extraktionsstatus – Zeigt den Status der Datenextraktion aus dem Zielverzeichnis/-system an
-
Grünes Häkchen – Daten wurden erfolgreich extrahiert
-
Rotes Kreuz – Daten wurden mit Fehler(n) extrahiert oder die Extraktion ist fehlgeschlagen
-
Uhr – Aufgabe wartet auf Ausführung
-
- Ladestatus – Zeigt den Status des Datenexports aus der JSON-Datei zur Kundenlösung an
-
Grünes Häkchen – Daten wurden erfolgreich in die Kundenlösung importiert
-
Rotes Kreuz – Daten wurden mit Fehler(n) importiert oder der Import ist fehlgeschlagen
-
- Verwalten
- Stiftsymbol – öffnet die Aufgabeneinstellungen in einem eigenen Fenster (durch Doppelklicken auf die Aufgabenzeile werden die Aufgabeneinstellungen ebenfalls geöffnet)
- Papiersymbol – kopiert die Aufgabe
- Uhrensymbol – öffnet die Aufgabenverlaufsansicht
- Stopp - Aufgabe entfernen, Popup-Fenster öffnet sich, um das Entfernen zu bestätigen
Verlaufsansicht geplanter Aufgaben
Durch Klicken auf das Uhrensymbol in der Zeile mit den geplanten Aufgaben wird der Zeitplanverlauf angezeigt.

Obere Leiste für den Anzeigeverlauf
- Aktualisieren – Aktualisiert den Status der geplanten Aufgabe. Dies hat keine Auswirkungen auf die Aufgabe, sondern aktualisiert lediglich die Benutzeroberfläche, um die neuesten Informationen zum Aufgabenlauf anzuzeigen.
Listenansicht für den Verlauf geplanter Aufgaben
- Die Farbe der Zeile zeigt den Status an
-
Grün – Aufgabe erfolgreich ausgeführt
-
Rot – während der Ausführung ist ein Fehler aufgetreten
-
- Ausführungs-ID – eindeutige ID für die geplante Aufgabenzeile
- Geplanter Zeitpunkt des Extrahierens – wann der nächste Extrahieren aus dem Verzeichnis/der Anwendung erfolgen soll
- Zeitpunkt der Extraktionsfertigstellung – wann die Extraktion abgeschlossen wurde
- Status extrahieren - Status zum Abrufen von Daten aus dem Verzeichnis/der Anwendung
- Ladestartzeit – wann die nächste Ladung zur Kundenlösung erfolgen soll
- Ladeabschlusszeit – wann der Ladevorgang abgeschlossen war
- Ladestatus - Status zum Laden von Informationen zur Kundenlösung
Listenansicht für den Status geplanter Aufgaben
- Tatsächliche Startzeit - Zeitstempel für den tatsächlichen Start
- Benutzerdatei – JSON-Datei mit Benutzerinformationen, die aus dem Verzeichnis/der Anwendung gelesen wurden
- Gruppendatei – JSON-Datei mit Gruppeninformationen, die aus dem Verzeichnis/der Anwendung gelesen wurden
- Generische Datei – JSON-Datei mit allgemeinen Informationen, die aus dem Verzeichnis/der Anwendung gelesen wurden
- Informationen extrahieren - detaillierte Informationen zum Lesen von Informationen aus dem Verzeichnis/der Anwendung
- Ladeinformationen - detaillierte Informationen zum Laden der Informationen für Matrix42 Core , Pro and IGA -Lösung des Kunden
Bearbeitungsfenster für geplante Aufgabe
Die Konfiguration für geplante Aufgaben kann durch Klicken auf das Stiftsymbol oder Doppelklicken auf die Aufgabenzeile geöffnet werden.
Das linke Menü und die Attribute variieren je nach den ausgewählten Optionen. Ausführlichere Anweisungen zum Bearbeiten von Aufgaben finden Sie daher in der Connector-Beschreibung. Es gibt jedoch gemeinsame Funktionen für alle geplanten Aufgaben, die unten beschrieben werden.

Speichern der Aufgabe
Falls in der Aufgabe obligatorische Informationen fehlen, können Sie durch Bewegen der Maus über die Schaltfläche „Speichern“ anzeigen, welche Attribute noch leer sind.
Obere Leiste zum Bearbeiten geplanter Aufgaben
- Aufgabe manuell ausführen – Der Administrator kann Aufgaben außerhalb der definierten Planung manuell ausführen
- Aufgabe stoppen – Der Administrator kann eine geplante Aufgabe stoppen, die aktuell ausgeführt wird. Die Aufgabe wird gestoppt und der Status auf „Gestoppt“ geändert. Die Aufgabe wartet in diesem Zustand bis zum nächsten Zeitpunkt.
- Datencache leeren – Der Datencache für die nächste Bereitstellung von Benutzern und Gruppen wird geleert. Dies bedeutet, dass der nächste Lauf wie beim ersten Lauf ausgeführt wird.
- Standardmäßig leeren wir den Cache jeden Tag um 00:00 UTC
- Wenn Sie den Cache zu einem anderen Zeitpunkt leeren möchten, müssen Sie in der Hostdatei „custom.properties“ einen anderen Wert angeben.
- Der EPE-Cache wird auch gelöscht, wenn EPE neu gestartet wird, die gesamte Umgebung neu gestartet wird und EPE-Zuordnungen geändert wurden
Informationen zur Ereignisaufgabe
Wenn Sie auf den Pfeil am Anfang der Verbindungszeile klicken, werden alle zugehörigen geplanten und ereignisbezogenen Aufgaben angezeigt

Obere Leiste für Ereignisaufgaben
- Neue Aufgabe – öffnet die Konfigurationsseite für eine neue Ereignisaufgabe
- Aufgabe(n) entfernen - entfernt ausgewählte Aufgabe(n), ein Popup-Fenster erscheint, um die Entfernung zu bestätigen
- Aktualisieren – aktualisiert die Ereignisaufgabenansicht
- Workflow-Referenzen anzeigen - berechnet aufgabenbezogene Workflow-Beziehungen und Status. Dies ist sehr nützlich, wenn Sie nicht wissen, aus welchen Workflows ereignisbasierte Aufgaben verwendet werden.
Listenansicht für Ereignisaufgaben
- Aufgabe(n) auswählen - Wählen Sie die zu löschende Aufgabe aus der Listenansicht durch Ankreuzen aus.
- ID – Eindeutige ID der Aufgabe. Wird automatisch generiert und kann nicht geändert werden.
- Name – Den Aufgabeneinstellungen hinzugefügter Aufgabenname, eindeutiger Name der Aufgabe.
- Workflow-Beziehungen
- Fragezeichen zeigt Popup-Fenster mit detaillierten Informationen zur Referenz
- Workflow-Status
- Nicht verwendet – Keine Beziehung zum Workflow
- In Verwendung – Workflow(s) an Aufgabe angehängt, Aufgabe kann nicht entfernt werden
- Verwalten
- Stiftsymbol – öffnet Aufgabeneinstellungen in einem eigenen Fenster
- Papiersymbol – kopiert die Aufgabe
- Stoppsymbol - entfernt die Aufgabe, ein Popup-Fenster wird angezeigt, um das Entfernen zu bestätigen
Bearbeitungsfenster für Ereignisaufgabe
Die Konfiguration für Ereignisaufgaben kann durch Klicken auf das Stiftsymbol oder Doppelklicken auf die Aufgabenzeile geöffnet werden.
Das linke Menü und die Attribute variieren je nach ausgewählten Optionen. Ausführlichere Anweisungen zum Bearbeiten von Aufgaben finden Sie daher in der Connector-Beschreibung. Es gibt jedoch gemeinsame Funktionen für alle Ereignisaufgaben, die unten beschrieben werden.

Fenster „Ereignisaufgabe bearbeiten“
- Aufgabennutzung, bearbeitbar? - Dies wird angezeigt, wenn die Bearbeitung einer vorhandenen Aufgabe und die Änderung des Aufgabennutzungstyps Arbeitsabläufe unterbricht.
- Zuordnungstyp, bearbeitbar? - Dies wird angezeigt, wenn die Bearbeitung einer vorhandenen Aufgabe und die Änderung des Zuordnungstyps Arbeitsabläufe unterbricht.
Speichern der Aufgabe
Falls in der Aufgabe obligatorische Informationen fehlen, können Sie durch Bewegen der Maus über die Schaltfläche „Speichern“ sehen, welche Attribute noch leer sind.
Registerkarte „Authentifizierung“
Die Authentifizierung für Matrix42 Core , Pro and IGA Lösungen wird über die Registerkarte „Authentifizierung“ konfiguriert. Beachten Sie, dass nur einige der Konnektoren (Verzeichniskonnektoren) die Authentifizierung unterstützen. Daher ist es nicht möglich, Authentifizierungsaufgaben für alle verfügbaren Konnektoren zu erstellen.

Obere Leiste zur Authentifizierung
- Neuer Connector – öffnet ein neues Fenster zum Konfigurieren eines neuen Connectors (beachten Sie, dass nicht alle Connectors die Authentifizierung unterstützen)
- Konnektor(en) entfernen – entfernt ausgewählte Aufgabe(n), ein Popup-Fenster wird angezeigt, um die Entfernung zu bestätigen
- Exportieren – Der Benutzer kann eine oder mehrere Aufgaben aus der Umgebung exportieren. Wird normalerweise zum Exportieren von Aufgaben vom Test in die Produktion verwendet. EPE-Konnektoren sind passwortgeschützt.
- Beachten Sie, dass Realm für Authentifizierungsaufgaben nicht exportiert wird. Sie müssen dies nach dem Import manuell einstellen
- Importieren – Der Benutzer kann eine oder mehrere Aufgaben in die Umgebung importieren. Wird normalerweise zum Importieren von Aufgaben vom Test in die Produktion verwendet.
- Aktualisieren – aktualisiert die Ansicht der Authentifizierungsaufgaben
Listenansicht zur Authentifizierungsübersicht
- Konnektor(en) auswählen - Wählen Sie einen Konnektor aus, indem Sie das Kontrollkästchen vor der Konnektorzeile anklicken. Durch Anklicken des Kontrollkästchens in der Kopfzeile werden alle Konnektoren ausgewählt.
- ID – Automatisch generierte eindeutige ID des Connectors. Kann nicht bearbeitet oder geändert werden.
- Name – Konnektorname, der den Konnektoreinstellungen hinzugefügt wurde. Eindeutiger Name des Konnektors, der die Konfiguration für eine Datenquelle enthält
- Typ – gibt das Ziel-/Quellsystem an
- Anzahl - informiert darüber, wie viele Authentifizierungsaufgaben konfiguriert sind
- Verwalten
- Stiftsymbol – öffnet die Authentifizierungsaufgabeneinstellung in einem eigenen Fenster
- Papiersymbol – kopiert die Aufgabe
- Stoppsymbol – entfernt ausgewählte Aufgabe
Informationen zur Authentifizierungsaufgabe
Wenn Sie auf den Pfeil am Anfang der Verbindungszeile klicken, werden alle zugehörigen geplanten und ereignisbezogenen Aufgaben angezeigt

Obere Leiste für die Authentifizierungsübersicht
- Neue Aufgabe erstellen – öffnet die Konfigurationsseite für eine neue Authentifizierungsaufgabe
- Aufgabe(n) entfernen - entfernt ausgewählte Aufgabe(n), ein Popup-Fenster erscheint, um die Entfernung zu bestätigen
- Aktualisieren – aktualisiert die Ansicht der Authentifizierungsaufgaben
Listenansicht zur Authentifizierungsübersicht,
- Aufgabe(n) auswählen - Wählen Sie die zu löschende Aufgabe aus der Listenansicht durch Ankreuzen aus.
- ID – Eindeutige ID der Aufgabe. Wird automatisch generiert und kann nicht geändert werden.
- Name – Den Aufgabeneinstellungen hinzugefügter Aufgabenname, eindeutiger Name der Aufgabe.
- Verwalten
- Stiftsymbol – öffnet die Aufgabeneinstellungen in einem eigenen Fenster (ein Doppelklick auf die Aufgabenzeile öffnet auch das Einstellungsfenster)
- Papiersymbol – kopiert die Aufgabe
- Stoppsymbol - entfernt die Aufgabe, ein Popup-Fenster wird angezeigt, um das Entfernen zu bestätigen
Registerkarte „Protokolle“
Die Registerkarte „Protokolle“ dient zum Herunterladen von Native Connector- und Secure Access Protokollen von der Benutzeroberfläche zur detaillierten Fehlerbehebung.

- epe-master -Protokolle – enthalten Warn-, Debug- und Fehlermeldungen zu nativen Konnektoren und Informationen darüber, wie lange Aufgabenaktionen ausgeführt wurden.
- epe-worker-ad- Protokolle – enthalten den Status der extrahierten Daten des Active Directory Connectors (was der Native Connector in Matrix42 Core , Pro and IGA -Lösung des Kunden lädt). Wenn die Auswahl leer ist, bedeutet dies, dass das Verzeichnis in dieser Umgebung nicht verwendet wird.
- epe-worker-azure -Protokolle – enthält den extrahierten Datenstatus der Entra ID (was der Native Connector in Matrix42 Core , Pro and IGA Lösung des Kunden lädt). Wenn die Auswahl leer ist, bedeutet dies, dass das Verzeichnis in dieser Umgebung nicht verwendet wird.
- epe-worker-ldap -Protokolle – enthalten den Status der extrahierten Daten von LDAP (was der Native Connector in Matrix42 Core , Pro and IGA Lösung des Kunden lädt). Wenn die Auswahl leer ist, bedeutet dies, dass das Verzeichnis in dieser Umgebung nicht verwendet wird.
- epe-launcher logs - enthält Informationen zu EPE-Starts
- datapump-itsm logs – Enthält Informationen zum Datenexport an Matrix42 Core , Pro and IGA Lösung des Kunden.
- esa logs – Enthält Informationen zur Secure Access Authentifizierung.
Registerkarte „Einstellungen“
Die Registerkarten „Einstellungen“ werden zum Überwachen von Umgebungen mit Konnektoren verwendet.

- Umgebungstyp – muss zwingend ausgewählt werden und die Informationen werden beispielsweise zum Definieren kritischer Warnungen verwendet.
- Test – wählen Sie diese Option, wenn Ihre Umgebung als Testumgebung verwendet wird.
- Pro d - wählen Sie dies, wenn Ihre Umgebung als Produktionsumgebung verwendet wird
- Demo - wählen Sie diese Option, wenn Ihre Umgebung als Demo- oder Schulungsumgebung verwendet wird
- Dev – wählen Sie dies, wenn Ihre Umgebung als Entwicklungsumgebung verwendet wird
Was überwachen wir?
- Fehler bei der zeitplanbasierten Bereitstellung (Extrahieren von Daten, Exportieren von Daten nach ESM, veraltete Zertifikate, falsche Passwörter, falsche Suchbasis/Filter, falsche Zuordnungen usw.)
- Fehler bei der ereignisbasierten Bereitstellung (Fehler beim Schreiben in AD / Azure usw.)
- Ereignisbasierte Bereitstellung – welche Konnektoren werden zum Schreiben von Daten in Anwendungen/Verzeichnisse verwendet.
- ESA Mehr als zehn fehlgeschlagene Anmeldeversuche für einen Benutzer in den letzten drei Tagen
- Umgebungstyp – muss zwingend ausgewählt werden und die Informationen werden beispielsweise zum Definieren kritischer Warnungen verwendet.
Datenmigrationen
Klicken Sie nicht auf „Attributzuordnungen migrieren“ oder „Workflows migrieren“, wenn Sie nicht von Matrix42 dazu aufgefordert werden.
Python-Skript erstellen
Hier ist ein Beispiel für ein Python-Skript, Sie können aber auch Ihr eigenes erstellen.
#!/usr/bin/python3
JSON importieren
Betriebssystem importieren
importiere common_subroutines_efecte_library
# system_info_efecte_library.printOsName()
# system_info_efecte_library.printReleaseVersion()
arguments_dictionary = common_subroutines_efecte_library.initialize_script()
########################################
#
# kundenspezifische Skripte darunter platzieren
#
#
data_extraction_attributes_json = arguments_dictionary['data_extraction_attributes']
script_current_working_directory = arguments_dictionary['script_current_working_directory']
error_filename_full_path = arguments_dictionary['error_filename']
erwarteter_Ausgabedateiname_vollständiger_Pfad = Argumente_Wörterbuch['erwarteter_Ausgabedateiname']
heartbeat_filename_full_path = arguments_dictionary['heartbeat_filename']
log_filename_vollständiger_Pfad = Argumente_Wörterbuch['log_filename']
total_attributes_to_extract = len(data_extraction_attributes_json)
common_subroutines_efecte_library.log_line(log_filename_full_path, 'Skriptverarbeitung gestartet')
os.chdir(aktuelles_Arbeitsverzeichnis des Skripts)
Liste = []
dictionary_data_extraction_attributes = {}
für n im Bereich (total_attributes_to_extract):
Attributname = gemeinsame Unterroutinen_Effektbibliothek.get_value_from_json(data_extraction_attributes_json[n],
'Attributname')
Mehrfachwert = gemeinsame_Unterroutinen_efecte_library.get_value_from_json(data_extraction_attributes_json[n], 'Mehrfachwert')
dictionary_data_extraction_attributes[attribute_name] = str(mehrere Werte)
common_subroutines_efecte_library.log_line(log_filename_full_path, 'Skript erstellt JSON-Datei mit angeforderten Feldern')
für n im Bereich (1, 11):
Wertewörterbuch = {}
für one_key in dictionary_data_extraction_attributes.keys():
values_dictionary[one_key] = 'Dies ist ein Beispielwert für Zeile = ' + str(n) + ' , Schlüssel = ' + one_key
list.append(Wertewörterbuch)
# drucken(json.dumps(Liste, Einzug=4, Sortierschlüssel=True))
f = open(erwarteter_Ausgabedateiname_vollständiger_Pfad, "w")
f.write(json.dumps(Liste, Einzug=4, Sortierschlüssel=Wahr))
f.close()
common_subroutines_efecte_library.log_line(log_filename_full_path, 'Skript erfolgreich abgeschlossen!')
# json_data = json.dumps(Liste)
# drucken('json_data = ' + json_data)
# Heartbeat-Datei muss mindestens alle 5 Minuten aktualisiert werden
f = open(heartbeat_filename_full_path, "w+")
f.write('Heartbeat aktualisiert: ' + common_subroutines_efecte_library.get_timestamp())
f.close()
Konfigurieren des benutzerdefinierten Backend-Connectors
Für den Zugriff auf die Connector-Verwaltung muss der Benutzer über Berechtigungen zur Efecte-Plattformkonfiguration verfügen.
1. Öffnen Sie den Efecte-Administrationsbereich (ein Zahnradsymbol).
2. Öffnen Sie die Konnektoransicht.
3. Neuen Connector auswählen

2. Wählen Sie den Datenquellentyp „Benutzerdefiniertes Backend“

3. Informationen erfüllen
- Geben Sie einen eindeutigen Connector-Namen für den Connector ein. Beachten Sie, dass der Name später nicht mehr geändert werden kann.
- Wählen Sie das Skript [script_filename].py aus dem Feld „Bereitstellungsskript“ aus.
- Das Verschlüsselungskennwort für Parameter wird zum Ausblenden/Anzeigen von Parametern benötigt, nachdem der Connector gespeichert wurde
- Ein Web- API Benutzer wird benötigt, wenn der Connector Daten an Kunden schreibt. Effektive Lösung
- Das Web API Passwort wird benötigt, wenn der Connector Daten an Kunden schreibt. Efecte-Lösung

4. Speichern Sie den Connector über die Schaltfläche „Speichern“. Jetzt ist der Connector konfiguriert und Sie können mit der Konfiguration der geplanten Aufgabe fortfahren.
Empfehlungen für die Ordnerstruktur des FTP-Servers
Wenn der Kunde einen benutzerdefinierten Backend-Connector zum Importieren vieler verschiedener Datentypen verwenden möchte, wird empfohlen, pro Datentyp einen benutzerdefinierten Backend-Connector zu haben.
Wenn der Kunde beispielsweise Berechtigungen und Rollen importieren möchte, sollte er über zwei Konnektoren verfügen, nämlich „Berechtigungskonnektor“ und „Rollenkonnektor“.
Und wenn sich diese beiden Connector-Dateien auf demselben FTP-Server befinden, könnte die Ordnerstruktur beispielsweise wie folgt aussehen:
/sftp/iga/in/entitlements
/sftp/iga/in/entitlements/archive
/sftp/iga/in/roles
/sftp/iga/in/roles/archive
Der Datenordner sollte jeweils nur eine Datei enthalten.
Mit dieser Ordnerstruktur können Sie diese Skriptparameter in Ihrem Berechtigungs-Connector verwenden:
“sftp_remote_path_data”:"/sftp/iga/in/ Berechtigungen ",
“sftp_remote_path_archive”:"/sftp/iga/in/ Berechtigungen /archive",
“file_path”:"./ Berechtigungen /*.csv"
Und ebenso unterschiedliche Skriptparameter für den Rollen-Connector.
Allgemeine uid für geplante Aufgaben
Allgemeine uid für geplante Aufgaben
So erstellen Sie eine neue geplante Aufgabe zum Importieren von Daten
Zum Konfigurieren zeitplanbasierter Bereitstellungsaufgaben benötigen Sie Zugriff auf die Registerkarte „Administration/Konnektoren“.
1. Öffnen Sie den Administrationsbereich (ein Zahnradsymbol).
2. Öffnen Sie die Connectors- Ansicht.
3. Wählen Sie Connector für geplante Aufgaben und wählen Sie Neue Aufgabe
Hinweis! Wenn kein Connector erstellt wird, müssen Sie zuerst „Neuer Connector“ und danach „ Neue Aufgabe“ auswählen.

4. Fahren Sie mit den Connector-spezifischen Anweisungen fort: Native Connectors
Soll ich inkrementell, vollständig oder beides verwenden?
Geplante Aufgaben können entweder inkrementell oder vollständig sein.
Importieren Sie keine Berechtigungen mit AD und LDAP-Inkrementalaufgaben
Bei inkrementellen Aufgaben treten Probleme beim Importieren von Berechtigungen auf. Derzeit wird empfohlen, Gruppenmitgliedschaften nicht mit inkrementellen geplanten Aufgaben zu importieren.
Entfernen Sie bei Microsoft Active Directory und OpenLDAP Konnektoren diese Zuordnung bei inkrementellen Aufgaben:

Einstellungen für geplante Aufgaben:

Der inkrementelle Typ wird nur für Microsoft Active Directory , LDAP- und Microsoft Graph API Konnektoren (früher bekannt als Entra ID ) unterstützt.
Inkrementeller Typ bedeutet, dass Native Connectors (EPE) Daten vom Quellsystem abruft und dabei geänderte Zeitstempelinformationen verwendet. Es werden also nur Daten abgerufen, die nach der vorherigen Ausführung der inkrementellen Aufgabe geändert oder hinzugefügt wurden.
Beim ersten Ausführen einer inkrementellen Aufgabe wird ein vollständiger Abruf durchgeführt (und der aktuelle Zeitstempel in der EPE-Datenbank markiert). Anschließend verwendet die Aufgabe diesen Zeitstempel, um die Datenquelle nach Daten zu fragen, die sich seit diesem Zeitstempel geändert haben (und EPE aktualisiert den Zeitstempel in der EPE-Datenbank für den nächsten Aufgabenlauf). Das Leeren des Aufgabencaches hat keinen Einfluss auf diesen Zeitstempel, daher ist die inkrementelle Aufgabe nach dem ersten Ausführen immer inkrementell.
Der vollständige Typ wird für alle Konnektoren unterstützt.
Der vollständige Typimport ruft bei jedem Durchlauf immer alle Daten (für deren Abruf er konfiguriert ist) vom Quellsystem ab.
Sowohl vollständige als auch inkrementelle Aufgaben verwenden auch den Aufgabencache in EPE, wodurch bestimmte Importe für M42 System schneller und einfacher werden.
Standardmäßig wird der Task-Cache um Mitternacht (UTC) geleert. Nach dem Leeren des Caches wird der nächste Import ohne Zwischenspeicherung ausgeführt, um zu entscheiden, ob die abgerufenen Daten an ESM gesendet werden sollen. Alle abgerufenen Daten werden an ESM gesendet. Danach wird der nächste Task ausgeführt, bis der Cache erneut geleert wird. Dabei wird der EPE-Cache verwendet, um zu bestimmen, ob die abgerufenen Daten an ESM gesendet werden sollen oder nicht.
Sie können konfigurieren, zu welcher Tageszeit der Task-Cache geleert wird, indem Sie die globalen Einstellungen in der EPE-Datapump-Konfiguration ändern:
/opt/epe/datapump-itsm/config/ benutzerdefinierte .properties
Dies ist standardmäßig auf clearCacheHours24HourFormat=0 eingestellt.
Sie können den Cache auch mehrmals täglich leeren, aber das muss sorgfältig überlegt werden, da es Auswirkungen auf die Gesamtleistung hat, da EPE Änderungen an ESM weitergibt, die wahrscheinlich bereits vorhanden sind, Beispiel (fügen Sie dem Attributwert keine Leerzeichen hinzu): clearCacheHours24HourFormat=6,12
Starten Sie den EPE-Datapump-Container nach der Änderung dieses Werts neu, um die Änderung zu übernehmen.
Empfehlungen:
Standardmäßig ist immer der vollständige Typ der geplanten Aufgabe verfügbar.
Wenn Sie Änderungen an Daten, die bereits durch die vollständige Aufgabe abgerufen wurden, häufiger abrufen möchten, als Sie die vollständige Aufgabe ausführen können, fügen Sie auch eine inkrementelle Aufgabe hinzu. Normalerweise ist eine inkrementelle Aufgabe nicht erforderlich.
Empfohlene Planungsreihenfolge
Die empfohlene Planungssequenz hängt davon ab, wie viele Daten aus dem System/Verzeichnis des Kunden in die Matrix42 Core , Pro oder IGA Lösung gelesen werden und ob der Import inkrementell oder vollständig erfolgt.
Beispiele für die Terminplanung,
| Gesamtzahl der Benutzer | Gesamtzahl der Gruppen | Volllastsequenz | Inkrementelle Ladesequenz |
| < 500 | < 1000 | Alle 30 Minuten, wenn keine Teillast genutzt wird Vier (4) Mal täglich bei Teillast |
Alle 10 Minuten |
| < 2000 | < 2000 | Alle 60 Minuten, wenn keine Teillast genutzt wird Vier (4) Mal täglich bei Teillast |
Alle 15 Minuten |
| < 5000 | < 3000 | Alle vier (4) Stunden, wenn keine Teillast verwendet wird Bei Teillast zweimal täglich |
Alle 15 Minuten |
| < 10 000 | < 5000 | Maximale Importe zweimal täglich, egal ob Teilladung genutzt wird oder nicht | Alle 30 Minuten |
| < 50 000 | < 7000 | Maximale Einfuhr einmal täglich, unabhängig davon, ob Teilladung genutzt wird oder nicht | Alle 60 Minuten |
| Über 50.000 | Über 7000 | Möglicherweise besteht Bedarf an einem weiteren EPE-Mitarbeiter. Bitte wenden Sie sich an den Pro . | Getrennt ausgewertet |
Bitte beachten Sie, dass bei gleichzeitiger Ausführung mehrerer Aufgaben möglicherweise mehr EPE-Worker benötigt werden. Die Aufgaben sollten zu unterschiedlichen Zeiten geplant und gemäß der obigen Tabelle abgeschlossen werden. Laufen jedoch mehr als sechs Aufgaben gleichzeitig, sollte die Anzahl der EPE-Worker erhöht werden. Es empfiehlt sich, Aufgaben möglichst nicht gleichzeitig auszuführen.
Empfehlungen zur Leistung
Wenn die Menge der zu importierenden Daten über 10.000 liegt, beachten Sie Folgendes:
Passen Sie die Protokollebene von ESM und DATAPUMP auf die ERROR-Ebene an, um den Protokollierungsumfang während der Taskausführung zu verringern
Sorgen Sie dafür, dass möglichst wenige Automatisierungen sofort für importierte Datenkarten (Listener, Handler, Workflows) gestartet werden, da diese dazu führen, dass ESM mehr Zeit für die Verarbeitung neuer Datenkarten benötigt.
Setzen Sie den Status entfernter Konten und Berechtigungen auf „entfernt/deaktiviert“.
Mit dieser Funktion können Sie den Status von Konten und Berechtigungen beispielsweise als „Gelöscht“ oder „Deaktiviert“ markieren, wenn das Konto oder die Berechtigung aus dem Quellsystem entfernt wird. Ab Version 2025.3 können Sie den Status auch für generische Objekte festlegen (nicht nur für Konten/Identitäten und Berechtigungen/Gruppen).
Für Version 2025.3 und neuer
In Version 2025.3 wurden diese Einstellungen aus den Eigenschaftendateien in die Task-Benutzeroberfläche verschoben. Außerdem können Sie diese Einstellungen jetzt für generische Objekte festlegen, was vor dieser Version nicht möglich war.
Für jede geplante Aufgabe und für alle Zuordnungstypen gibt es eine separate Konfiguration. Hier ist ein Beispiel für diese Konfiguration für die Aufgabe:

Für Version 2025.2 und älter
Diese Funktion ist für geplante Aufgaben des Typs „vollständig“ verfügbar.
Die Einstellungen befinden sich in der Konfigurationsdatei des Datapump-Dockers. Um diese Parameterwerte zu ändern, müssen Sie sie in der Datei /opt/epe/datapump-itsm/config/custom.properties festlegen.
Konfiguration
Um die Deaktivierungsfunktion zu aktivieren, müssen in der Datapump-Konfiguration die folgenden Parameter auf „true“ gesetzt sein:
disable.unknown. esm .users=true
disable.unknown. esm .groups=true
Diese beiden Parameter sind in den Versionen 2024.2 und 2025.1 standardmäßig „false“. In 2025.2 und neueren Versionen sind sie standardmäßig „true“.
Als nächstes folgen diese Parameter:
personTemplateStatusCodeAttributeKey=accountStatus
personTemplateStatusAttributeDisabledValueKey=Deleted
groupTemplateStatusCodeAttributeKey=status
groupTemplateStatusAttributeDisabledValueKey=5 - Removed
Die ersten beiden Attribute sollten auf das Attribut „DatacardHiddenState“ in der Benutzervorlage verweisen und angeben, welcher Wert dorthin gesendet werden soll, wenn der Benutzer gelöscht wird.
Standardmäßig sind es accountStatus und „Value 5 - Removed in IGA Account .
All dies muss mit der Attributkonfiguration übereinstimmen:

Dasselbe gilt für die nächsten beiden Parameter, allerdings für Gruppen.‘
Wenn Sie diese Parameter in der Eigenschaftendatei ändern müssen, nehmen Sie die Änderungen im Datapump-Container in der Datei vor: /opt/ epe /datapump-itsm/config/ custom .properties. Diese Änderungen bleiben dann beim Neustart des Containers erhalten und werden beim Neustart nach /opt/ epe /datapump-itsm/config/application.properties kopiert.
Beschreibung
Aufgaben speichern ihre __taskid__ die als Task Id mapping in der Benutzeroberfläche angezeigt wird, zu den Datenkarten. Sie wird dann verwendet, um festzustellen, ob die Datenkarte von dieser Aufgabe hinzugefügt wurde. Falls es mehrere Aufgaben mit unterschiedlichen Benutzergruppen gibt.
Dieses Feld wurde zuvor als Datenquellen-ID verwendet, aber da wir zu dem Modell gewechselt sind, bei dem der Connector mehrere Aufgaben haben kann, kann seine Kennung nicht mehr verwendet werden. Deshalb wurde das Feld stattdessen als Task-ID umfunktioniert.
Nehmen wir Benutzer als Beispiel: Wenn eine Aufgabe ausgeführt wird, wird ESM nach der Liste der Benutzer gefragt, deren Task-ID im Feld Task Id mapping steht und die keinen personTemplateStatusAttributeDisabledValueKey -Wert im personTemplateStatusCodeAttributeKey haben.
Dieses Ergebnis wird dann mit dem verglichen, was die Aufgabe abgerufen hat, und bei den Datenkarten der Benutzer, die nicht abgerufen wurden, wird das Attribut personTemplateStatus auf den in der Konfiguration angegebenen Wert gesetzt – 5 - Removed .
Das folgende Beispielprotokoll zeigt den beschriebenen Vorgang und informiert darüber, dass ein Benutzer entfernt wurde.

Dasselbe gilt für Gruppen, aber stattdessen werden groupTemplateStatus Attribute verwendet.
Hinweise
- Die Funktion funktioniert nur mit geplanten Aufgaben zum vollständigen Abrufen.
- Noch keine Unterstützung für generische Vorlagen, nur Identität und Zugriff
- Bei der Migration von früheren Versionen, in denen noch die Datenquellen-ID verwendet wurde, muss sie mindestens einmal ausgeführt werden, um zuerst die Task-IDs in den Datenkarten festzulegen.
- EPE identifiziert deaktivierte Benutzer oder Gruppen als diejenigen, die aus dem AD entfernt wurden. Derzeit unterstützen wir keine Statusangaben dazu, ob die Entität aktiv ist oder nicht.
- EPE aktiviert Benutzer nicht selbstständig.
- Wenn mehrere Tasks dieselben Benutzer oder Gruppen abrufen, kann die Task-ID in der Datenkarte überschrieben werden, je nachdem, welcher Task zuletzt ausgeführt wurde. Es wird vermutet, dass viele Tasks vom Typ „vollständig“ nicht denselben Benutzer oder dieselbe Gruppe abrufen.
- Nehmen Sie Änderungen an der Konfigurationsdatei immer an benutzerdefinierten Eigenschaften vor. Ändern Sie nicht nur die Anwendungseigenschaften, da diese Änderungen beim Neustart des Containers verloren gehen, wenn Sie nicht dieselben Änderungen an benutzerdefinierten Eigenschaften vorgenommen haben.
Konfigurieren Sie die geplante Aufgabe zum Lesen von Daten
Hinweis! Wenn kein Connector erstellt wird, müssen Sie zuerst einen „neuen Connector“ erstellen. Danach können Sie neue Aufgaben erstellen.
1. Öffnen Sie den Efecte-Administrationsbereich (ein Zahnradsymbol).
2. Öffnen Sie die Konnektoransicht.
3. Wählen Sie den Connector, für den die zeitgesteuerte Aufgabe konfiguriert ist
4. Wählen Sie unter dem richtigen Connector eine neue Aufgabe aus

4. Definieren Sie die Planung für die Aufgabe (ob und wie die geplante Aufgabe regelmäßig ausgeführt werden soll). Wählen Sie die Planungssequenz, die davon abhängt, wie viele Daten in die Efecte-Lösung des Kunden eingelesen werden.

5. Aufgabendetails ausfüllen
- Eindeutiger Aufgabenname für den Connector. Beachten Sie, dass der Name nachträglich nicht mehr geändert werden kann.
- Die Aufgabennutzung ist auf „Geplant“ eingestellt
- Der Zuordnungstyp ist auf „Generisch“ (eine Vorlage) eingestellt.

6. Fehlerinformationen eingeben
Optionale Einstellungen für die Fehlerbehandlung. Bei Fehlschlagen einer geplanten Aufgabe kann eine Datenkarte für Efecte ESM erstellt werden, die den Fehler anzeigt. Wenn Fehlereinstellungen definiert sind, muss der Administrator den Status geplanter Aufgaben nicht manuell überprüfen.
- Fehlervorlage – Wählen Sie eine Datenkartenvorlage aus, die im Falle von Fehlern während der Bereitstellung (Verbindung zu Datenquellen, Zeitüberschreitungen usw.) erstellt wird.
- Fehlerordner – Wählen Sie den Ordner aus, in dem die Fehlerdatenkarte gespeichert ist.
- Fehlerattribut – Wählen Sie ein Attribut aus, in dem in der Fehlervorlage die Fehlerinformationen gespeichert werden sollen.

- Attributname für uid . Geben Sie den Namen Ihrer Eingabedatenspalte/Ihres Eingabeattributs ein, der die eindeutige Kennung für die Zeile enthält. Beispiel: objectGUID

7. Füllen Sie die Zuordnungen für die generische Vorlage aus
Generische Daten werden in jede vom Benutzer gewünschte Vorlage eingelesen und es ist zwingend erforderlich, Zielordner, Datenquellen-ID und eindeutige Werte festzulegen, die zur Identifizierung der Daten zwischen dem benutzerdefinierten Backend und der Efecte-Lösung verwendet werden.
- Zielvorlage – Wählen Sie eine Vorlage aus, um Attributzuordnungen zu definieren
- Zielordner – Wählen Sie einen Ordner aus einer Liste aus. Die Liste wird entsprechend der Kompatibilität mit der ausgewählten Vorlage eingegrenzt.
- Attributzuordnungen
- Efecte-Vorlagenattribut – welches Attribut im Efecte-Verzeichnisattribut wird zugeordnet.
- Dateiattribut - welches Attribut aus der Datei wird Efecte zugeordnet

8. Falls Sie das eigentliche Skript ändern müssen, muss es vom Hostcomputer des Kunden heruntergeladen, geändert und erneut hochgeladen werden.
- Wenn Sie keinen Zugriff auf den Hostcomputer haben, wenden Sie sich bitte an den Efecte Service Desk um Hilfe zu erhalten.
9. Speichern Sie Ihre Änderungen
10. Bevor Sie die geplante Aufgabe für den benutzerdefinierten Backend-Connector ausführen,
- Überprüfen Sie, ob alle Konfigurationen im Zusammenhang mit Arbeitsabläufen und Einstellungen in Datenkarten vorhanden sind.
- Stellen Sie beim ersten Ausführen sicher, dass die Bereitstellung für Verzeichnisse und Anwendungen deaktiviert ist
- Wenn Sie die Standardimportdatei IGA Connector.py und CSV verwenden, ist das im Skript verwendete Feldtrennzeichen ; (Semikolon).
11. Führen Sie die Aufgabe manuell aus oder warten Sie, bis die geplante Ausführung gestartet wird.
12. Überprüfen Sie, ob die Daten auf die richtigen Datenkarten gelesen wurden und die richtigen Attribute vorhanden sind.
13. Fehlerbehebung
- Falls eine Fehlervorlage verwendet wird, überprüfen Sie die korrekte Datenkarte
- Überprüfen Sie den Verlauf geplanter Aufgaben über die Connector-Verwaltung
- Überprüfen Sie die Protokolle Efecte Provisioning Engine
Konfigurieren Sie die Ereignisaufgabe zum Schreiben von Daten
- Öffnen Sie die Konfigurationsansicht der Efecte-Plattform (ein Zahnradsymbol).
- Ansicht „Konnektoren öffnen“
- Wählen Sie den Connector, der die Ereignisaufgabe verwendet
- Wählen Sie unter dem richtigen Connector „Neue Aufgabe“ aus

4. Aufgabendetails ausfüllen
- Aufgabenname – Geben Sie der Aufgabe einen Namen, er wird in der Konnektoransicht angezeigt.
- Die angegebene Taskverwendung ist die Task, die zum Lesen oder Schreiben von Daten verwendet wird. Kann nachträglich geändert werden, wird aber nicht empfohlen, wenn eine Ereignistask verwendet wird. Dies würde Arbeitsabläufe unterbrechen.
- Wählen Sie den Zuordnungstyp „Generisch“ aus.

5. Generische Zuordnungen definieren
- Zielvorlage – Wählen Sie eine Vorlage aus, um Attributzuordnungen zu definieren
- Zielordner – Wählen Sie einen Ordner aus einer Liste aus. Die Liste wird entsprechend der Kompatibilität mit der ausgewählten Vorlage eingegrenzt.
- Attributzuordnungen
- Efecte-Vorlagenattribut – welches Attribut im Efecte-Verzeichnisattribut wird zugeordnet.
- Backend-Attribut - welches Attribut aus dem Verzeichnis wird Efecte zugeordnet
- Neues Attribut hinzufügen – Es ist möglich, zusätzliche Attribute festzulegen, die aus dem Backend gelesen werden, indem Sie die Schaltfläche „Neues Attribut“ wählen

6. Speichern Sie die Bereitstellungsaufgabe über die Schaltfläche „Speichern“
7. Im nächsten Schritt konfigurieren Sie den Workflow für die ereignisbasierte Aufgabe. Über die Workflow-Engine der Efecte-Plattform können Bereitstellungsaktivitäten im Backend ausgeführt werden. Das bedeutet, dass alle verfügbaren Orchestrierungsknotenaktivitäten an jedem Punkt des Workflows ausgeführt werden können.
Workflow-Referenzen werden auf der Connector-Übersichtsseite angezeigt.

Workflow-Aktivitäten (Orchestrierungsknoten)
Bereitstellungsaufgabe ausführen
Diese Aktivität wird verwendet, wenn alle Informationen aus dem Verzeichnis sofort zurück benötigt werden.

In der obigen Abbildung können Administratoren das richtige Verzeichnis „Ziel“ auswählen. Führen Sie den Bereitstellungstask-Orchestrierungsknoten aus und lesen Sie die Attribute vom Backend nach Efecte.
Wenn die Attributzuordnungen geändert werden müssen, müssen diese Attribute in der Konfigurationsansicht der Bereitstellungsaufgabe definiert werden, damit sie im Orchestrierungsknoten geändert werden können.
Die Pro ist eine optionale Eigenschaft dieses Workflowknotens. Administratoren können diese Eigenschaft so konfigurieren, dass Ausnahmen geschrieben werden können, wenn während der Bereitstellungsaktionen Ausnahmen auftreten.
Benutzerdefinierte Backend-Aufgabe ausführen
Diese Aktivität ruft ein Python-Skript (das Python-Skript) auf. Zu diesem Zeitpunkt sind die neuen Informationen nur im externen System verfügbar, noch nicht in ESM.

In der obigen Abbildung können Administratoren das richtige Verzeichnis „Ziel“ auswählen. Wenn die Attributzuordnungen geändert werden müssen, müssen diese Attribute in der Konfigurationsansicht der Bereitstellungsaufgabe definiert werden, damit sie im Orchestrierungsknoten geändert werden können.
Die Pro ist eine optionale Eigenschaft dieses Workflowknotens. Administratoren können diese Eigenschaft so konfigurieren, dass Ausnahmen geschrieben werden können, wenn während der Bereitstellungsaktionen Ausnahmen auftreten.
So passen Sie den Connector an
So erstellen und ändern Sie benutzerdefinierte Python-Skripte
Allgemeine Informationen
Der generische Python Script Konnektor enthält einige vorgefertigte Python-Skripte. Diese sollten Sie nicht ändern. Wenn Sie Änderungen vornehmen müssen, kopieren Sie diese einfach unter neuen Namen und nehmen Sie die Änderungen anschließend in der neu benannten Python-Skriptdatei vor. Passen Sie im letzten Schritt Ihren Konnektor an, um dieses Skript zu verwenden.
Arbeitsauftrag:
- Erstellen Sie Ihr benutzerdefiniertes geplantes oder aufgabenbasiertes Skript
- Nutzen Sie es für den Anschluss über die Connectors-Benutzeroberfläche
Geplante Skripte
So verwenden Sie Ihr benutzerdefiniertes Python-Skript für geplante Aufgaben, uid für 1 Host und 1 Worker-Umgebung:
Hinweis! Ändern Sie nicht die „Standard“-PY-Dateien, die mit der Umgebungsinstallation geliefert wurden.
Kopieren Sie Ihr benutzerdefiniertes Python-Skript (in diesem Beispiel mypythonscript.py) von HOST in diese Ordner (denken Sie daran, im Pfad den richtigen Mandantennamen zu verwenden):
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
Ändern Sie die Berechtigung Ihrer benutzerdefinierten Python-Skriptdatei an allen oben genannten Speicherorten, an die Sie Ihr Skript kopiert haben (in diesem Beispiel mypythonscript.py), auf 755 (denken Sie daran, im Pfad den richtigen Mandantennamen zu verwenden):
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
Wenn Sie mehrere Hosts haben, wiederholen Sie den Vorgang auf jedem Host.
Wenn Sie mehr Mitarbeiter haben, wiederholen Sie dies für jeden Mitarbeiter (überprüfen Sie, ob der Name des Mitarbeiterordners korrekt ist).
Ereignisbasierte Skripte
So verwenden Sie Ihr benutzerdefiniertes Python-Skript für ereignisbasierte Aufgaben, uid für 1 Hostumgebung:
Hinweis! Ändern Sie nicht die „Standard“-PY-Dateien, die mit der Umgebungsinstallation geliefert wurden.
Kopieren Sie Ihr benutzerdefiniertes Python-Skript (in diesem Beispiel mypythonscript.py) von HOST in diese Ordner (denken Sie daran, im Pfad den richtigen Mandantennamen zu verwenden):
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
Ändern Sie die Berechtigung Ihrer benutzerdefinierten Python-Skriptdatei an allen oben genannten Speicherorten, an die Sie Ihr Skript kopiert haben (in diesem Beispiel mypythonscript.py), auf 755 (denken Sie daran, im Pfad den richtigen Mandantennamen zu verwenden):
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
Wenn Sie mehrere Hosts haben, wiederholen Sie den Vorgang auf jedem Host.
Beispiel/Basis für ein benutzerdefiniertes ereignisbasiertes Python-Skript
Dieses Skript liest Attributwerte vom Connector und vom Orchestrierungsknoten und druckt die Werte in Protokolle. Sie können dies als Ausgangspunkt für Ihr eigenes benutzerdefiniertes Python-Skript für ereignisbasierte Aufgaben verwenden.
#!/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()
Verwenden Sie ein benutzerdefiniertes Skript für den Connector
So nehmen Sie Ihr benutzerdefiniertes Python-Skript in Betrieb, indem Sie es in der Connectors-Benutzeroberfläche auswählen. Wählen Sie Ihr Skript aus dem Dropdown-Menü „Connectors Pro Visioning Script“ aus:

Umsetzung und Arbeitsschätzungen
Nur Matrix42 hat Zugriff auf den Host, der für die Installation dieser benutzerdefinierten Skripte erforderlich ist.
Diese Erweiterungsmöglichkeiten müssen immer von den Beratern Matrix42 geprüft werden, bevor eine Implementierung und Arbeitsschätzung vereinbart werden kann.
HR-Konnektor
Der HR-Connector basiert auf diesem generischen Python-Skript-Connector.

