Synchronizace Microsoft Entra Connect: Principy deklarativního zřizování

Toto téma vysvětluje konfigurační model v Microsoft Entra Připojení. Model se nazývá deklarativní zřizování a umožňuje snadno provést změnu konfigurace. Mnoho věcí popsaných v tomto tématu je pokročilých a nevyžaduje se pro většinu zákaznických scénářů.

Přehled

Deklarativní zřizování zpracovává objekty přicházející ze zdrojového připojeného adresáře a určuje, jak se má objekt a atributy transformovat ze zdroje do cíle. Objekt se zpracovává v kanálu synchronizace a kanál je stejný pro příchozí a odchozí pravidla. Příchozí pravidlo je z místa konektoru do metaverse a odchozí pravidlo je z metaverze k prostoru konektoru.

Diagram that shows a sync pipeline example.

Kanál má několik různých modulů. Každý z nich zodpovídá za jeden koncept synchronizace objektů.

Diagram that shows the modules in the pipeline.

  • Zdroj, zdrojový objekt
  • Obor, Najde všechna pravidla synchronizace, která jsou v oboru.
  • Spojení, určuje vztah mezi místem spojnice a metaverse
  • Transformace, výpočet způsobu transformace atributů a toku
  • Priorita, řešení konfliktních příspěvků atributů
  • Cíl, cílový objekt

Obor

Modul oboru vyhodnocuje objekt a určuje pravidla, která jsou v oboru, a měla by být zahrnuta do zpracování. V závislosti na hodnotách atributů objektu se vyhodnocují různá pravidla synchronizace, aby byla v oboru. Například zakázaný uživatel, který nemá poštovní schránku Exchange, má jiná pravidla než povolený uživatel s poštovní schránkou.
Diagram that shows the scope module for an object.

Obor je definován jako skupiny a klauzule. Klauzule jsou uvnitř skupiny. Logický operátor AND se používá mezi všemi klauzulemi ve skupině. Například (oddělení =IT A země = Dánsko). Logický operátor OR se používá mezi skupinami.

Scope
Rozsah tohoto obrázku by měl být čten jako (oddělení = IT A země = Dánsko) NEBO (země=Švédsko). Pokud je hodnota true vyhodnocena buď skupina 1, nebo skupina 2, pravidlo je v oboru.

Modul oboru podporuje následující operace.

Operation Popis
EQUAL, NOTEQUAL Porovnání řetězců, které vyhodnotí, jestli je hodnota rovna hodnotě v atributu. Informace o atributech s více hodnotami najdete v tématu ISIN a ISNOTIN.
LESSTHAN, LESSTHAN_OR_EQUAL Porovnání řetězců, které vyhodnotí, jestli je hodnota menší než hodnota v atributu.
OBSAHUJE, NOTCONTAINS Porovnání řetězců, které vyhodnotí, jestli se hodnota nachází někde uvnitř hodnoty v atributu.
STARTSWITH, NOTSTARTSWITH Porovnání řetězců, které vyhodnotí, jestli je hodnota na začátku hodnoty v atributu.
ENDSWITH, NOTENDSWITH Porovnání řetězců, které vyhodnotí, jestli je hodnota na konci hodnoty v atributu.
GREATERTHAN, GREATERTHAN_OR_EQUAL Porovnání řetězců, které vyhodnotí, jestli je hodnota větší než hodnota v atributu.
ISNULL, ISNOTNULL Vyhodnotí, zda atribut chybí v objektu. Pokud atribut neexistuje, a proto je null, pravidlo je v oboru.
ISIN, ISNOTIN Vyhodnotí, jestli je hodnota v definovaném atributu. Tato operace je vícehodnotová varianta EQUAL a NOTEQUAL. Atribut má být atribut s více hodnotami a pokud se hodnota nachází v některé z hodnot atributů, pak pravidlo je v oboru.
ISBITSET, ISNOTBITSET Vyhodnotí, jestli je nastavený konkrétní bit. Můžete například použít k vyhodnocení bitů v userAccountControl a zjistit, jestli je uživatel povolený nebo zakázaný.
ISMEMBEROF, ISNOTMEMBEROF Hodnota by měla obsahovat dn pro skupinu v prostoru spojnice. Pokud je objekt členem zadané skupiny, pravidlo je v oboru.

Připojení

Modul join v synchronizačním kanálu zodpovídá za vyhledání vztahu mezi objektem ve zdroji a objektem v cíli. U příchozího pravidla by tato relace byla objektem v prostoru spojnice, který vyhledá relaci k objektu v metaverse.
Join between cs and mv
Cílem je zjistit, jestli je objekt již v metaverse, vytvořený jiným Připojení orem, měl by být přidružen. Například v doménové struktuře prostředků účtu by měl být uživatel z doménové struktury účtu připojený k uživateli z doménové struktury prostředků.

Spojení se většinou používají u příchozích pravidel ke spojení objektů prostoru spojnice ke stejnému objektu metaverse.

