Freigeben über


Microsoft Entra Connect-Synchronisierung: Grundlegendes zur deklarativen Bereitstellung

In diesem Artikel wird das Konfigurationsmodell in Microsoft Entra Connect erläutert. Das Modell wird als deklarative Bereitstellung bezeichnet und ermöglicht es Ihnen, eine Konfigurationsänderung mit Leichtigkeit vorzunehmen. Viele in diesem Artikel beschriebene Dinge sind für die meisten Kundenszenarien erweitert und nicht erforderlich.

Überblick

Die deklarative Bereitstellung verarbeitet Objekte, die aus einem mit einer Quelle verbundenen Verzeichnis stammen. Es bestimmt, wie das Objekt und die Attribute von einer Quelle in ein Ziel transformiert werden sollen. Ein Objekt wird in einer Synchronisierungspipeline verarbeitet, und die Pipeline ist für eingehende und ausgehende Regeln identisch. Eine eingehende Regel wird von einem Connectorbereich an die Metaverse übergeben, und eine ausgehende Regel wird von der Metaverse an einen Connectorbereich übergeben.

Diagramm, das ein Beispiel für eine Synchronisierungspipeline zeigt.

Die Pipeline verfügt über mehrere verschiedene Module. Jeder ist für ein Konzept bei der Objektsynchronisierung verantwortlich.

Diagramm, das die Module in der Pipeline zeigt.

  • Source, Das Quellobjekt
  • Bereich: Sucht nach allen Synchronisierungsregeln innerhalb des Bereichs
  • Verknüpfung, Bestimmt die Beziehung zwischen Verbinderraum und Metaverse
  • Transformieren, Berechnet, wie Attribute transformiert werden und fließen sollen
  • Rangfolge: Löst in Konflikt stehende Attributbeiträge
  • Target, Zielobjekt

Umfang

Das Bereichsmodul wertet ein Objekt aus und bestimmt die Regeln, die sich im Bereich befinden und in die Verarbeitung einbezogen werden sollen. Abhängig von den Attributwerten des Objekts werden unterschiedliche Synchronisierungsregeln ausgewertet, die in den Anwendungsbereich fallen. Ein deaktivierter Benutzer ohne Exchange-Postfach hat beispielsweise andere Regeln als ein aktivierter Benutzer mit einem Postfach.
Diagramm, das das Bereichsmodul für ein Objekt zeigt.

Der Bereich wird als Gruppen und Klauseln definiert. Die Klauseln befinden sich innerhalb einer Gruppe. Ein logisches AND wird zwischen allen Klauseln in einer Gruppe verwendet. Beispiel: (Abteilung =IT UND Land = Dänemark). Ein logisches OR wird zwischen Gruppen verwendet.

Umfang
Der Umfang in dieser Abbildung sollte als (Abteilung = IT UND Land = Dänemark) ODER (Land=Schweden) gelesen werden. Wenn Gruppe 1 oder Gruppe 2 auf "wahr" ausgewertet wird, ist die Regel zutreffend.

Das Bereichsmodul unterstützt die folgenden Vorgänge.

Vorgang BESCHREIBUNG
GLEICH, UNGLEICH Ein Zeichenfolgenvergleich, der auswertet, ob der Wert dem Wert im Attribut entspricht. Weitere Informationen zu mehrwertigen Attributen finden Sie unter ISIN und ISNOTIN.
KLEINER, KLEINER_GLEICH Ein Vergleich von Zeichenfolgen, der auswertet, ob der Wert kleiner als der Attributwert ist.
ENTHÄLT, NICHT ENTHÄLT Ein Vergleich von Zeichenfolgen, der auswertet, ob sich der Wert innerhalb des Attributwerts befindet.
BEGINNTMIT, NICHTBEGINNTMIT Ein Zeichenfolgenvergleich, der prüft, ob ein Wert am Anfang eines Attributwerts steht.
ENDSWITH, NOTENDSWITH Ein Vergleich von Zeichenfolgen, der auswertet, ob sich der Wert am Ende des Attributwerts befindet.
GRÖSSER ALS, GRÖSSER ODER GLEICH Ein Vergleich von Zeichenfolgen, der auswertet, ob der Wert größer als der Attributwert ist.
ISNULL, ISNOTNULL Wertet aus, ob das Attribut nicht im Objekt vorhanden ist. Wenn das Attribut nicht vorhanden ist und daher null ist, gilt die Regel.
ISIN, ISNOTIN Wertet aus, ob der Wert im definierten Attribut vorhanden ist. Bei diesem Vorgang handelt es sich um die mehrwertige Variation von EQUAL und NOTEQUAL. Das Attribut ist ein mehrwertiges Attribut, und wenn der Wert in einem der Attributwerte gefunden werden kann, ist die Regel relevant.
ISBITSET, ISNOTBITSET Wertet aus, ob ein bestimmtes Bit festgelegt ist. Beispielsweise kann verwendet werden, um die Bits in userAccountControl auszuwerten, um festzustellen, ob ein Benutzer aktiviert oder deaktiviert ist.
ISMEMBEROF, ISNOTMEMBEROF Der Wert sollte einen DN in Bezug auf eine Gruppe im Connectorbereich enthalten. Wenn es sich bei dem Objekt um ein Mitglied der angegebenen Gruppe handelt, ist die Regel im Geltungsbereich.

