Konfigurace deklarací identity skupin pro aplikace pomocí ID Microsoft Entra
Microsoft Entra ID může poskytnout informace o členství uživatele ve skupinách v tokenech pro použití v aplikacích. Tato funkce podporuje tři hlavní vzory:
- Skupiny identifikované pomocí atributu Microsoft Entra object identifier (OID)
- Skupiny identifikované atributem nebo
GroupSID
skupinami synchronizovanými službousAMAccountName
Active Directory - Skupiny identifikované atributem Zobrazovaný název pro skupiny pouze v cloudu
Důležité
Počet skupin vygenerovaných v tokenu je omezený na 150 pro kontrolní výrazy SAML a 200 pro JWT, včetně vnořených skupin. Ve větších organizacích může počet skupin, ve kterých je uživatel členem, překročit limit, který platí pro MICROSOFT Entra ID před generováním deklarací identity skupin v tokenu. Překročení tohoto limitu způsobí, že MICROSOFT Entra ID zcela vynechá odesílání deklarací identity skupiny v tokenu. Alternativní řešení těchto omezení najdete v důležitých upozorněních pro tuto funkci.
Důležité upozornění pro tuto funkci
Podpora použití atributů identifikátorů
sAMAccountName
zabezpečení (SID) synchronizovaných z místního prostředí je navržená tak, aby umožňovala přesun stávajících aplikací z Active Directory Federation Services (AD FS) (AD FS) a dalších zprostředkovatelů identity. Skupiny spravované v MICROSOFT Entra ID neobsahují atributy potřebné k generování těchto deklarací identity.Abyste se vyhnuli limitu počtu skupin, pokud uživatelé mají velký počet členství ve skupinách, můžete omezit skupiny vygenerované v deklarací identity na příslušné skupiny pro aplikaci. Přečtěte si další informace o generování skupin přiřazených k aplikaci pro tokeny JWT a tokeny SAML. Pokud přiřazení skupin k aplikacím není možné, můžete také nakonfigurovat filtr skupiny, abyste snížili počet skupin vygenerovaných v deklaraci identity. Filtrování skupin se vztahuje na tokeny vygenerované pro aplikace, ve kterých byly deklarace identity skupin a filtrování nakonfigurované v okně Podnikové aplikace na portálu. Mějte na paměti, že ve větších organizacích může počet skupin, ve kterých je uživatel členem, překročit limit, který platí pro Microsoft Entra ID před generováním deklarací identity skupin v tokenu. Překročení tohoto limitu způsobí, že MICROSOFT Entra ID zcela vynechá odesílání deklarací identity skupiny v tokenu.
Deklarace identity skupin mají limit pěti skupin, pokud je token vystavený prostřednictvím implicitního toku. Tokeny požadované prostřednictvím implicitního toku budou mít
"hasgroups":true
deklaraci identity pouze v případě, že je uživatel ve více než pěti skupinách.Doporučujeme místo skupin založit autorizaci v aplikaci na rolích aplikací:
- Vyvíjíte novou aplikaci nebo pro ni můžete nakonfigurovat existující aplikaci.
- Podpora vnořených skupin se nevyžaduje.
Použití aplikačních rolí omezuje množství informací, které je potřeba do tokenu přejít, je bezpečnější a odděluje přiřazení uživatelů od konfigurace aplikace.
Deklarace identity skupin pro aplikace migrující ze služby AD FS a dalších zprostředkovatelů identity
Mnoho aplikací, které jsou nakonfigurované pro ověřování pomocí služby AD FS, závisí na informacích o členství ve skupinách ve formě atributů skupiny služby Active Directory systému Windows Server. Tyto atributy jsou skupina sAMAccountName
, která může být kvalifikovaná podle názvu domény nebo identifikátoru zabezpečení skupiny Systému Windows (GroupSID
). Když je aplikace federovaná se službou AD FS, služba AD FS použije TokenGroups
funkci k načtení členství ve skupinách pro uživatele.
Aplikace přesunutá ze služby AD FS potřebuje deklarace identity ve stejném formátu. Deklarace identity skupin a rolí generované z ID Microsoft Entra mohou obsahovat atribut kvalifikovaný sAMAccountName
pro doménu nebo GroupSID
atribut synchronizovaný ze služby Active Directory, a ne atribut Microsoft Entra ID objectID
skupiny.
Podporované formáty deklarací identity skupin jsou:
- Microsoft Entra group ObjectId: K dispozici pro všechny skupiny.
- sAMAccountName: K dispozici pro skupiny synchronizované ze služby Active Directory.
- NetbiosDomain\sAMAccountName: K dispozici pro skupiny synchronizované ze služby Active Directory.
- DNSDomainName\sAMAccountName: K dispozici pro skupiny synchronizované ze služby Active Directory.
- Identifikátor zabezpečení místní skupiny: K dispozici pro skupiny synchronizované ze služby Active Directory.
Poznámka:
sAMAccountName
a místní GroupSID
atributy jsou k dispozici pouze u objektů skupiny synchronizovaných ze služby Active Directory. Nejsou dostupné u skupin vytvořených v Microsoft Entra ID nebo Office 365. Aplikace nakonfigurované v Microsoft Entra ID pro získání synchronizovaných atributů místní skupiny je získají pouze pro synchronizované skupiny.
Možnosti pro aplikace pro využívání informací o skupině
Aplikace můžou volat koncový bod skupiny Microsoft Graphu, aby získaly informace o skupině ověřeného uživatele. Toto volání zajišťuje, že jsou k dispozici všechny skupiny, ve kterých je uživatel členem, i když je zapojen velký počet skupin. Výčet skupin je pak nezávislý na omezení velikosti tokenu.
Pokud ale existující aplikace očekává, že bude využívat informace o skupině prostřednictvím deklarací identity, můžete nakonfigurovat ID Microsoft Entra s různými formáty deklarací identity. Zvažte následující možnosti:
Pokud používáte členství ve skupinách pro autorizaci v aplikaci, je vhodnější použít atribut skupiny
ObjectID
. Atribut skupinyObjectID
je neměnný a jedinečný v MICROSOFT Entra ID. Je k dispozici pro všechny skupiny.Pokud k autorizaci používáte atribut místní skupiny
sAMAccountName
, použijte názvy kvalifikované pro doménu. Snižuje šanci na kolidování jmen.sAMAccountName
může být jedinečný v rámci domény služby Active Directory, ale pokud je více než jedna doména Active Directory synchronizována s tenantem Microsoft Entra, existuje možnost, že více než jedna skupina bude mít stejný název.Zvažte použití aplikačních rolí k zajištění vrstvy nepřímého rozdělení mezi členstvím ve skupině a aplikací. Aplikace pak provádí interní rozhodnutí o autorizaci na základě deklarací rolí v tokenu.
Pokud je aplikace nakonfigurovaná tak, aby získala atributy skupiny synchronizované ze služby Active Directory a skupina tyto atributy neobsahuje, nebudou zahrnuty do deklarací identity.
Deklarace identity skupin v tokenech zahrnují vnořené skupiny s výjimkou případů, kdy používáte možnost omezit deklarace identity skupiny na skupiny přiřazené k aplikaci.
Pokud je uživatel členem skupiny GroupB a SkupinaB je členem skupiny A, pak deklarace identity skupiny pro uživatele budou obsahovat skupinu GroupA i GroupB. Pokud uživatelé organizace mají velký počet členství ve skupinách, může počet skupin uvedených v tokenu zvětšit velikost tokenu. Microsoft Entra ID omezuje počet skupin, které bude generovat v tokenu na 150 pro kontrolní výrazy SAML a 200 pro JWT. Pokud je uživatel členem většího počtu skupin, skupiny se vynechá. Místo toho je k dispozici odkaz na koncový bod Microsoft Graphu pro získání informací o skupině.
Předpoklady pro použití atributů skupiny synchronizovaných ze služby Active Directory
Deklarace identity členství ve skupinách se dají generovat v tokenech pro libovolnou skupinu, pokud použijete ObjectId
formát. Chcete-li používat deklarace identity skupin v jiných formátech než skupina ObjectId
, musí být skupiny synchronizovány ze služby Active Directory prostřednictvím služby Microsoft Entra Connect.
Konfigurace ID Microsoft Entra tak, aby vygenerovávala názvy skupin pro skupiny služby Active Directory:
Synchronizace názvů skupin ze služby Active Directory
Než může ID Microsoft Entra vygenerovat názvy skupin nebo identifikátor SID místní skupiny ve skupině nebo deklarací identity rolí, musíte synchronizovat požadované atributy ze služby Active Directory. Musíte používat Microsoft Entra Connect verze 1.2.70 nebo novější. Starší verze služby Microsoft Entra Connect než 1.2.70 synchronizují objekty skupiny ze služby Active Directory, ale nebudou obsahovat požadované atributy názvu skupiny.
Nakonfigurujte registraci aplikace v ID Microsoft Entra tak, aby zahrnovala deklarace identity skupin do tokenů.
Deklarace identity skupin můžete nakonfigurovat v části Podnikové aplikace portálu nebo pomocí manifestu aplikace v části Registrace aplikací. Informace o konfiguraci deklarací identity skupin v manifestu aplikace naleznete v části Konfigurace registrace aplikace Microsoft Entra pro atributy skupiny dále v tomto článku.
Přidání deklarací identity skupin do tokenů pro aplikace SAML pomocí konfigurace jednotného přihlašování
Konfigurace deklarací identity skupin pro galerii nebo aplikaci SAML mimo galerii prostřednictvím jednotného přihlašování:
Otevřete podnikové aplikace, vyberte aplikaci v seznamu, vyberte Jednotné přihlašování konfiguraci a pak vyberte Atributy a deklarace identity uživatele.
Vyberte Přidat deklaraci identity skupiny.
Pomocí možností vyberte, které skupiny mají být zahrnuty do tokenu.
Výběr Popis Všechny skupiny Generuje skupiny zabezpečení a distribuční seznamy a role. Skupiny zabezpečení Generuje skupiny zabezpečení, které je uživatel členem deklarace identity skupin. Pokud má uživatel přiřazené role adresáře, vygeneruje se jako ID objektu. Role adresáře Pokud má uživatel přiřazené role adresáře, vygeneruje se jako wids
deklarace identity. (Deklarace identity skupiny se nevygeneruje.)Skupiny přiřazené k aplikaci Generuje pouze skupiny, které jsou explicitně přiřazeny k aplikaci a že uživatel je členem. Doporučuje se pro velké organizace kvůli limitu počtu skupin v tokenu. Pokud například chcete vygenerovat všechny skupiny zabezpečení, ve které je uživatel členem, vyberte skupiny zabezpečení.
Pokud chcete generovat skupiny pomocí atributů služby Active Directory synchronizovaných ze služby Active Directory místo atributů Microsoft Entra ID
objectID
, vyberte požadovaný formát z rozevíracího seznamu Zdrojový atribut . Do deklarací identity budou zahrnuty pouze skupiny synchronizované ze služby Active Directory.Pokud chcete generovat pouze skupiny přiřazené k aplikaci, vyberte Skupiny přiřazené k aplikaci.
Do tokenu se zahrnou skupiny přiřazené k aplikaci. Ostatní skupiny, pro které je uživatel členem, budou vynechány. U této možnosti nejsou zahrnuté vnořené skupiny a uživatel musí být přímým členem skupiny přiřazené k aplikaci.
Pokud chcete změnit skupiny přiřazené k aplikaci, vyberte aplikaci ze seznamu Podnikové aplikace . V levé nabídce aplikace vyberte Uživatelé a skupiny .
Další informace o správě přiřazení skupin k aplikacím najdete v tématu Přiřazení uživatele nebo skupiny k podnikové aplikaci.
Generování zobrazovaného názvu skupiny jen pro cloud v tokenu
Můžete nakonfigurovat deklaraci identity skupiny tak, aby zahrnovala zobrazovaný název skupiny pouze pro skupiny v cloudu.
Otevřete podnikové aplikace, vyberte aplikaci v seznamu, vyberte Jednotné přihlašování konfiguraci a pak vyberte Atributy a deklarace identity uživatele.
Pokud už máte nakonfigurované deklarace identity skupin, vyberte je v části Další deklarace identity . V opačném případě můžete přidat deklaraci identity skupiny, jak je popsáno v předchozích krocích.
Pro typ skupiny vygenerované v tokenu vyberte Skupiny přiřazené k aplikaci:
Pokud chcete generovat zobrazovaný název skupiny jenom pro cloudové skupiny, vyberte v rozevíracím seznamu Zdrojový atribut zobrazované názvy skupin jen pro cloud:
Pokud chcete v případě hybridního nastavení vygenerovat atribut místní skupiny pro synchronizované skupiny a zobrazovaný název pro cloudové skupiny, můžete vybrat požadovaný atribut místních zdrojů a zaškrtnout políčko Generovat název skupiny pouze pro skupiny cloudu:
Poznámka:
Názvy přiřazených skupin v cloudu můžete přidat jenom do aplikace. Omezení groups assigned to the application
spočívá v tom, že název skupiny není jedinečný a zobrazované názvy se dají vygenerovat jenom pro skupiny, které jsou explicitně přiřazené aplikaci, aby se snížila rizika zabezpečení. Jinak by každý uživatel mohl vytvořit skupinu s duplicitním názvem a získat přístup na straně aplikace.
Nastavení pokročilých možností
Přizpůsobení názvu deklarace identity skupiny
Způsob, jakým se deklarace identity skupin generují, můžete upravit pomocí nastavení v části Upřesnit možnosti.
Pokud vyberete Možnost Přizpůsobit název deklarace identity skupiny, můžete pro deklarace skupin zadat jiný typ deklarace identity. Do pole Název zadejte typ deklarace identity a volitelný obor názvů deklarace identity do pole Obor názvů.
Některé aplikace vyžadují, aby se informace o členství ve skupině zobrazovaly v deklaraci identity role. Volitelně můžete skupiny uživatele generovat jako role zaškrtnutím políčka Generovat skupiny jako deklarace identity rolí.
Poznámka:
Pokud použijete možnost generovat data skupiny jako role, zobrazí se v deklaraci identity role pouze skupiny. V deklaraci identity role se nezobrazí všechny role aplikace, ke kterým je uživatel přiřazený.
Filtrování skupin
Filtrování skupin umožňuje jemně řídit seznam skupin, které jsou součástí deklarace identity skupiny. Pokud je filtr nakonfigurovaný, budou do deklarace identity skupiny odeslané do této aplikace zahrnuty pouze skupiny, které odpovídají filtru. Filtr se použije pro všechny skupiny bez ohledu na hierarchii skupin.
Poznámka:
Filtrování skupin se vztahuje na tokeny vygenerované pro aplikace, ve kterých se na portálu nakonfigurovaly deklarace identity skupin a filtrování.
Filtrování skupin se nevztahuje na role Microsoft Entra.
Filtry můžete nakonfigurovat tak, aby se použily na zobrazovaný název nebo SAMAccountName
atribut skupiny. Podporují se následující operace filtrování:
- Předpona: Odpovídá začátku vybraného atributu.
- Přípona: Odpovídá konci vybraného atributu.
- Obsahuje: Odpovídá libovolnému umístění ve vybraném atributu.
Transformace skupiny
Některé aplikace mohou vyžadovat skupiny v jiném formátu, než jak jsou reprezentovány v MICROSOFT Entra ID. Pokud chcete tento požadavek podporovat, můžete u každé skupiny, která se v deklaraci identity skupiny vygeneruje, použít transformaci. Dosáhnete toho tak, že povolíte konfiguraci regulárního výrazu (regex) a náhradní hodnotu pro deklarace identity vlastní skupiny.
\
- Vzor regulárního výrazu: Pomocí regulárního výrazu parsujte textové řetězce podle vzoru, který jste v tomto poli nastavili. Pokud se vzor regulárního výrazu, který nastíníte, vyhodnotí jako
true
, spustí se vzor nahrazení regulárních výrazů. - Vzor nahrazení regulárních výrazů: Osnova v zápisu regulárních výrazů, jak chcete nahradit řetězec, pokud se vzor regulárního výrazu, který jste popsali, vyhodnotí jako
true
. Skupiny zachycení použijte ke shodě dílčích výrazů v tomto náhradním regulárním výrazu.
Další informace o nahrazení a zachycení skupin regulárních výrazů naleznete v tématu Model objektu regulárního výrazu: Zachycená skupina.
Poznámka:
Jak je popsáno v dokumentaci k Microsoft Entra, nemůžete upravit omezenou deklaraci identity pomocí zásad. Zdroj dat nejde změnit a při generování těchto deklarací identity se nepoužije žádná transformace. Deklarace identity skupiny je stále omezená, takže skupiny je potřeba přizpůsobit změnou názvu. Pokud pro název deklarace identity vlastní skupiny vyberete omezený název, bude deklarace za běhu ignorována.
Funkci transformace regulárních výrazů můžete použít také jako filtr, protože všechny skupiny, které neodpovídají vzoru regulárních výrazů, se ve výsledné deklaraci identity nevygenerují.
Pokud transformace použitá na původní deklaraci identity skupin způsobí novou vlastní deklaraci identity, původní deklarace skupiny se z tokenu vynechá. Pokud však nakonfigurovaný regulární výraz neodpovídá žádné hodnotě v původním seznamu, vlastní deklarace identity nebude k dispozici a původní deklarace identity skupin bude zahrnuta do tokenu.
Úprava konfigurace deklarace identity skupiny
Po přidání konfigurace deklarace identity skupiny do konfigurace Atributů a deklarací identity uživatele nebude možnost přidat deklaraci identity skupiny nedostupná. Pokud chcete změnit konfiguraci deklarace identity skupiny, vyberte deklaraci identity skupiny v seznamu Dalších deklarací identity .
Konfigurace registrace aplikace Microsoft Entra pro atributy skupiny
Můžete také nakonfigurovat deklarace identity skupiny v volitelné části deklarací identity manifestu aplikace.
Na portálu vyberte Identity>Applications> Registrace aplikací> Select Application>Manifest.
Povolení deklarací členství ve skupinách změnou
groupMembershipClaims
.Platné hodnoty jsou:
Výběr Popis All
Generuje skupiny zabezpečení, distribuční seznamy a role. SecurityGroup
Generuje skupiny zabezpečení a role Microsoft Entra, které je uživatel členem deklarace identity skupiny. DirectoryRole
Pokud má uživatel přiřazené role adresáře, vygeneruje se jako wids
deklarace identity. (Deklarace identity skupiny se nevygeneruje.)ApplicationGroup
Generuje pouze skupiny, které jsou explicitně přiřazeny k aplikaci a že uživatel je členem. None
Nejsou vráceny žádné skupiny. (Nerozlišuje se malá a velká písmena, takže none
také funguje. Dá se nastavit přímo v manifestu aplikace.)Příklad:
"groupMembershipClaims": "SecurityGroup"
Ve výchozím nastavení se atributy skupiny
ObjectID
vygenerují v hodnotě deklarace identity skupiny. Chcete-li upravit hodnotu deklarace identity tak, aby obsahovala atributy místní skupiny nebo změnit typ deklarace identity na roli, použijteoptionalClaims
konfiguraci popsanou v dalším kroku.Nastavte volitelné deklarace identity pro konfiguraci názvu skupiny.
Pokud chcete, aby skupiny v tokenu obsahovaly atributy skupiny místní Active Directory, určete, které deklarace identity typu tokenu by se měla v oddílu
optionalClaims
použít. Můžete uvést více typů tokenů:idToken
pro token ID OIDCaccessToken
pro přístupový token OAuth/OIDCSaml2Token
pro tokeny SAML
Poznámka:
Typ
Saml2Token
se vztahuje na tokeny ve formátu SAML1.1 i SAML2.0.Pro každý relevantní typ tokenu upravte deklaraci identity skupiny tak, aby používala
optionalClaims
oddíl v manifestu. SchémaoptionalClaims
je následující:{ "name": "groups", "source": null, "essential": false, "additionalProperties": [] }
Volitelné schéma deklarací identity Hodnota name
Musí být "groups"
.source
Nepoužívá se. Vynechat nebo zadat null
.essential
Nepoužívá se. Vynechat nebo zadat false
.additionalProperties
Seznam dalších vlastností Platné možnosti jsou "sam_account_name"
, ,"netbios_domain_and_sam_account_name"
"dns_domain_and_sam_account_name"
,"cloud_displayname"
a"emit_as_roles"
.V
additionalProperties
, pouze jeden z"sam_account_name"
,"dns_domain_and_sam_account_name"
nebo"netbios_domain_and_sam_account_name"
je požadován. Pokud existuje více než jeden, použije se první a ostatní se ignorují.Některé aplikace vyžadují informace o skupině o uživateli v deklaraci identity role. Pokud chcete změnit typ deklarace identity ze skupiny na deklaraci identity role, přidejte
"emit_as_roles"
do dalších vlastností. Hodnoty skupiny budou generovány v deklaraci identity role.Chcete-li generovat zobrazovaný název skupiny pouze pro cloud, můžete přidat
"cloud_displayname"
doadditional properties
. Tato možnost bude fungovat pouze v případě, že“groupMembershipClaims”
je nastavená možnostApplicationGroup
Poznámka:
Pokud použijete
"emit_as_roles"
, všechny nakonfigurované aplikační role, ke kterým je uživatel přiřazený, se v deklaraci identity role nezobrazí.
Příklady
Vygenerování skupin jako názvů skupin v přístupových tokenech OAuth ve DNSDomainName\sAMAccountName
formátu:
"optionalClaims": {
"accessToken": [{
"name": "groups",
"additionalProperties": ["dns_domain_and_sam_account_name"]
}]
}
Vygenerujte názvy skupin, které se mají vrátit ve NetbiosDomain\sAMAccountName
formátu jako deklarace identity role v tokenech SAML a OIDC ID:
"optionalClaims": {
"saml2Token": [{
"name": "groups",
"additionalProperties": ["netbios_domain_and_sam_account_name", "emit_as_roles"]
}],
"idToken": [{
"name": "groups",
"additionalProperties": ["netbios_domain_and_sam_account_name", "emit_as_roles"]
}]
}