Přizpůsobení deklarací identity tokenů SAML

Platforma Microsoft Identity Platform podporuje jednotné přihlašování (SSO) s většinou předem integrovaných aplikací v galerii aplikací a vlastních aplikacích. Když se uživatel ověří v aplikaci prostřednictvím platformy Microsoft Identity Platform pomocí protokolu SAML 2.0, odešle se do aplikace token. Aplikace ověří a použije token k přihlášení uživatele místo výzvy k zadání uživatelského jména a hesla.

Tyto tokeny SAML obsahují informace o uživateli známém jako deklarace identity. Deklarace identity je informace, které zprostředkovatel identity uvádí o uživateli uvnitř tokenu, který pro daného uživatele vydává. V tokenu SAML jsou data deklarací identity obvykle obsažena v příkazu atributu SAML. Jedinečné ID uživatele je obvykle reprezentováno v předmětu SAML, který se také označuje jako identifikátor názvu (nameID).

Platforma Microsoft Identity Platform ve výchozím nastavení vydává token SAML pro aplikaci, která obsahuje deklaraci identity s hodnotou uživatelského jména uživatele (označované také jako hlavní název uživatele), který může uživatele jednoznačně identifikovat. Token SAML obsahuje také další deklarace identity, které zahrnují e-mailovou adresu uživatele, křestní jméno a příjmení.

Zobrazení nebo úprava deklarací identity

Zobrazení nebo úprava deklarací identity vydané v tokenu SAML pro aplikaci:

  1. Přihlaste se do Centra pro správu Microsoft Entra jako alespoň cloudová aplikace Správa istrator.
  2. Přejděte k podnikovým aplikacím>Identita>Aplikace>Všechny aplikace.
  3. Vyberte aplikaci, v nabídce vlevo vyberte jednotné přihlašování a pak v části Atributy a deklarace identity vyberte Upravit.

Možná budete muset upravit deklarace identity vydané v tokenu SAML z následujících důvodů:

  • Aplikace vyžaduje NameIdentifier , aby deklarace identity nameID byla jiná než uživatelské jméno (nebo hlavní název uživatele).
  • Aplikace je napsaná tak, aby vyžadovala jinou sadu identifikátorů URI nebo hodnot deklarací identity.

Upravit ID názvu

Úprava deklarace hodnoty identifikátoru názvu:

  1. Otevřete stránku s hodnotou identifikátoru názvu.
  2. Vyberte atribut nebo transformaci, kterou chcete u atributu použít. Volitelně můžete zadat formát, který má nameID deklarace identity mít.

Formát NameID

Pokud požadavek SAML obsahuje prvek NameIDPolicy s určitým formátem, platforma Microsoft Identity Platform respektuje formát v požadavku.

Pokud požadavek SAML neobsahuje prvek pro NameIDPolicy, pak platforma Microsoft Identity Platform vydá nameID formát, který zadáte. Pokud není zadán žádný formát, platforma Microsoft Identity Platform používá výchozí zdrojový formát přidružený ke zdroji deklarací identity vybranému. Pokud výsledkem transformace je hodnota null nebo neplatná hodnota, microsoft Entra ID odešle trvalý párový identifikátor v nameIDsouboru .

V rozevíracím seznamu Zvolit formát identifikátoru názvu vyberte jednu z možností v následující tabulce.

nameID Formát Popis
Výchozí Microsoft Identity Platform používá výchozí zdrojový formát.
Trvalé Platforma Microsoft Identity Platform používá Persistent jako nameID formát.
E-mailová adresa Platforma Microsoft Identity Platform používá EmailAddress jako nameID formát.
Nespecifikované Platforma Microsoft Identity Platform používá Unspecified jako nameID formát.
Kvalifikovaný název domény Windows Platforma Microsoft Identity Platform používá WindowsDomainQualifiedName formát.

Podporuje se také přechodné nameID , ale není k dispozici v rozevíracím seznamu a nejde ho nakonfigurovat na straně Azure. Další informace o atributu NameIDPolicy najdete v tématu Protokol SAML jednotného přihlašování.

Atributy

Tip

Postup v tomto článku se může mírně lišit v závislosti na portálu, od který začínáte.

