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

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:

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.

  1. 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ů.

  2. 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"
    
  3. 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ů.

  1. 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ů.

  2. 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"
    
  3. 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.

  1. 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ů.

  2. 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"
    
  3. 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.

  1. 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.

  2. 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
    
  3. 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>"}