Spojení jsou definována jako jedna nebo více skupin. Uvnitř skupiny máte klauzule. Logický operátor AND se používá mezi všemi klauzulemi ve skupině. Logický operátor OR se používá mezi skupinami. Skupiny se zpracovávají v pořadí odshora dolů. Když jedna skupina najde přesně jednu shodu s objektem v cíli, nevyhodnotí se žádná další pravidla spojení. Pokud se najde nula nebo více než jeden objekt, zpracování pokračuje v další skupině pravidel. Z tohoto důvodu by se pravidla měla vytvořit v pořadí od nejvýraznějšího prvního a více přibližných přibližných shod na konci.
Join definition
Spojení v tomto obrázku se zpracovávají shora dolů. Nejprve kanál synchronizace zjistí, jestli existuje shoda s ID zaměstnance. Pokud ne, druhé pravidlo zjistí, jestli se název účtu dá použít ke spojení objektů. Pokud ani tato shoda neodpovídá, třetí a konečné pravidlo je více přibližné shody pomocí jména uživatele.

Pokud byla vyhodnocena všechna pravidla spojení a není přesně jedna shoda, použije se typ odkazu na stránce Popis . Pokud je tato možnost nastavená na Zřízení, vytvoří se nový objekt v cíli.
Screenshot that shows the

Objekt by měl mít pouze jedno pravidlo synchronizace s pravidly spojení v oboru. Pokud je definováno více pravidel synchronizace, dojde k chybě. Priorita se nepoužívá k řešení konfliktů spojení. Objekt musí mít pravidlo spojení v oboru pro tok atributů se stejným směrem příchozího a odchozího přenosu. Pokud potřebujete tok atributů příchozí i odchozí do stejného objektu, musíte mít příchozí i odchozí pravidlo synchronizace s spojením.

Odchozí spojení má zvláštní chování při pokusu o zřízení objektu pro cílový prostor konektoru. Atribut DN se používá k prvnímu pokusu o zpětné spojení. Pokud už objekt v cílovém prostoru spojnice se stejným DN existuje, objekty jsou spojené.

Modul join se vyhodnocuje jenom jednou, když nové pravidlo synchronizace přejde do oboru. Pokud je objekt spojený, není odpojí, ani když už kritéria spojení nebudou splněna. Pokud chcete objekt zrušit, pravidlo synchronizace, které objekty připojilo, musí být mimo rozsah.

Odstranění metaverse

Metaverse objekt zůstane tak dlouho, dokud v oboru existuje jedno pravidlo synchronizace s typem propojení nastaveným na Provision nebo StickyJoin. StickyJoin se používá, když Připojení or nemůže zřídit nový objekt pro metaverse, ale když je připojen, musí být odstraněn ve zdroji před odstraněním objektu metaverse.

Při odstranění objektu metaverse se pro odstranění označí všechny objekty přidružené k pravidlu odchozí synchronizace označenému pro zřízení .

Transformace

Transformace se používají k definování způsobu toku atributů ze zdroje do cíle. Toky můžou mít jeden z následujících typů toků: přímý, konstantní nebo výraz. Přímý tok proudí hodnotu atributu tak, jak je bez dalších transformací. Konstantní hodnota nastaví zadanou hodnotu. Výraz používá jazyk deklarativního zřizovacího výrazu k vyjádření způsobu transformace. Podrobnosti jazyka výrazů najdete v tématu jazyka deklarativního zřizování výrazů.

Provision or join

Zaškrtávací políčko Použít jednou definuje, že atribut by měl být nastaven pouze při počátečním vytvoření objektu. Tuto konfiguraci lze například použít k nastavení počátečního hesla pro nový objekt uživatele.

Slučování hodnot atributů

V tocích atributů existuje nastavení, které určuje, jestli mají být vícehodnotové atributy sloučeny z několika různých Připojení orů. Výchozí hodnota je Update, což značí, že pravidlo synchronizace s nejvyšší prioritou by mělo vyhrát.

Screenshot that shows the

Existuje také merge a MergeCaseInsensitive. Tyto možnosti umožňují sloučit hodnoty z různých zdrojů. Dá se například použít ke sloučení atributu proxyAddresses z několika různých doménových struktur. Při použití této možnosti musí všechna pravidla synchronizace v oboru objektu používat stejný typ sloučení. Aktualizaci nelze definovat z jednoho Připojení oru a sloučení z jiného. Pokud se pokusíte, zobrazí se chyba.

Rozdíl mezi funkcí Merge a MergeCaseInsensitive je způsob zpracování duplicitních hodnot atributů. Synchronizační modul zajišťuje, aby se do cílového atributu nevkládaly duplicitní hodnoty. U mergeCaseInsensitive, duplicitní hodnoty pouze s rozdílem v případě, že nebudou přítomny. V cílovém atributu byste například neměli vidět "SMTP:bob@contoso.com" a "smtp:bob@contoso.com". Sloučení se dívá pouze na přesné hodnoty a více hodnot, kde může existovat pouze rozdíl v případě, že by mohlo existovat.