Beitreten

Das Verknüpfungsmodul in der Synchronisierungspipeline ist dafür verantwortlich, die Beziehung zwischen dem Objekt in der Quelle und einem Objekt im Ziel zu finden. Bei einer eingehenden Regel ist diese Beziehung ein Objekt in einem Connectorbereich, das eine Beziehung zu einem Objekt in der Metaverse herstellt.
Verknüpfung zwischen cs und mv
Das Ziel besteht darin, zu sehen, ob bereits ein Objekt in der Metaverse vorhanden ist, das von einem anderen Connector erstellt wurde, es sollte zugeordnet werden. Z.B. in einer Kontoressourcengesamtstruktur muss der Benutzer aus der Kontogesamtstruktur mit dem Benutzer aus der Ressourcengesamtstruktur verbunden werden.

Verbindungen werden meistens für eingehende Regeln verwendet, um die Objekte des Connectorbereichs mit dem gleichen Metaverse-Objekt zu verbinden.

Die Verknüpfungen werden als eine oder mehrere Gruppen definiert. Innerhalb einer Gruppe verfügen Sie über Klauseln. Ein logisches AND wird zwischen allen Klauseln in einer Gruppe verwendet. Ein logisches OR wird zwischen Gruppen verwendet. Die Gruppen werden von oben nach unten verarbeitet. Wenn eine Gruppe genau eine Übereinstimmung mit einem Objekt im Ziel findet, werden keine anderen Verknüpfungsregeln ausgewertet. Wenn null oder mehr als ein Objekt gefunden wird, wird die Verarbeitung mit der nächsten Regelgruppe fortgesetzt. Aus diesem Grund sollten die Regeln in der Reihenfolge der explizitesten Regeln zuerst und der unscharferen Regeln am Ende erstellt werden.
Verbindungsdefinition
Die Verknüpfungen in diesem Bild werden von oben nach unten verarbeitet. Zuerst überprüft die Synchronisierungspipeline, ob eine Übereinstimmung bei der employeeID vorliegt. Wenn nicht, wird in der zweiten Regel angezeigt, ob der Kontoname zum Verbinden der Objekte verwendet werden kann. Liegt hier ebenfalls keine Übereinstimmung vor, prüft die dritte und letzte Regel eine etwas ungenauere Übereinstimmung unter Verwendung des Benutzernamens.

Wenn alle Verknüpfungsregeln ausgewertet werden und es nicht genau eine Übereinstimmung gibt, wird der Linktyp auf der Seite "Beschreibung " verwendet. Wenn für diese Einstellung Bereitstellenfestgelegt ist, wird im Ziel ein neues Objekt erstellt.
Screenshot des geöffneten Dropdownmenüs

Ein Objekt sollte nur eine einzige Synchronisierungsregel mit Verknüpfungsregeln im Geltungsbereich aufweisen. Wenn mehrere Synchronisierungsregeln vorhanden sind, bei denen verknüpfung definiert ist, tritt ein Fehler auf. Die Rangfolge wird nicht zum Lösen von Verbindungskonflikten verwendet. Ein Objekt muss über eine Zusammenführungsregel im Anwendungsbereich verfügen, damit Attribute mit derselben eingehenden/ausgehenden Richtung fließen können. Wenn der Datenfluss der Attribute sowohl ein- als auch ausgehend zum gleichen Objekt erfolgen soll, benötigen Sie sowohl eine ein- als auch eine ausgehende Synchronisierungsregel mit der Verbindung.

Die ausgehende Verbindung weist ein besonderes Verhalten auf, wenn sie versucht, ein Objekt für einen Zielconnectorbereich bereitzustellen. Das DN-Attribut wird verwendet, um zuerst eine Rückwärtsverknüpfung zu versuchen. Wenn bereits ein Objekt im Zielverbinderbereich mit demselben DN vorhanden ist, werden die Objekte verknüpft.

Das Verknüpfungsmodul wird nur einmal ausgewertet, wenn eine neue Synchronisierungsregel in den Gültigkeitsbereich gelangt. Wenn ein Objekt verknüpft ist, ist die Verknüpfung nicht rückgängig, auch wenn die Verknüpfungskriterien nicht mehr erfüllt sind. Wenn Sie die Verknüpfung eines Objekts aufheben möchten, muss die Synchronisierungsregel, die die Objekte verbunden hat, außerhalb des Gültigkeitsbereichs fallen.

