Přizpůsobení deklarací identity pomocí zásad mapování deklarací identity a PowerShellu
Deklarace identity je informace, které zprostředkovatel identity uvádí o uživateli uvnitř tokenu, který pro daného uživatele vydává. Vlastní nastavení deklarací identity používají správci tenanta k přizpůsobení deklarací identity v tokenech pro konkrétní aplikaci ve svém tenantovi. Zásady mapování deklarací identity můžete použít k:
- vyberte, které deklarace identity jsou zahrnuty do tokenů.
- vytvořit typy deklarací identity, které ještě neexistují.
- zvolte nebo změňte zdroj dat vygenerovaných v konkrétních deklarací identity.
Přizpůsobení deklarací identity podporuje konfiguraci zásad mapování deklarací identity pro protokoly SAML, OAuth a OpenID Connect.
Poznámka:
Zásady mapování deklarací identity nahrazují jak vlastní zásady deklarací identity, tak i vlastní nastavení deklarací, které nabízí centrum pro správu Microsoft Entra. Přizpůsobení deklarací identity pro aplikaci pomocí zásad mapování deklarací identity znamená, že tokeny vydané pro danou aplikaci budou ignorovat konfiguraci ve vlastních zásadách deklarací identity nebo konfiguraci v okně přizpůsobení deklarací identity v Centru pro správu Microsoft Entra.
Požadavky
- Přečtěte si, jak získat tenanta Microsoft Entra.
- Stáhněte si nejnovější sadu Microsoft Graph PowerShell SDK.
Začínáme
V následujících příkladech vytvoříte, aktualizujete, propočítáte a odstraníte zásady pro instanční objekty. Zásady mapování deklarací identity je možné přiřadit pouze k objektům instančního objektu.
Při vytváření zásad mapování deklarací identity můžete v tokenech také vygenerovat deklaraci identity z atributu rozšíření adresáře. Použije ExtensionID
se pro atribut rozšíření místo ID v elementu ClaimsSchema
. Další informace o atributech rozšíření najdete v tématu Použití atributů rozšíření adresáře.
Poznámka:
Sada Microsoft Graph PowerShell SDK je nutná ke konfiguraci zásad mapování deklarací identity.
Otevřete terminál a spuštěním následujícího příkazu se přihlaste ke svému účtu správce Microsoft Entra. Tento příkaz spusťte pokaždé, když spustíte novou relaci.
Import-Module Microsoft.Graph.Identity.SignIns
Connect-MgGraph -Scopes "Policy.ReadWrite.ApplicationConfiguration", "Policy.Read.All"
Teď můžete vytvořit zásadu mapování deklarací identity a přiřadit ji instančnímu objektu. Běžné scénáře najdete v následujících příkladech:
- Vynechání základních deklarací identity z tokenů
- Do tokenů zahrňte ID zaměstnance a TenantCountry jako deklarace identity.
- Použití transformace deklarací identity v tokenech
Po vytvoření zásady mapování deklarací identity nakonfigurujte aplikaci tak, aby potvrdila, že tokeny budou obsahovat přizpůsobené deklarace identity. Další informace najdete v důležitých informacích o zabezpečení.
Vynechání základních deklarací identity z tokenů
V tomto příkladu vytvoříte zásadu, která odebere základní sadu deklarací identity z tokenů vydaných pro propojené instanční objekty.
Vytvořte zásadu mapování deklarací identity. Tato zásada propojená s konkrétními instančními objekty odebere základní sadu deklarací identity z tokenů.
Pomocí otevřeného terminálu vytvořte zásadu spuštěním následujícího příkazu:
New-MgPolicyClaimMappingPolicy -Definition @('{"ClaimsMappingPolicy":{"Version":1,"IncludeBasicClaimSet":"false"}}') -DisplayName "OmitBasicClaims"
Pokud chcete zobrazit novou zásadu a získat ji
ObjectId
, spusťte následující příkaz:Get-MgPolicyClaimMappingPolicy Definition DeletedDateTime Description DisplayName Id ---------- --------------- ----------- ----------- -- {"ClaimsMappingPolicy":{..}} OmitBasicClaims 36d1aa10-f9ac...
EmployeeID
Zahrnutí deklarací identity a TenantCountry
jako deklarací identity do tokenů
V tomto příkladu vytvoříte zásadu, která přidá EmployeeID
tokeny vydané pro propojené instanční objekty a TenantCountry
do tokenů. Id zaměstnance se v tokenech SAML i JWT vygeneruje jako typ deklarace identity názvu. TenantCountry se v tokenech SAML i JWT vygeneruje jako typ deklarace identity země/oblasti. V tomto příkladu budeme i nadále zahrnovat základní deklarace identity nastavené do tokenů.
Vytvořte zásadu mapování deklarací identity. Tato zásada propojená s konkrétními instančními objekty přidá deklarace Identity EmployeeID a TenantCountry do tokenů.
Pokud chcete vytvořit zásadu, spusťte v terminálu následující příkaz:
New-MgPolicyClaimMappingPolicy -Definition @('{"ClaimsMappingPolicy":{"Version":1,"IncludeBasicClaimSet":"true", "ClaimsSchema": [{"Source":"user","ID":"employeeid","SamlClaimType":"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/employeeid","JwtClaimType":"employeeid"},{"Source":"company","ID":"tenantcountry","SamlClaimType":"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/country","JwtClaimType":"country"}]}}') -DisplayName "ExtraClaimsExample"
Pokud chcete zobrazit novou zásadu a získat ji
ObjectId
, spusťte následující příkaz:Get-MgPolicyClaimMappingPolicy
Použití transformace deklarací identity v tokenech
V tomto příkladu vytvoříte zásadu, která vygeneruje vlastní deklaraci identity JoinData pro JWT vydané propojenými instančními objekty. Tato deklarace identity obsahuje hodnotu vytvořenou spojením dat uložených v atributu extensionattribute1 u objektu uživatele s "-ext". V tomto příkladu vyloučíme základní deklarace identity nastavené v tokenech.
Vytvořte zásadu mapování deklarací identity. Tato zásada propojená s konkrétními instančními objekty generuje vlastní deklaraci identity
JoinedData
do tokenů.Pokud chcete zásadu vytvořit, spusťte následující příkaz:
New-MgPolicyClaimMappingPolicy -Definition @('{"ClaimsMappingPolicy":{"Version":1,"IncludeBasicClaimSet":"true", "ClaimsSchema":[{"Source":"user","ID":"extensionattribute1"},{"Source":"transformation","ID":"DataJoin","TransformationId":"JoinTheData","JwtClaimType":"JoinedData"}],"ClaimsTransformations":[{"ID":"JoinTheData","TransformationMethod":"Join","InputClaims":[{"ClaimTypeReferenceId":"extensionattribute1","TransformationClaimType":"string1"}], "InputParameters": [{"ID":"string2","Value":"ext"},{"ID":"separator","Value":"-"}],"OutputClaims":[{"ClaimTypeReferenceId":"DataJoin","TransformationClaimType":"outputClaim"}]}]}}') -DisplayName "TransformClaimsExample"
Pokud chcete zobrazit novou zásadu a získat ji
ObjectId
, spusťte následující příkaz:Get-MgPolicyClaimMappingPolicy
Přiřazení zásad mapování deklarací identity k instančnímu objektu
Pokud chcete zásadu přiřadit instančnímu objektu, budete potřebovat ObjectId
zásady mapování deklarací identity a objectId
instanční objekt, ke kterému musí být zásady přiřazeny.
Pokud chcete zobrazit všechny instanční objekty vaší organizace, můžete se dotazovat na rozhraní Microsoft Graph API nebo je zkontrolovat v Microsoft Graph Exploreru.
Pokud chcete zobrazit všechny zásady mapování deklarací identity ve vašem tenantovi a získat zásady
ObjectId
, spusťte následující příkaz:Get-MgPolicyClaimMappingPolicy
Pokud máte
ObjectId
zásady mapování deklarací identity a instanční objekt, spusťte následující příkaz:New-MgServicePrincipalClaimMappingPolicyByRef -ServicePrincipalId <servicePrincipalId> -BodyParameter @{"@odata.id" = "https://graph.microsoft.com/v1.0/policies/claimsMappingPolicies/<claimsMappingPolicyId>"}