Možnost Nahradit je stejná jako aktualizace, ale nepoužívá se.

Řízení procesu toku atributů

Pokud je nakonfigurováno více pravidel příchozí synchronizace, aby přispělo ke stejnému atributu metaverse, použije se priorita k určení vítěze. Pravidlo synchronizace s nejvyšší prioritou (nejnižší číselnou hodnotou) bude přispívat hodnotou. Totéž platí pro pravidla odchozích přenosů. Pravidlo synchronizace s nejvyšší prioritou vyhrává a přispívá hodnotu do připojeného adresáře.

V některých případech by pravidlo synchronizace mělo místo toho, aby přispělo k hodnotě, určit, jak se mají chovat jiná pravidla. V tomto případě se používají některé speciální literály.

U příchozích synchronizačních pravidel lze literál NULL použít k označení, že tok nemá žádnou hodnotu pro přispívání. Další pravidlo s nižší prioritou může přispět k hodnotě. Pokud žádné pravidlo přispělo hodnotu, atribut metaverse se odebere. U odchozího pravidla platí, že pokud je hodnota NULL konečnou hodnotou po zpracování všech pravidel synchronizace, odebere se hodnota v připojeném adresáři.

Literál AuthoritativeNull je podobný hodnotě NULL , ale s rozdílem, že žádná pravidla s nižší prioritou nemohou přispět hodnotu.

Tok atributu může také použít IgnoreThisFlow. Je to podobné hodnotě NULL v tom smyslu, že značí, že neexistuje nic, co by se mělo přispívat. Rozdíl je v tom, že neodebere již existující hodnotu v cíli. Je to jako tok atributů, který tam nikdy nebyl.

Zde je příklad:

V části Out to AD – Hybridní hybridní exchange uživatele najdete následující tok:
IIF([cloudSOAExchMailbox] = True,[cloudMSExchSafeSendersHash],IgnoreThisFlow)
Tento výraz by měl být přečten takto: pokud je poštovní schránka uživatele umístěna v Microsoft Entra ID, pak tok atributu z Microsoft Entra ID do Active Directory. Pokud ne, neprotékejte nic zpátky do služby Active Directory. V tomto případě by se zachovala existující hodnota ve službě AD.

Importovaná hodnota

Funkce ImportValue se liší od všech ostatních funkcí, protože název atributu musí být uzavřen v uvozovkách místo hranatých závorek:

ImportedValue("proxyAddresses").

Příchozí synchronizace má koncept za předpokladu, že atribut, který ještě nedosáhl připojeného adresáře, se k němu nakonec dostane v určitém okamžiku, takže synchronizace obvykle získá hodnotu atributu z příslušného prostoru konektoru, i když ještě nebyl exportován nebo došlo k chybě během exportu. V některých případech je však důležité synchronizovat pouze hodnotu, která byla exportována a potvrzena při importu z připojeného adresáře. Tuto funkci najdete v několika předem zadaných transformačních pravidlech "In From AD/AAD" (In From AD/AAD), kde by se atribut měl synchronizovat pouze v případě, že bylo potvrzeno, že se hodnota úspěšně exportovala.

Příklad této funkce najdete v přednabídce synchronizačního pravidla z AD – Uživatel common from Exchange, for ProxyAddresses attribute flow with Hybrid Exchange. Například při přidání proxyAddresses uživatele vrátí funkce ImportValue novou hodnotu pouze po potvrzení z následujícího kroku importu:

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

Tato funkce se vyžaduje, když cílový adresář může změnit nebo zahodit exportovanou hodnotu atributu bezobslužně a chceme, aby synchronizace zpracovávala pouze potvrzené hodnoty atributů.

Pořadí podle priority

Když se několik pravidel synchronizace pokusí do cíle přispět stejnou hodnotou atributu, použije se k určení vítěze hodnota priority. Pravidlo s nejvyšší prioritou, nejnižší číselnou hodnotou bude přispívat atributem v konfliktu.

Merge Types

Toto řazení lze použít k definování přesnějších toků atributů pro malou podmnožinu objektů. Například předefinovaná pravidla zajišťují, aby atributy z povoleného účtu (User AccountEnabled) měly přednost před jinými účty.

Prioritu lze definovat mezi Připojení ory. To umožňuje Připojení orům s lepšími daty přispívat hodnoty jako první.

Více objektů ze stejného prostoru spojnice

Ke stejnému objektu metaverse není možné připojit několik objektů ve stejném prostoru spojnice. Tato konfigurace je hlášena jako nejednoznačná i v případě, že atributy ve zdroji mají stejnou hodnotu.

Diagram that shows multiple objects joined to the same mv object with a transparent red X overlay.

Další kroky

Témata s přehledem

Referenční témata