Metaverse löschen

Ein Metaverse-Objekt bleibt so lange bestehen, wie eine Synchronisierungsregel in Geltung ist, bei der der Linktyp auf Bereitstellen oder StickyJoin festgelegt ist. Ein StickyJoin wird verwendet, wenn ein Connector kein neues Objekt für die Metaverse bereitstellen darf. Wenn sie jedoch verknüpft ist, muss sie in der Quelle gelöscht werden, bevor das Metaverse-Objekt gelöscht wird.

Wenn ein Metaverse-Objekt gelöscht wird, werden alle objekte, die mit einer ausgehenden Synchronisierungsregel verknüpft sind, die für die Bereitstellung markiert ist, für einen Löschvorgang markiert.

Verwandlungen

Die Transformationen werden verwendet, um zu definieren, wie Attribute von der Quelle zum Ziel fließen sollen. Die Flüsse können einen der folgenden Flusstypen aufweisen: Direct, Constant oder Expression. Ein direkter Fluss leitet einen Attributwert as-is ohne zusätzliche Transformationen weiter. Ein konstanter Wert legt den angegebenen Wert fest. Ein Ausdruck verwendet die deklarative Bereitstellungsausdruckssprache, um auszudrücken, wie die Transformation erfolgen soll. Die Details zur Ausdruckssprache finden Sie im Artikel zum Verständnis der deklarativen Bereitstellungsausdruckssprache.

Bereitstellen oder verbinden

Das Kontrollkästchen "Einmal anwenden " definiert, dass das Attribut nur festgelegt werden soll, wenn das Objekt anfänglich erstellt wird. Diese Konfiguration kann beispielsweise verwendet werden, um ein anfängliches Kennwort für ein neues Benutzerobjekt festzulegen.

Zusammenführen von Attributwerten

In den Attributflüssen gibt es eine Einstellung, um zu bestimmen, ob mehrwertige Attribute aus mehreren verschiedenen Connectors zusammengeführt werden sollen. Der Standardwert ist "Update", der angibt, dass die Synchronisierungsregel mit der höchsten Rangfolge gewinnen soll.

Screenshot des Abschnitts „Transformationen hinzufügen“ mit dem geöffneten Dropdownmenü „Zusammenführungstypen“.

Es gibt auch "Merge" und "MergeCaseInsensitive". Mit diesen Optionen können Sie Werte aus verschiedenen Quellen zusammenführen. Sie können beispielsweise das Attribut „proxyAddresses“ aus mehreren unterschiedlichen Gesamtstrukturen zusammenführen. Wenn Sie diese Option verwenden, müssen alle Synchronisierungsregeln im Geltungsbereich eines Objekts denselben Zusammenführungstyp verwenden. Es ist nicht möglich, den Zusammenführungstyp Update für einen Connector und Merge für einen anderen Connector festzulegen. Wenn Sie versuchen, wird eine Fehlermeldung angezeigt.

Der Unterschied zwischen Merge und MergeCaseInsensitive besteht darin, doppelte Attributwerte zu verarbeiten. Das Synchronisierungsmodul stellt sicher, dass doppelte Werte nicht in das Zielattribute eingefügt werden. Bei MergeCaseInsensitive werden auch keine doppelten Werte eingefügt, bei denen sich nur die Groß-/Kleinschreibung unterscheidet. Sie sollten beispielsweise nicht sowohl "SMTP:bob@contoso.com" als auch "smtp:bob@contoso.com" im Zielattribut sehen. Merge überprüft nur die genauen Werte. Daher ist es möglich, dass mehrere Werte vorhanden sind, bei denen sich nur die Groß-/Kleinschreibung unterscheidet.

Die Option "Ersetzen" ist identisch mit "Aktualisieren", wird aber nicht verwendet.

Steuern des Attributflussprozesses

Wenn mehrere eingehende Synchronisierungsregeln so konfiguriert sind, dass sie zum gleichen Metaverse-Attribut beitragen, wird die Rangfolge verwendet, um den Gewinner zu bestimmen. Die Synchronisierungsregel mit der höchsten Rangfolge (niedrigster numerischer Wert) trägt zum Wert bei. Gleiches gilt für Ausgangsregeln. Die Synchronisierungsregel mit der höchsten Rangfolge gewinnt und trägt den Wert zum verbundenen Verzeichnis bei.

In einigen Fällen sollte die Synchronisierungsregel statt dazu beizutragen, einen Wert zu liefern, bestimmen, wie sich andere Regeln verhalten sollen. Für diesen Fall werden einige spezielle Literale verwendet.