Vyberte požadovaný zdroj pro NameIdentifier deklaraci identity (nebo nameID). Můžete si vybrat z možností v následující tabulce.

Název Popis
Email E-mailová adresa uživatele
userprincipalName Hlavní název uživatele (UPN)
onpremisessamaccountname Název účtu SAM, který se synchronizoval z místního ID Microsoft Entra.
objectid ID objektu uživatele v Microsoft Entra ID.
employeeid ID zaměstnance uživatele.
Directory extensions Rozšíření adresářů synchronizovaná z místní Active Directory pomocí nástroje Microsoft Entra Připojení Sync.
Extension Attributes 1-15 Atributy místního rozšíření používané k rozšíření schématu Microsoft Entra.
pairwiseid Trvalá forma identifikátoru uživatele.

Další informace o hodnotách identifikátorů najdete v tabulce se seznamem platných hodnot ID na zdroj dále na této stránce.

Libovolnou konstantní (statickou) hodnotu lze přiřadit k jakékoli deklaraci identity. K přiřazení konstantní hodnoty použijte následující postup:

  1. V okně Atributy a deklarace identity vyberte požadovanou deklaraci identity, kterou chcete upravit.
  2. Zadejte konstantní hodnotu bez uvozovek v atributu Zdroj podle vaší organizace a vyberte Uložit. Zobrazí se konstantní hodnota.

Rozšíření schématu adresáře (Preview)

Můžete také nakonfigurovat atributy rozšíření schématu adresáře jako nepodmíněné nebo podmíněné atributy. Pomocí následujícího postupu nakonfigurujte jeden nebo vícehodnotový atribut rozšíření schématu adresáře jako deklaraci identity:

  1. V okně Atributy a deklarace identity vyberte Přidat novou deklaraci identity nebo upravit existující deklaraci identity.
  2. Vyberte zdrojová aplikace z nástroje pro výběr aplikace, kde je definována vlastnost rozšíření.
  3. Výběrem možnosti Přidat přidáte výběr do deklarací identity.
  4. Kliknutím na Uložit potvrďte změny.

Speciální transformace deklarací identity

Můžete použít následující speciální funkce transformací deklarací identity.

Function Popis
ExtractMailPrefix() Odebere příponu domény z e-mailové adresy nebo hlavního názvu uživatele. Tato funkce extrahuje pouze první část uživatelského jména předávaného (například "joe_smith" místo joe_smith@contoso.com).
ToLower() Převede znaky vybraného atributu na malá písmena.
ToUpper() Převede znaky vybraného atributu na velká písmena.

Přidání deklarací identity specifických pro aplikaci

Přidání deklarací identity specifických pro aplikaci:

  1. V okně Atributy a deklarace identity vyberte Přidat novou deklaraci identity a otevřete stránku Spravovat deklarace identity uživatelů.
  2. Zadejte název deklarací identity. Hodnota nemusí přesně dodržovat vzor identifikátoru URI podle specifikace SAML. Pokud potřebujete vzor identifikátoru URI, můžete ho umístit do pole Obor názvů .
  3. Vyberte zdroj, ve kterém deklarace identity načte její hodnotu. Atribut uživatele můžete vybrat z rozevíracího seznamu zdrojového atributu nebo použít transformaci na atribut uživatele, než ho vygenerujete jako deklaraci identity.

Transformace deklarací identity

Použití transformace u atributu uživatele:

  1. V části Spravovat deklaraci identity vyberte Transformovat jako zdroj deklarací, aby se otevřela stránka Spravovat transformaci .
  2. V rozevíracím seznamu transformace vyberte funkci. V závislosti na vybrané funkci zadejte parametry a konstantní hodnotu, které se mají vyhodnotit v transformaci.
  3. Vyberte zdroj atributu kliknutím na příslušné přepínač. Zdroj rozšíření schématu adresáře je aktuálně ve verzi Preview.
  4. V rozevíracím seznamu vyberte název atributu.
  5. Považovat zdroj za vícehodnotový je zaškrtávací políčko označující, jestli se má transformace použít pro všechny hodnoty, nebo pouze první. Ve výchozím nastavení se transformace použijí pouze na první prvek deklarace identity s více hodnotami tím, že zaškrtnete toto políčko, zajistí, že se použije u všech. Toto políčko je povoleno pouze pro atributy s více hodnotami, například user.proxyaddresses.
  6. Pokud chcete použít více transformací, vyberte Přidat transformaci. U deklarace identity můžete použít maximálně dvě transformace. Můžete například napřed extrahovat předponu user.maile-mailu . Potom nastavte velká písmena řetězce.

