One Identity Manager unterstützt die Genehmigung von Bestellungen mit verschiedenen Arten an automatischen Entscheidungen.
Bevor eine Bestellung genehmigt wird, soll sie auf mögliche Regelverletzungen überprüft werden. Dabei werden das bestellte Produkt, alle offenen Bestellungen und alle bereits zugewiesenen Unternehmensressourcen des Empfängers der Bestellung berücksichtigt. Das Entscheidungsverfahren überprüft, ob der Empfänger bei Genehmigung seiner Bestellungen bestehende Complianceregeln verletzen würde.
Die Complianceprüfung von Bestellungen erkennt gegebenenfalls nicht alle Regelverletzungen. Sie ersetzt daher nicht die zyklische Prüfung der Complianceregeln.
Weitere Informationen finden Sie unter Complianceprüfung von Bestellungen.
Der Entscheidungsschritt wird automatisch entschieden, sobald eine Bedingung außerhalb des One Identity Manager erfüllt ist.
Im Entscheidungsschritt legen Sie ein Ereignis fest, das eine externe Entscheidung auslöst. Durch das Ereignis wird ein Prozess angestoßen, der die externe Entscheidung für die Bestellung initiiert und das Ergebnis der Entscheidung auswertet. Das Genehmigungsverfahren wartet, bis das Ergebnis der externen Entscheidung an One Identity Manager übermittelt wird.
Weitere Informationen finden Sie unter Extern vorzunehmende Entscheidung.
Der Entscheidungsschritt wird automatisch genehmigt, wenn ein festgelegter Risikoindexwert durch das bestellte Produkt unterschritten wird.
Voraussetzung: Am Entscheidungsschritt ist der zulässige Wert für den Risikoindex angegeben.
Der Risikoindex des bestellten Produkts wird ermittelt und mit dem zulässigen Wert verglichen. Ist der Risikoindex kleiner als der zulässige Wert, wird der Entscheidungsschritt genehmigt. Andernfalls wird er abgelehnt.
Für die Entscheidung werden nur erfasste Risikoindizes berücksichtigt; berechnete Risikoindizes werden nicht einbezogen.
Weitere Informationen finden Sie unter Risikobewertung einer Bestellung.
Der Entscheidungsschritt wird ohne weitere Prüfungen automatisch genehmigt. Es werden keine Entscheider ermittelt.
Einen Entscheidungsworkflow mit dem Entscheidungsverfahren SB definieren Sie immer als einstufigen Workflow. Das bedeutet, zu einem Entscheidungsschritt für Selbstbedienung können Sie keinen weiteren Entscheidungsschritt einrichten. Weitere Informationen finden Sie unter Regelprüfung für Bestellungen mit Selbstbedienung.
In der Standardinstallation sind der Entscheidungsworkflow und die Entscheidungsrichtlinie Selbstbedienung vorhanden und dem Shop Identity & Access Lifecycle zugewiesen.
Der Entscheidungsschritt verzögert die Entscheidung, bis eine definierte Bedingung erfüllt ist. Beispielsweise kann bei der Bestellung von Systemberechtigungen geprüft und gewartet werden, bis das zugehörige Benutzerkonto vorhanden ist.
Voraussetzung: Im Entscheidungsschritt ist die Bedingung als Funktionsaufruf definiert.
Weitere Informationen finden Sie unter Warten auf andere Entscheidung.
Hinweis: Pro Entscheidungsebene kann nur ein Entscheidungsschritt mit dem Entscheidungsverfahren WC definiert werden.
Um innerhalb des Genehmigungsverfahrens sicherzustellen, dass vor der Entscheidung einer Bestellung eine definierte Voraussetzung erfüllt ist, nutzen Sie das Entscheidungsverfahren WC. So sollte die Genehmigung für die Bestellung einer Systemberechtigung nur erfolgen können, wenn sichergestellt ist, dass auch ein entsprechendes Benutzerkonto existiert. Der Einsatz von verzögerten Entscheidungen bietet sich an, wenn zusätzlich die Bestellungen hinsichtlich ihrer Regelkonformität überprüft werden. Ist bei der Überprüfung bestellter Berechtigungsgruppen das Benutzerkonto nicht vorhanden, so würden mögliche Regelverletzungen durch die Bestellung nicht protokolliert werden.
Durch eine entsprechend definierte Bedingung können Sie festlegen, welche Voraussetzungen erfüllt sein müssen, damit eine Bestellung zur Entscheidung vorgelegt wird. Die Bedingung wird als Funktionsaufruf ausgewertet. Die Funktion muss als Parameter die UID der Bestellung (PersonWantsOrg.UID_PersonWantsOrg) akzeptieren. Sie muss drei Rückgabewerte als Integer-Werte definieren. Abhängig vom Rückgabewert der Funktion wird eine der folgenden Aktionen ausgeführt.
Tabelle 30: Rückgabewerte für verzögerte Entscheidungen
Rückgabewert > 0 |
Die Bedingung ist erfüllt. Die verzögerte Entscheidung ist erfolgreich abgeschlossen. Der nächste Entscheidungsschritt (für den Erfolgsfall) wird ausgeführt. |
Rückgabewert = 0 |
Die Bedingung ist noch nicht erfüllt. Die Entscheidung wird zurückgestellt und beim nächsten Lauf des DBQueue Prozessors erneut geprüft. |
Rückgabewert < 0 |
Die Bedingung ist nicht erfüllt. Die verzögerte Entscheidung ist erfolglos abgeschlossen. Der nächste Entscheidungsschritt (für den Fehlerfall) wird ausgeführt. |
Um das Entscheidungsverfahren nutzen zu können
-
Erstellen Sie eine Datenbankfunktion, welche die Bedingung für die Bestellung prüft.
-
Erstellen Sie einen Entscheidungsschritt mit dem Entscheidungsverfahren WC. Erfassen Sie im Eingabefeld Bedingung den Funktionsaufruf.
Syntax: dbo.<Funktionsname>
-
Legen Sie einen Entscheidungsschritt für den Erfolgsfall fest. Verwenden Sie ein Entscheidungsverfahren, mit dem der One Identity Manager die Entscheider ermitteln kann.
-
Legen Sie bei Bedarf einen Entscheidungsschritt für den Fehlerfall fest.
Beispiel
Um zu prüfen, ob bei der Bestellung von Berechtigungsgruppen, das benötigte Benutzerkonto vorhanden ist, können Sie die mitgelieferte Funktion TSB_FGIPWODecisionForGroup verwenden.
Tabelle 31: Beispiel für einen Entscheidungsschritt mit verzögerter Entscheidung
Einzelschritt: |
Waiting Condition |
Entscheidungsverfahren: |
WC - Warten auf andere Entscheidung |
Bedingung: |
dbo.TSB_FGIPWODecisionForGroup |
Anzahl Entscheider: |
1 |
Tabelle 32: Rückgabewerte für verzögerte Entscheidungen in der Funktion TSB_FGIPWODecisionForGroup
Rückgabewert > 0 |
Das Benutzerkonto ist vorhanden, die Bedingung ist somit erfüllt. Die verzögerte Entscheidung wird positiv entschieden. Die Bestellung wird an den nächsten Entscheidungsschritt weitergereicht. Es muss nun ein Entscheidungsschritt folgen, über den die Entscheider für die Bestellung ermittelt werden. |
Rückgabewert = 0 |
Die Bedingung ist nicht erfüllt. Es gibt aber eine offene Bestellung für ein Benutzerkonto oder die Identität besitzt eine Kontendefinition, durch die ein Benutzerkonto entstehen könnte. Die Entscheidung wird daher zurückgestellt und beim nächsten Lauf des DBQueue Prozessors erneut geprüft. |
Rückgabewert < 0 |
Die Bedingung ist nicht erfüllt. Das Benutzerkonto ist nicht vorhanden, es gibt keine offene Bestellung für ein Benutzerkonto und die Identität besitzt auch keine Kontendefinition aus der ein Benutzerkonto resultieren könnte. Die verzögerte Entscheidung wird negativ entschieden. Die Bestellung wird an den nächsten Entscheidungsschritt weitergereicht. |
Hinweis: Pro Entscheidungsebene kann nur ein Entscheidungsschritt mit dem Entscheidungsverfahren CD definiert werden.
Es ist möglich, anhand einer definierten Bedingung zu bestimmen, wem die Bestellung zur Entscheidung vorgelegt werden soll. Liegt beispielsweise der Preis einer Bestellung unter einem definierten Limit, so kann der Abteilungsleiter die Entscheidung treffen. Bei Überschreitung des Preislimits ist die Bestellung dem Kostenstellenverantwortlichen zur Entscheidung vorzulegen. In einem anderen Anwendungsfall können Bestellungen von Mitarbeitern der Abteilung XY sofort genehmigt werden, sofern mit der Bestellung ein definiertes Preislimit nicht überschritten wird. Wird das Limit überschritten oder gehört der Mitarbeiter zu einer anderen Abteilung muss eine Entscheidung durch den Abteilungsleiter erfolgen.
Für die Berechnung einer Entscheidung (Entscheidungsverfahren CD) geben Sie bei der Einrichtung des Entscheidungsschrittes eine Bedingung an. Liefert die Bedingung ein Ergebnis, wird der Entscheidungsschritt durch den One Identity Manager genehmigt. Liefert die Bedingung kein Ergebnis, wird der Entscheidungsschritt durch den One Identity Manager abgelehnt. Folgen darauf keine weiteren Entscheidungsschritte wird die Bestellung endgültig genehmigt oder abgelehnt. Die Bedingung wird als gültige Where-Klausel für Datenbankabfragen definiert. Sie können diese direkt als SQL-Abfrage eingeben oder über einen Assistenten zusammenstellen. Die Bedingung wird immer für die aktuelle Bestellung und den aktuellen Besteller geprüft.
Beispiel für eine errechnete Entscheidung
Bestellungen mit einem Preis unter 1000 Euro werden vom Abteilungsleiter des Bestellers entschieden. Bestellungen mit einem Preis über 1000 Euro werden dem Kostenstellenverantwortlichen des Bestellers vorgelegt.
Tabelle 33: Entscheidungsschritt mit errechneter Entscheidung
Einzelschritt: |
Kalkulierte Entscheidung |
Entscheidungsverfahren: |
CD - Errechnete Entscheidung |
Bedingung: |
EXISTS ( |
SELECT 1 FROM ( |
SELECT UID_ITShopOrg FROM ITShopOrg WHERE EXISTS ( |
SELECT 1 FROM ( |
SELECT UID_AccProduct FROM AccProduct |
WHERE round(PurchasePrice, 13) < round(1.000000E+003, 13) |
) as X |
WHERE X.UID_AccProduct = ITShopOrg.UID_AccProduct |
) ) as X |
WHERE X.UID_ITShopOrg = PersonWantsOrg.UID_Org) | |
Anzahl Entscheider: |
1 |
Abbildung 6: Entscheidungsworkflow für das Beispiel einer errechneten Entscheidung
Wenn eine Bestellung genehmigt werden soll, sobald ein definiertes Ereignis außerhalb des One Identity Manager eintritt, nutzen Sie die extern vorzunehmende Entscheidung (Entscheidungsverfahren EX). Sie können dieses Verfahren auch nutzen, um Bestellungen durch Identitäten genehmigen zu lassen, die keinen Zugriff auf den One Identity Manager haben.
Im Entscheidungsschritt legen Sie ein Ereignis fest, das eine externe Entscheidung auslöst. Durch das Ereignis wird ein Prozess angestoßen, der die externe Entscheidung für die Bestellung initiiert und das Ergebnis der Entscheidung auswertet. Das Genehmigungsverfahren wartet, bis das Ergebnis der externen Entscheidung an den One Identity Manager übermittelt wird. Abhängig von dieser Entscheidung definieren Sie weitere Entscheidungsschritte.
Um das Entscheidungsverfahren nutzen zu können
-
Definieren Sie im Designer eigene Prozesse, die
-
eine externe Entscheidung auslösen,
-
die Ergebnisse der externen Entscheidung auswerten und
-
die daraufhin den externen Entscheidungsschritt im One Identity Manager positiv oder negativ entscheiden.
-
Definieren Sie ein Ereignis, das den Prozess für die externe Entscheidung startet. Erfassen Sie das Ereignis im Entscheidungsschritt im Eingabefeld Ereignis.
Ist das externe Ereignis eingetreten, muss der Status des Entscheidungsschrittes im One Identity Manager geändert werden. Nutzen Sie dafür die Prozessfunktion CallMethod mit der Methode MakeDecision. Übergeben Sie der Prozessfunktion folgende Parameter:
MethodName: Value = "MakeDecision"
ObjectType: Value = "PersonWantsOrg"
Param1: Value = "sa"
Param2: Value = <Entscheidung> ("true" = zugestimmt; "false" = abgelehnt)
Param3: Value = <Begründung der Entscheidung>
Param4: Value = <Standardbegründung>
Param5: Value = <Nummer des Entscheidungsschritts> (PWODecisionStep.SubLevelNumber)
WhereClause: Value = "UID_PersonWantsOrg ='"& $UID_PersonWantsOrg$ &"'"
Durch die Parameter legen Sie fest, welche Bestellung durch die externe Entscheidung entschieden werden soll (WhereClause). Der Parameter Param1 legt den Entscheider fest. Entscheider ist immer der Systembenutzer sa. Mit dem Parameter Param2 wird die Entscheidung übergeben. Wurde der Bestellung zugestimmt, muss der Wert True übergeben werden. Wurde die Bestellung abgelehnt, muss der Wert False übergeben werden. Über den Parameter Param3 übergeben Sie einen Begründungstext für die Entscheidung; über den Parameter Param4 können Sie eine vorformulierte Standardbegründung übergeben. Wenn in einer Entscheidungsebene mehrere externe Entscheidungsschritte definiert wurden, übergeben Sie im Parameter Param5 die Nummer des Entscheidungsschritts. Damit kann die Entscheidung dem korrekten Entscheidungsschritt zugeordnet werden.
Beispiel
Alle genehmigten Bestellungen sollen in einem externen Ticketsystem erfasst und ausgelöst werden. Ist eine Bestellung im externen Ticketsystem abgeschlossen, muss sie auch im One Identity Manager abgeschlossen werden. Nutzen Sie das Entscheidungsverfahren für extern vorzunehmende Entscheidungen und definieren Sie:
- einen Prozess "P1", der ein Ticket mit den Informationen zum bestellten Produkt im externen System erstellt und die Ticketnummer in den Bestellvorgang im One Identity Manager übernimmt,
- ein Ereignis "E1", das den Prozess "P1" auslöst,
- einen Prozess "P2", der prüft, ob der Status des Tickets "abgeschlossen" ist und der im One Identity Manager die Funktion CallMethod mit der Methode MakeDecision aufruft,
- ein Ereignis "E2", das den Prozess "P2" auslöst,
- einen Zeitplan, der regelmäßig das Ereignis "E2" auslöst.
Das Ereignis "E1" tragen Sie im Entscheidungsschritt im Eingabefeld Ereignis als Auslöser für die externe Entscheidung ein.
Im Prozess "P1" übergeben Sie mittels Parameter Informationen zum bestellten Produkt und zum Kunden, für den das Produkt bestellt wird, an das externe Ticketsystem. In einem weiteren Parameter übergeben Sie die Ticketnummer aus dem externen Ticketsystem an den One Identity Manager.
Im Prozess "P2" überprüfen Sie anhand der Ticketnummer den Status des Tickets. Ist das Ticket abgeschlossen, rufen Sie die Methode MakeDecision auf und übergeben mittels Parameter den Status des Tickets aus dem externen Ticketsystem an den One Identity Manager (Param2). In einem weiteren Parameter legen Sie den Systembenutzer fest, der den Status des Entscheidungsschrittes im One Identity Manager ändert (Param1). Als Wert für diesen Parameter übergeben Sie sa. Den Begründungstext für die Entscheidung übergeben Sie im Parameter Param3.
Ausführliche Informationen zur Definition von Prozessen finden Sie im One Identity Manager Konfigurationshandbuch.