Bei eingehenden Synchronisierungsregeln kann das Literal NULL verwendet werden, um anzugeben, dass der Fluss keinen Wert beizutragen hat. Eine andere Regel mit niedrigerer Rangfolge kann einen Wert mit sich bringen. Wenn keine Regel einen Wert beigetragen hat, wird das Metaverse-Attribut entfernt. Wenn NULL für eine ausgehende Regel der endgültige Wert ist, nachdem alle Synchronisierungsregeln verarbeitet wurden, wird der Wert im verbundenen Verzeichnis entfernt.

Das Literal AuthoritativeNull ähnelt NULL, jedoch mit dem Unterschied, dass keine Regeln mit niedrigerer Rangfolge einen Wert beitragen können.

Ein Attributfluss kann auch IgnoreThisFlow verwenden. Es ist ähnlich wie NULL in dem Sinne, dass es angibt, dass es nichts zu leisten gibt. Der Unterschied besteht darin, dass kein bereits vorhandener Wert im Ziel entfernt wird. Es ist so, als sei der Attributfluss nie da gewesen.

Hier ist ein Beispiel:

In Out to AD - User Exchange hybrid (Ausgehend nach AD – Benutzer Exchange Hybrid) finden Sie folgenden Fluss:
IIF([cloudSOAExchMailbox] = True,[cloudMSExchSafeSendersHash],IgnoreThisFlow)
Dieser Ausdruck sollte wie folgt gelesen werden: Wenn sich das Benutzerpostfach in der Microsoft Entra-ID befindet, wird das Attribut von Microsoft Entra ID an Active Directory übertragen. Andernfalls fließt nichts zurück zum Active Directory. In diesem Fall wird der vorhandene Wert in AD beibehalten.

ImportedValue

Die Funktion ImportedValue unterscheidet sich von allen anderen Funktionen, da der Attributname in Anführungszeichen und nicht in eckige Klammern eingeschlossen werden muss:

' " , ImportedValue("proxyAddresses") / ?

Bei der eingehenden Synchronisierung wird davon ausgegangen, dass ein Attribut, das kein verbundenes Verzeichnis erreicht hat, es irgendwann erreichen wird. Normalerweise ruft die Synchronisierung also einen Attributwert aus dem jeweiligen Verbinderbereich ab. Dies gilt auch dann, wenn sie noch nicht exportiert wurde oder während des Exports ein Fehler aufgetreten ist. Es ist jedoch wichtig, nur einen Wert zu synchronisieren, der beim Import aus dem verbundenen Verzeichnis exportiert und bestätigt wurde. Diese Funktion ist in mehreren vordefinierten Transformationsregeln für „Eingehend aus AD/AAD“ enthalten. Dabei sollte das Attribut nur synchronisiert werden, wenn bestätigt wurde, dass der Wert erfolgreich exportiert wurde.

Ein Beispiel für diese Funktion finden Sie in der vordefinierten Synchronisierungsregel Eingehend von AD – Benutzer allgemein aus Exchange für den ProxyAddresses-Attributflow mit Hybrid Exchange. Wenn beispielsweise die ProxyAddresses eines Benutzers hinzugefügt werden, gibt die ImportedValue-Funktion nur den neuen Wert zurück, nachdem er aus dem folgenden Importschritt bestätigt wurde:

proxyAddresses <- RemoveDuplicates(Trim(ImportedValue("proxyAddresses")))

Diese Funktion ist erforderlich, wenn das Zielverzeichnis einen exportierten Attributwert im Hintergrund ändern oder verwerfen kann, und die Synchronisierung soll nur bestätigte Attributwerte verarbeiten.

Vorrang

Wenn mehrere Synchronisierungsregeln versuchen, denselben Attributwert zum Ziel beizutragen, wird der Rangfolgewert verwendet, um den Gewinner zu bestimmen. Die Regel mit der höchsten Rangfolge (dem niedrigsten numerischen Wert) trägt in einem Konflikt das Attribut bei.

Zusammenführungstypen

Diese Sortierung kann verwendet werden, um präzisere Attributflüsse für eine kleine Teilmenge von Objekten zu definieren. Die vordefinierten Regeln stellen beispielsweise sicher, dass Attribute eines aktivierten Kontos (User AccountEnabled) Vorrang vor anderen Konten haben.

Die Rangfolge kann zwischen Connectors definiert werden. Dadurch können Verbinder mit besseren Daten zuerst Werte beitragen.

Mehrere Objekte aus demselben Verbinderraum

Es ist nicht möglich, mehrere Objekte im selben Verbinderbereich mit demselben Metaverse-Objekt verknüpft zu haben. Diese Konfiguration wird als mehrdeutig gemeldet, auch wenn die Attribute in der Quelle denselben Wert aufweisen.

Diagramm mit mehreren Objekten, die mit demselben mv-Objekt verbunden sind, mit einer transparenten roten X-Überlagerung.

Nächste Schritte

Übersichtsthemen

Referenzthemen