- 27. Januar 2013

Fehlerbehandlung für PowerShell Aufrufe

Sap-berechtigungen

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.

PowerShell Scripte ausführen

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

Einbindung der Java Klasse

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

Kostenloses E-Book zum Thema SAP GRC als Download:

Kostenloses E-Book zum Thema SAP Berechtigungskonzept als Download:

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.