K transformaci deklarací identity můžete použít následující funkce.

Function Popis
ExtractMailPrefix() Odebere příponu domény z e-mailové adresy nebo hlavního názvu uživatele. Tato funkce extrahuje pouze první část uživatelského jména předávaného. Například místo joe_smithjoe_smith@contoso.com.
Join() Vytvoří novou hodnotu spojením dvou atributů. Volitelně můžete použít oddělovač mezi dvěma atributy. nameID U transformace deklarace identity má funkce Join() specifické chování, pokud má vstup transformace část domény. Před spojením s oddělovačem a vybraným parametrem odebere část domény ze vstupu. Pokud je například vstup transformace joe_smith@contoso.com a oddělovač je @ a parametr je fabrikam.com, výsledkem této kombinace vstupu je joe_smith@fabrikam.com.
ToLowercase() Převede znaky vybraného atributu na malá písmena.
ToUppercase() Převede znaky vybraného atributu na velká písmena.
Contains() Vypíše atribut nebo konstantu, pokud vstup odpovídá zadané hodnotě. V opačném případě můžete zadat jiný výstup, pokud neexistuje žádná shoda. Pokud například chcete vygenerovat deklaraci identity, ve které je hodnota e-mailová adresa uživatele, pokud obsahuje doménu @contoso.com, jinak chcete vygenerovat hlavní název uživatele. Chcete-li provést tuto funkci, nakonfigurujte následující hodnoty: Parameter 1(input): user.email, Value: "@contoso.com", Parameter 2 (output): user.emaila Parameter 3 (output if there's no match): user.userprincipalname.
EndWith() Vypíše atribut nebo konstantu, pokud vstup končí zadanou hodnotou. V opačném případě můžete zadat jiný výstup, pokud neexistuje žádná shoda.
Pokud například chcete vygenerovat deklaraci identity, ve které je hodnota ID zaměstnance uživatele, pokud ID zaměstnance končí 000, jinak chcete vygenerovat atribut rozšíření. Chcete-li provést tuto funkci, nakonfigurujte následující hodnoty: Parameter 1(input): user.employeeid, Value: "000", Parameter 2 (output): user.employeeida Parameter 3 (output if there's no match): user.extensionattribute1.
StartWith() Vypíše atribut nebo konstantu, pokud vstup začíná zadanou hodnotou. V opačném případě můžete zadat jiný výstup, pokud neexistuje žádná shoda. Pokud například chcete vygenerovat deklaraci identity, ve které je hodnota ID zaměstnance uživatele, pokud země nebo oblast začíná US, jinak chcete vygenerovat atribut rozšíření. Chcete-li provést tuto funkci, nakonfigurujte následující hodnoty: Parameter 1(input): user.country, Value: "US", Parameter 2 (output): user.employeeida Parameter 3 (output if there's no match): user.extensionattribute1
Extract() – Po párování Vrátí podřetěděcí řetězec, který odpovídá zadané hodnotě. Pokud je Finance_BSimonnapříklad hodnota vstupu , odpovídající hodnota je Finance_, pak je BSimonvýstup deklarace identity .
Extract() – Před párování Vrátí podřetěžec, dokud neodpovídá zadané hodnotě. Pokud je BSimon_USnapříklad hodnota vstupu , odpovídající hodnota je _US, pak je BSimonvýstup deklarace identity .
Extract() – Mezi párování Vrátí podřetěžec, dokud neodpovídá zadané hodnotě. Pokud je Finance_BSimon_USnapříklad vstupní hodnota , první odpovídající hodnota je Finance_, druhá odpovídající hodnota je _US, pak je BSimonvýstup deklarace identity .
ExtractAlpha() – předpona Vrátí předponu abecední část řetězce. Pokud je BSimon_123například hodnota vstupu , vrátí BSimonhodnotu .
ExtractAlpha() – přípona Vrátí příponu abecední část řetězce. Pokud je 123_Simonnapříklad hodnota vstupu , vrátí Simonhodnotu .
ExtractNumeric() – předpona Vrátí číselnou část řetězce s předponou. Pokud je 123_BSimonnapříklad hodnota vstupu , vrátí 123hodnotu .
ExtractNumeric() – přípona Vrátí číselnou část řetězce s příponou. Pokud je BSimon_123například hodnota vstupu , vrátí 123hodnotu .
IfEmpty() Vypíše atribut nebo konstantu, pokud je vstup null nebo prázdný. Pokud například chcete vypsat atribut uložený v atributu rozšíření, pokud je ID zaměstnance uživatele prázdné. Chcete-li provést tuto funkci, nakonfigurujte následující hodnoty: Parameter 1(input): user.employeeid, Parameter 2 (output): user.extensionattribute1a Parameter 3 (output if there's no match): user.employeeid.
IfNotEmpty() Vypíše atribut nebo konstantu, pokud vstup není null nebo prázdný. Pokud například chcete vypsat atribut uložený v atributu rozšíření, pokud ID zaměstnance pro uživatele není prázdné. Chcete-li provést tuto funkci, nakonfigurujte následující hodnoty: Parameter 1(input): user.employeeid a Parameter 2 (output): user.extensionattribute1.
Substring() – pevná délka (Preview) Extrahuje části typu deklarace identity řetězce, počínaje znakem na zadané pozici a vrátí zadaný počet znaků. Je zdrojem sourceClaim deklarace identity transformace, která by se měla provést. Jedná se StartIndex o pozici počátečního znaku založeného na nule podřetězdce v této instanci. Jedná se Length o délku znaků podřetědce. Například sourceClaim - PleaseExtractThisNow, StartIndex - 6a Length - 11 vytvoří výstup .ExtractThis
Podřetězce() – EndOfString (Preview) Extrahuje části typu deklarace identity řetězce, počínaje znakem na zadané pozici a vrátí zbytek deklarace identity ze zadaného počátečního indexu. Je zdrojem sourceClaim deklarace identity transformace, která by se měla provést. Jedná se StartIndex o pozici počátečního znaku založeného na nule podřetězdce v této instanci. Například sourceClaim - PleaseExtractThisNow a StartIndex - 6 vytvoří výstup .ExtractThisNow
RegexReplace() (Preview) Další informace o transformaci deklarací identit založených na regulárních výrazech najdete v další části.

Transformace deklarací identit založených na regulárních výrazech

Následující obrázek ukazuje příklad první úrovně transformace:

Screenshot of the first level of transformation.

Akce uvedené v následující tabulce poskytují informace o první úrovni transformací a odpovídají popiskům na předchozím obrázku. Výběrem možnosti Upravit otevřete okno transformace deklarací identity.

Akce Pole Popis
1 Transformation V možnostech transformace vyberte možnost RegexReplace() a použijte metodu transformace deklarací identity založenou na regulárním výrazu pro transformaci deklarací.
2 Parameter 1 Vstup pro transformaci regulárního výrazu. Například user.mail, který má e-mailovou adresu uživatele, například admin@fabrikam.com.
3 Treat source as multivalued Některé vstupní atributy uživatele můžou být atributy uživatele s více hodnotami. Pokud vybraný atribut uživatele podporuje více hodnot a uživatel chce pro transformaci použít více hodnot, musí vybrat Možnost Považovat zdroj za více hodnot. Pokud je tato možnost vybraná, použijí se všechny hodnoty pro shodu regulárních výrazů, jinak se použije jenom první hodnota.
4 Regex pattern Regulární výraz, který je vyhodnocen proti hodnotě atributu uživatele vybraného jako parametr 1. Například regulární výraz pro extrahování uživatelského aliasu z e-mailové adresy uživatele by byl reprezentován jako (?'domain'^.*?)(?i)(\@fabrikam\.com)$.
5 Add additional parameter Pro transformaci lze použít více než jeden atribut uživatele. Hodnoty atributů by se pak sloučily s výstupem transformace regulárních výrazů. Podporuje se až pět dalších parametrů.
6 Replacement pattern Vzor nahrazení je textová šablona, která obsahuje zástupné symboly pro výsledek regulárního výrazu. Všechny názvy skupin musí být zabaleny uvnitř složených závorek, například {group-name}. Řekněme, že správa chce použít alias uživatele s jiným názvem domény, například xyz.com sloučit název země s ním. V tomto případě by {country}.{domain}@xyz.combyl vzor nahrazení , kde {country} je hodnota vstupního parametru a {domain} je výstupem skupiny z vyhodnocení regulárního výrazu. V takovém případě je US.swmal@xyz.comočekávaný výsledek .

Následující obrázek ukazuje příklad druhé úrovně transformace:

Screenshot of second level of claims transformation.

Následující tabulka obsahuje informace o druhé úrovni transformací. Akce uvedené v tabulce odpovídají popiskům na předchozím obrázku.

Akce Pole Popis
1 Transformation Transformace deklarací identity založené na regulárních výrazech nejsou omezeny na první transformaci a lze je použít také jako druhou úroveň transformace. Jako první transformaci je možné použít jakoukoli jinou metodu transformace.
2 Parameter 1 Pokud je jako transformace druhé úrovně vybraná možnost RegexReplace(), použije se výstup transformace první úrovně jako vstup pro transformaci druhé úrovně. Pokud chcete použít transformaci, měl by výraz regulárního výrazu druhé úrovně odpovídat výstupu první transformace.
3 Regex pattern Vzor regulárního výrazu je regulární výraz pro transformaci druhé úrovně.
4 Parameter input Vstupy atributů uživatele pro transformace druhé úrovně
5 Parameter input Správa istrátory mohou vybraný vstupní parametr odstranit, pokud už ho nepotřebují.
6 Replacement pattern Vzor nahrazení je textová šablona, která obsahuje zástupné symboly pro název skupiny výsledků regex, název skupiny vstupních parametrů a statickou textovou hodnotu. Všechny názvy skupin musí být zabaleny uvnitř složených závorek, například {group-name}. Řekněme, že správa chce použít alias uživatele s jiným názvem domény, například xyz.com sloučit název země s ním. V tomto případě by {country}.{domain}@xyz.combyl vzor nahrazení , kde {country} je hodnota vstupního parametru a {domain} je výstup skupiny z vyhodnocení regulárního výrazu. V takovém případě je US.swmal@xyz.comočekávaný výsledek .
7 Test transformation Transformace RegexReplace() je vyhodnocena pouze v případě, že hodnota vybraného atributu uživatele pro parametr 1 odpovídá regulárnímu výrazu zadanému v textovém poli vzoru Regex. Pokud se neshodují, přidá se do tokenu výchozí hodnota deklarace identity. K ověření regulárního výrazu vůči hodnotě vstupního parametru je v okně transformace k dispozici testovací prostředí. Toto testovací prostředí funguje pouze na fiktivních hodnotách. Při použití více vstupních parametrů se název parametru přidá do výsledku testu místo skutečné hodnoty. Pokud chcete získat přístup k testovací části, vyberte Test transformace.

Následující obrázek ukazuje příklad testování transformací:

Screenshot of testing the transformation.

Následující tabulka obsahuje informace o testování transformací. Akce uvedené v tabulce odpovídají popiskům na předchozím obrázku.

Akce Pole Popis
1 Test transformation Výběrem tlačítka Zavřít nebo (X) skryjete testovací oddíl a znovu vykreslíte tlačítko Transformace testu v okně.
2 Test regex input Přijímá vstup, který se používá pro vyhodnocení testu regulárního výrazu. V případě, že je transformace deklarací identity založená na regulárních výrazech nakonfigurovaná jako transformace druhé úrovně, zadejte hodnotu, která je očekávaným výstupem první transformace.
3 Run test Po zadání vstupu testovacího regulárního výrazu a způsobu regulárního výrazu, vzor nahrazení a vstupní parametry lze výraz vyhodnotit výběrem příkazu Spustit test.
4 Test transformation result Pokud je vyhodnocení úspěšné, výstup transformace testu se vykreslí s popiskem výsledku transformace testu.
5 Remove transformation Druhou úroveň transformace lze odebrat výběrem možnosti Odebrat transformaci.
6 Specify output if no match Pokud je vstupní hodnota regulárního výrazu nakonfigurovaná pro parametr 1, který neodpovídá regulárnímu výrazu, transformace se přeskočí. V takových případech je možné nakonfigurovat alternativní atribut uživatele, který se přidá do tokenu deklarace identity zaškrtnutím políčka Zadat výstup, pokud se neshoduje.
7 Parameter 3 Pokud je potřeba vrátit alternativní atribut uživatele, pokud není žádná shoda, a zadat výstup, pokud není zaškrtnuto žádná shoda , lze pomocí rozevíracího seznamu vybrat alternativní atribut uživatele. Tento rozevírací seznam je k dispozici pro parametr 3 (výstup, pokud se neshoduje).
8 Summary V dolní části okna se zobrazí úplný souhrn formátu, který vysvětluje význam transformace v jednoduchém textu.
9 Add Jakmile se ověří nastavení konfigurace transformace, můžete ho uložit do zásad deklarací tak, že vyberete Přidat. Výběrem možnosti Uložit v okně Spravovat deklaraci identity uložte změny.

Transformace RegexReplace() je také k dispozici pro transformace deklarací identity skupin.

Ověření transformace RegexReplace()

Pokud po výběru možnosti Přidat nebo spustit test dojde k následujícím podmínkám, zobrazí se zpráva s dalšími informacemi o problému:

  • Vstupní parametry s duplicitními atributy uživatele nejsou povolené.
  • Byly nalezeny nepoužité vstupní parametry. Definované vstupní parametry by měly mít odpovídající použití v textu vzoru nahrazení.
  • Zadaný vstup regulárního výrazu testu neodpovídá zadanému regulárnímu výrazu.
  • Zdroj pro skupiny do vzoru nahrazení nebyl nalezen.

Přidání deklarace hlavního názvu uživatele (UPN) do tokenů SAML

Deklarace http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn identity je součástí sady deklarací identity s omezeným přístupem SAML. Pokud máte nakonfigurovaný vlastní podpisový klíč, můžete ho přidat v části Atributy a deklarace identity .

Pokud není nakonfigurovaný žádný vlastní podpisový klíč, projděte si sadu deklarací identity s omezeným přístupem SAML. Můžete ho přidat jako volitelnou deklaraci identity prostřednictvím Registrace aplikací na webu Azure Portal.

Otevřete aplikaci v Registrace aplikací, vyberte Konfigurace tokenu a pak vyberte Přidat volitelnou deklaraci identity. Vyberte typ tokenu SAML , ze seznamu zvolte hlavní název uživatele a potom kliknutím na přidat deklaraci identity do tokenu.

Přizpůsobení provedené v části Atributy a deklarace identity může přepsat volitelné deklarace identity v registraci aplikace.

Generování deklarací identity na základě podmínek

Zdroj deklarace identity můžete zadat na základě typu uživatele a skupiny, do které uživatel patří.

Typ uživatele může být následující:

  • Libovolná – Přístup k aplikaci mají všichni uživatelé.
  • Členové: Nativní člen tenanta
  • Všichni hosté: Uživatel se přenese z externí organizace s ID Microsoft Entra nebo bez.
  • Hosté Microsoft Entra: Uživatel typu host patří do jiné organizace pomocí ID Microsoft Entra.
  • Externí hosté: Uživatel typu host patří do externí organizace, která nemá ID Microsoft Entra.

Jedním ze scénářů, kdy je užitečný typ uživatele, je situace, kdy se zdroj deklarace identity liší pro hosta a zaměstnance, který přistupuje k aplikaci. Můžete zadat, že pokud je uživatel zaměstnancem, id jména je zdrojem z user.email. Pokud je uživatel hostem, je ID názvu zdrojové z user.extensionattribute1.

Přidání podmínky deklarace identity:

  1. V části Spravovat deklaraci identity rozbalte podmínky deklarace identity.
  2. Vyberte typ uživatele.
  3. Vyberte skupiny, do kterých má uživatel patřit. Pro danou aplikaci můžete vybrat až 50 jedinečných skupin pro všechny deklarace identity.
  4. Vyberte zdroj, ve kterém deklarace identity načte její hodnotu. Buď můžete vybrat atribut uživatele z rozevíracího seznamu pro zdrojový atribut, nebo použít transformaci na atribut uživatele. Před generováním jako deklarace identity můžete také vybrat rozšíření schématu adresáře (Preview).

Pořadí, ve kterém přidáte podmínky, jsou důležité. Microsoft Entra nejprve vyhodnotí všechny podmínky se zdrojem Attribute a pak vyhodnotí všechny podmínky se zdrojem Transformation a rozhodne, kterou hodnotu se má v deklaraci identity vygenerovat. Podmínky se stejným zdrojem se vyhodnocují shora dolů. Poslední hodnota, která odpovídá výrazu, se v deklaraci identity vygeneruje. Transformace, jako IsNotEmpty jsou omezení a Contains chovají se jako omezení.

Britta Simon je například uživatel typu host v tenantovi Contoso. Britta patří do jiné organizace, která používá také ID Microsoft Entra. Vzhledem k následující konfiguraci pro aplikaci Fabrikam se Britta pokusí přihlásit k Fabrikam, platforma Microsoft Identity Platform vyhodnotí podmínky.

Nejprve platforma Microsoft Identity Platform ověřuje, jestli je typ uživatele Britta Všichni hosté. Vzhledem k tomu, že typ je Všichni hosté, platforma Microsoft Identity Platform přiřadí zdroj deklarace identity .user.extensionattribute1 Za druhé platforma Microsoft Identity Platform ověřuje, jestli je typ uživatele Britta hosty Microsoft Entra. Vzhledem k tomu, že typ je Všichni hosté, platforma Microsoft Identity Platform přiřadí zdroj deklarace identity .user.mail Nakonec se deklarace identity vygeneruje s hodnotou user.mail pro Britta.

Jako další příklad zvažte, když se Britta Simon pokusí přihlásit a použije se následující konfigurace. Všechny podmínky jsou nejprve vyhodnoceny zdrojem Attribute. Vzhledem k tomu, že typ uživatele Britta je Microsoft Entra guests, user.mail je přiřazen jako zdroj deklarace identity. Dále se vyhodnocují transformace. Protože Britta je host, user.extensionattribute1 je teď novým zdrojem deklarace identity. Vzhledem k tomu, že Britta je v microsoft Entra guests, user.othermail je nyní zdrojem této deklarace identity. Nakonec se deklarace identity vygeneruje s hodnotou user.othermail pro Britta.

Jako poslední příklad zvažte, co se stane, když Britta nemá user.othermail nakonfigurovanou žádnou konfiguraci nebo je prázdná. V obou případech se položka podmínky ignoruje a deklarace se místo toho vrátí user.extensionattribute1 .

Pokročilé možnosti deklarací identity SAML

Rozšířené možnosti deklarací identity je možné nakonfigurovat pro aplikace SAML2.0 tak, aby zpřístupnily stejnou deklaraci identity tokenům OIDC a naopak pro aplikace, které mají v úmyslu použít stejnou deklaraci identity pro tokeny odpovědi SAML2.0 i OIDC.

Rozšířené možnosti deklarací identity je možné nakonfigurovat zaškrtnutím políčka v části Upřesnit možnosti deklarací identity SAML v okně Správa deklarací identity .

V následující tabulce jsou uvedeny další pokročilé možnosti, které je možné nakonfigurovat pro aplikaci.

Možnost Popis
Připojení ID aplikace k vystavitelovi Automaticky přidá ID aplikace k deklaraci identity vystavitele. Tato možnost zajišťuje jedinečnou hodnotu deklarace identity pro každou instanci, pokud existuje více instancí stejné aplikace. Toto nastavení se ignoruje, pokud pro aplikaci není nakonfigurovaný vlastní podpisový klíč.
Přepsání deklarace identity cílové skupiny Umožňuje přepsání deklarace identity cílové skupiny odeslané do aplikace. Zadaná hodnota musí být platným absolutním identifikátorem URI. Toto nastavení se ignoruje, pokud pro aplikaci není nakonfigurovaný vlastní podpisový klíč.
Zahrnout formát názvu atributu Pokud je vybráno, Microsoft Entra ID přidá atribut, NameFormat který popisuje formát názvu pro omezené, základní a volitelné deklarace identity pro aplikaci. Další informace najdete v tématu Typ zásad mapování deklarací identity.

Další kroky