Fehlerbehandlung für PowerShell Aufrufe

Autor: Tobias Harmes | 27. Januar 2013

2

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.

SAP Identity Management

SAP Identity Management unterstützt Sie bei der zentralen Verwaltung von Benutzern, Berechtigungen und Genehmigungs-Workflows im Unternehmen.

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

Sie benötigen Unterstützung bei der Umsetzung? Unser Autor ist Berater für dieses Thema. Fragen Sie ihn an über das RZ10.de Partnerprodukt Berater für SAP Berechtigungen und Security


Artikel war hilfreichArtikel empfehlen


Dieser Beitrag ist auch als Download verfügbar:
Tobias Harmes

Autor

Tobias Harmes

Experte, Speaker, Herausgeber rz10.de

Fragen? Anmerkungen?
Kontaktieren Sie mich

Kommentar verfassen


Unsere Top-Downloads

Angebot anfordern
Preisliste herunterladen
Expert Session
Support