- 27. Januar 2013

SAP NetWeaver Identity Management (IDM) Fehlerbehandlung für PowerShell Aufrufe

Für die Anbindung eines Microsoft Exchange Server 2010 an SAP NetWeaver Identity Management (kurz SAP IdM) kann es durchaus erforderlich und nützlich sein PowerShell Scripte auszuführen um Actionen im Exchange Server zu starten. In diesem Artikel behandle ich die Anbindung eines SAP NetWeaver Identity Management 7.1 SP 5 via PowerShell Script an Microsoft Exchange Server 2010.
In SAP IdM gibt es verschiedene Möglichkeiten PowerShell Scripte auszuführen. Die SAP selbst bietet einen Connector für einen  To Custom Pass bei dem das Script aufgerufen wird und Parameter an das Script übergeben werden können.

Die folgende Abbildung zeigt den Ausschnitt der „Destination“ eines solchen Passes.

SAP IDM To Custom Pass: PowerShell Aufruf

Eine weitere Möglichkeit ist das PowerShell Script über einen Shell execute Pass aufzurufen. Dies wird hier nur der Vollständigkeit halber erwähnt und nicht weiter ausgeführt.

Diese beiden Möglichkeiten funktionieren, bieten allerdings keinerlei Informationen darüber, ob das Script erfolgreich ausgeführt wurde oder nicht. Aus diesem Grund haben wir uns für dieses Problem eine Lösung überlegt.

In einem To Generic Pass wird das PowerShell Script als Argument an ein JavaScript übergeben und von dort aus ausgeführt. Zusätzlich wird der Pfad zur entsprechenden PowerShell Konsole übergeben um die benötigte Version selbst zu bestimmen.
Die nächste Abbildung zeigt beispielhaft einen To Generic Pass:

SAP IDM To Generic Pass: PowerShell Aufruf

Es wird eine eigenentwickelte Java Klasse eingebunden, die das Script aufnimmt und über einen Konsolenaufruf im Hintergrund ausführt. Über eine Java Funktion kann der Output-Stream der Konsole ausgelesen werden. Damit ist es möglich eine Rückmeldung über den Erfolg oder auch Misserfolg zu erhalten. Das Ergebnis wird aus dem Java-Programm ans JavaScript übergeben und von dort in den Job-Log des SAP IdM Identity Center geschrieben. Mit diesem Umweg ist es möglich eine Fehlerbehandlung bei PowerShell Scripten zu erhalten.

Das Ergebnis dieser Überlegungen und der Lösung ist in den folgenden beiden Abbildungen zu sehen. Zum aktuellen Zeitpunkt ist die Fehlerbehandlung nur sehr einfach und gibt als Rückmeldung den Status: „Success“ oder „Error„.

SAP IDM Joblog: Status: ErrorSAP IDM Joblog: Status: Success

Jetzt das kostenlose eBook zum Thema SAP Berechtigungen downloaden:

Jetzt das kostenlose E-Book mit ausgewählten Fachartikeln herunterladen:




Schreiben Sie einen Kommentar

Bitte füllen Sie alle mit * gekennzeichneten Felder aus. Ihre E-Mail Adresse wird nicht veröffentlicht.