Skip to main content
Wenn Sie zuordnen, was eine Anwendung bei der Anmeldung erhält (das Subject (NameID) für eine SAML-App oder Subject und Claims für eine OIDC-App), ist jeder Wert ein IQL-Ausdruck. Mit IQL können Sie Daten aus dem Profil eines Benutzers abrufen und den Wert umformen, bevor er gesendet wird.
IQL (Iru Query Language) ist die Ausdruckssprache von Iru für Zuordnungen und wird an mehreren Stellen verwendet:
  • Die Attribute und Claims, die eine Anwendung bei der Anmeldung erhält.
  • Die Felder, die eine verbundene Quelle Ihrem Verzeichnis zuordnet (siehe Attributzuordnung).
  • Auto Group-Regeln und Listenfilter.
Dieselbe Syntax funktioniert überall, wo IQL vorkommt.IQL basiert auf CEL (Common Expression Language), dem offenen Standard für Ausdruckssprachen, sodass jeder in CEL gültige Ausdruck auch in IQL gültig ist.
Während der Eingabe schlägt der Zuordnungseditor die verfügbaren Felder, Funktionen und Operatoren vor und zeigt eine Live-Vorschau des Ergebnisses. Ein Ausdruck muss im Editor und erneut beim Speichern die Typprüfung bestehen, sodass Fehler sichtbar werden, bevor sie jemals eine Anmeldung oder Synchronisierung erreichen.

Auf Ihre Daten verweisen

Worauf Sie verweisen, hängt davon ab, wo der Ausdruck ausgeführt wird:
  • Anwendungszuordnung beginnt beim Objekt user, dessen Felder die Profilattribute Ihres Verzeichnisses sind:
    Die Standardwerte spiegeln dies wider: Das Subject einer OIDC-App ist standardmäßig user.id, und das Subject einer SAML-App ist standardmäßig user.username.
  • Directory Sync-Zuordnung verweist auf die Feldnamen der Quelle. Ein gültiger IQL-Bezeichner wird direkt so geschrieben, wie er aus dem verbundenen System kommt. Er beginnt mit einem ASCII-Buchstaben oder Unterstrich, und der Rest besteht aus ASCII-Buchstaben, Ziffern und Unterstrichen:
    Jeder andere Name wird über seinen exakten Namen aus __source gelesen. Dazu gehören Leerzeichen, Symbole, ein Punkt innerhalb eines einzelnen Feldnamens, Zeichen außerhalb von ASCII und IQL-Schlüsselwörter. Zum Beispiel __source["Email - Work"]. Siehe Werte mit IQL transformieren.
Bei Feldnamen wird die Groß-/Kleinschreibung beachtet. Auf verschachtelte Werte greifen Sie mit einem Punkt zu (user.profile.team), auf eine Liste oder Map mit [...] (siehe unten).

Bausteine

Literale

Zeichenfolgen unterstützen die üblichen Escape-Sequenzen wie \n, \t, \\, \" und \uXXXX.

Operatoren

Rangfolge

Von der stärksten zur schwächsten Bindung. Setzen Sie im Zweifel Klammern.

Zeichenfolgenfunktionen

Zeichenfolgenoperationen werden als Methoden auf einem Wert geschrieben, in der Form value.method(...):

Bedingungen und Standardwerte

Der Bedingungsoperator ist die einfachste Möglichkeit, einen Ersatzwert bereitzustellen, wenn ein Wert leer sein könnte:
Für eine umfassendere Behandlung von Null-Werten bietet IQL außerdem Optional-Hilfsfunktionen (Null-sicher), siehe unten.

Optionale Werte

Mit Optional-Hilfsfunktionen können Sie mit Werten arbeiten, die fehlen könnten, ohne einen Fehler zu verursachen. Ein Optional enthält entweder einen Wert oder ist leer.
ofNonZeroValue behandelt Folgendes als leer: eine leere Zeichenfolge "", 0, false, eine leere Liste [], eine leere Map {} und null.

Kommentare und Leerzeichen

Leerzeichen sind nicht signifikant, und // leitet einen Kommentar ein, der bis zum Ende der Zeile reicht:

Beispiele

Verwenden Sie die Vorschau im Zuordnungseditor, um vor der Veröffentlichung zu bestätigen, dass ein Ausdruck das erwartete Ergebnis liefert; sie zeigt genau den Wert, den Iru senden oder speichern wird.

Nächste Schritte

Anwendungszuordnung

Ordnen Sie IQL-Werte der Assertion oder dem Token zu, die eine Anwendung erhält.

Attributzuordnung

Verwenden Sie dasselbe IQL, um eine verbundene Quelle Ihrem Verzeichnis zuzuordnen.

Automatische Gruppen

Steuern Sie die Gruppenmitgliedschaft mit IQL-Regeln über Profilattribute.

Profilattribute

Die user-Felder, auf die Ihre Ausdrücke zugreifen.