- 26. April 2013

SAP IdM 7.1 – Neue Funktion im Provisioning auf ein Repository einschränken

SAP Identity Management

In einer Vielsystem-Landschaft ist es nicht unüblich, dass es mehrere Mandanten für ein SAP System gibt. Als Beispiel dient in diesem Beitrag ein SAP FICO System mit drei Mandanten. Ein Mandant repräsentiert ein Land (DE, AT, CH). Für jeden Mandanten gibt es ein Repository im SAP IDM, wobei alle das gleiche Provisioning benutzen. Für das Land DE soll nun im Mandant eine neue Funktion ausgerollt werden, die vorerst nicht in den anderen Mandanten zur Verfügung stehen soll. 

Provisioning Task

Da die neue Funktion auch zusätzliche Rollen beinhaltet gibt es eine Erweiterung im Provisioning.

SAP IdM - Provisioning mit neuer Funktion

So wie im Bild zu sehen würden alle drei Mandanten im Provisioning Task durch die neue Funktion laufen. Um das auf ein oder auch mehr Mandanten einzuschränken fügen wir einen weiteren Task ein. Hier bietet sich ein Conditional Task an, der zwei Zweige (True und False) besitzt. Mit einem SQL-Statement kann gesteuert werden durch welchen Zweig der Prozess läuft.

SAP IdM -  Erweitertes Provisioning für neue Funktion

In den neuen Task hängen wir im True-Zweig den Task New Function (SAP Module) für die neue Funktionalität.

Damit der Prozess durch den True-Zweig läuft brauchen wir noch das passende SQL-Statement.

Eine Möglichkeit ist folgenden:

SELECT count(1) FROM dual where %REPID% in (<RepositoryID>)

“dual” ist eine interne Tabelle der eingesetzten Oracle Datenbank.

  • %REPD% ist Variable die vom Identity Center bereitgestellt wird, um im Provisioning innerhalb des Identity Stores , auf das Repository zurückzugreifen.
  • <RepositoryID> ersetzen wir an dieser Stelle mit einer globalen Konstante, die eine oder mehrere RepositoryID’s besitzt auf die geprüft werden soll.

Das Statement könnte mit Beispielwerten wie folgt aussehen:

SELECT count(1) FROM dual where 12 in (12)

Das Ergebnis der Query ist gleich “1”, d.h. wahr, wodurch der True-Zweig durchlaufen wird. Ist %REPID% ungleich „12“ ergibt das Statement „0“, d.h. False.

Wir legen also eine globale Konstante „SAP_FICO_REPID_NEW_FUNCTION“ an.

SAP IdM - globale Konstante

RepositoryID aufnehmen

Die globale Konstante bietet uns gemeinsam mit dem SQL Statement die Möglichkeit eine oder mehrere RepositoryID’s aufzunehmen. Dadurch lassen sich auch Rollout Prozesse, bei denen Funktionen nach und nach in Mandanten bzw. im Identity Center je Repository eingeführt werden, umgesetzen.

Das finale Statement mit der globalen Konstanten sieht wie folgt aus:

 SELECT count(1) FROM dual where 12 in (%$glb.MS_FICO_REPID_NEW_FUNCTION)

Eingetragen wird das SQL-Statement in der Konfiguration des Conditional Tasks, gezeigt im nächsten Bild.

SAP IdM - Task Config

Diese Möglichkeit mit dem Conditional Task lässt sich natürlich auch auf andere Bereiche im Provisioning einsetzen.

Was sind Ihre Erfahrungen mit Mandanten im SAP IDM?

 (Eingesetzt wird in diesem Beispiel ein SAP NetWeaver Identity Management 7.1 SP5)

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:


SHARE



Schreiben Sie einen Kommentar

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