Wichtig: Jede Änderung der Präprozessorbedingungen an Objekten erfordert eine Kompilierung der One Identity Manager-Datenbank.
An einigen Objekten können Sie eine Präprozessorbedingung direkt angeben.
Um eine Präprozessorbedingung zu erfassen
-
Tragen Sie in der Eigenschaft Präprozessorbedingung die Präprozessorausdrücke der Konfigurationsparameter ein. Die Präprozessorausdrücke können Sie über AND, OR, NOT, () miteinander verknüpfen.
Beispiel:
Die Spalte Person.RiskIndexCalculated soll in der Oberfläche nur angezeigt werden, wenn die Risikoberechnung aktiviert ist.
In der Spaltendefinition (Tabelle DialogColumn) wird folgende Präprozessorbedingung eingetragen.
Tabelle 131: Beispiel für Präprozessorbedingungen
Person |
RiskIndexCalculated |
RISKINDEX |
Wird ein präprozessorrelvanter Konfigurationsparameter aktiviert oder deaktiviert, werden für den DBQueue Prozessor Aufträge zur kompletten Berechnung aller Präprozessoraufträge und Berechnungsaufträge für die betroffenen Objekte erzeugt. An den betroffenen Objekten wird die Option Deaktiviert durch Präprozessor aktualisiert. Führt die erneute Auswertung der Präprozessorbedingungen zu einer Änderung der Option, werden weitere Folgeaufträge zur Präprozessorauswertung an den abhängigen Objekten erzeugt. Die Benutzerberechtigungen können ebenfalls betroffen sein. Nach der Abarbeitung der Aufträge durch den DBQueue Prozessor ist eine Kompilierung der Datenbank erforderlich.
Die Auswertung der Präprozessorbedingungen hat folgende Auswirkungen:
-
Ist eine Tabelle über eine Präprozessorbedingung deaktiviert, werden auch alle ihre Spalten, alle Objektdefinitionen, die sich auf die Tabelle beziehen sowie die Oberflächenformulare und die zugehörige Menüführung deaktiviert.
-
Ist eine Primärschlüsselspalte deaktiviert, so werden alle Fremdschlüsselspalten deaktiviert, die sich auf diesen Primärschlüssel beziehen.
-
Wird nach der vorhergehenden Regel ein Primärschlüssel-Mitglied deaktiviert, beispielsweise bei M:N-Tabellen, so werden auch die Tabelle dieses Primärschlüssels sowie alle weiteren Spalten dieser Tabelle deaktiviert.
Dieses Verfahren hat den Vorteil, dass beispielsweise bei Deaktivierung der Tabelle ADSGroup automatisch auch alle Zuordnungen deaktiviert werden, wie beispielsweise die Tabelle DepartmentHasADSGroup.
Hinweis: Einen Überblick über die vorhandenen Präprozessorabhängigkeiten erhalten Sie im Designer in der Kategorie One Identity Manager Schema > Präprozessorabhängigkeiten.
Verwandte Themen
Wichtig: Jede Änderung der Präprozessorbedingungen in VB.Net-Ausdrücken erfordert eine Kompilierung der One Identity Manager-Datenbank.
Präprozessorbedingungen können in VB.Net-Ausdrücken verwendet werden. Skriptcode, der von einer Präprozessorbedingung abhängig ist, müssen Sie in einer #If...Then...#Else - Anweisung übergeben. Zur Formulierung der Präprozessorbedingung verwenden Sie die Präprozessorausdrücke der präprozessorrelevanten Konfigurationsparameter. Die Präprozessorausdrücke können Sie über AND, OR, NOT, () miteinander verknüpfen.
Die Auswertung der Präprozessorbedingungen erfolgt erst bei der Generierung der Skripte.
Syntax
#If <Präprozessorbedingung_1>
’ Code, der für diese Präprozessorbedingung gelten soll
#ElseIf <Präprozessorbedingung_2> Then
’ Code, der für diese Präprozessorbedingung gelten soll
#Else
’ Code, der sonst gelten soll
#Endif
Beispiel:
Für die Spalte ADSGroup.IsForITShop wurde in der Spaltendefinition (Tabelle DialogColumn) die Präprozessorbedingung ITSHOP eingetragen. In der Bildungsregel der Spalte ADSGroup.DisplayName soll die Spalte IsForITShop referenziert werden. Um kompilierfähig zu bleiben, muss für die Bildungsregel folgende Konstruktion verwendet werden:
#If ITSHOP Then
If $IsForITShop:Bool$ And $UID_AccProduct$ <> "" Then
Value = $FK(UID_AccProduct).Ident_AccProduct$
Else
End If
#Else
#End If
Verwandte Themen
Um systemweit wirksam zu werden, erfordert jegliche Änderung an präprozessorrelvanten Konfigurationsparametern sowie Änderungen der Präprozessorbedingungen an Objekten und in VB.Net-Ausdrücken eine Kompilierung der One Identity Manager-Datenbank.
Für die Kompilierung gilt Folgendes:
-
Für Objekte mit einer Präprozessorbedingung wird intern ein Programmcode mit einer entsprechenden #If...Then...#Else - Anweisung erzeugt. Der Programmcode, der in Sektionen liegt, deren Präprozessorbedingung nicht zutrifft, ist für den Compiler nicht vorhanden und wird nicht übersetzt. Diese Objekte gelten als nicht vorhanden.
-
VB.Net-Ausdrücke, die Präprozessorbedingungen enthalten, werden kompiliert. Der Programmcode ist vorhanden. Die Auswertung der Präprozessorbedingungen erfolgt erst bei der Generierung der Skripte.
Für das Kompilieren der Bildungsregeln gilt:
-
Bildungsregeln auf Spalten, die per Präprozessorbedingung deaktiviert sind, werden nicht kompiliert und die daraus resultierenden Beziehungen werden nicht in der Tabelle DialogNotification gespeichert. Diese Spalten sind also komplett als nicht vorhanden anzusehen.
-
Bildungsregeln, die sich auf deaktivierte Spalten beziehen, werfen beim Kompilieren eine Fehlermeldung, falls der entsprechende Code-Teil nicht auch in eine Präprozessoranweisung eingebunden ist.
Skripte im One Identity Manager dienen zur Überwachung und Erhaltung der Datenkonsistenz und der Businesslogik des Kunden in der Datenbank. Skripte können eingesetzt werden zum:
-
Überprüfen von Spaltenwerten
-
Auslösen von Ereignissen
-
Erzeugen, Verändern und Löschen von Objekten und damit zur Manipulation der Datenbank
Detaillierte Informationen zum Thema