Přizpůsobení deklarací identity pomocí vlastních zásad deklarací identity v Microsoft Graphu (Preview)
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. Přizpůsobení deklarací identity podporuje konfiguraci deklarací identity pro aplikace pomocí protokolů SAML, OAuth a OpenID Connect. Přizpůsobení deklarací identity můžete použít k:
- Vyberte, které deklarace identity jsou součástí tokenů.
- Vytvořte typy deklarací identity, které ještě neexistují.
- Zvolte nebo změňte zdroj dat vygenerovaných v konkrétních deklarací identity.
V tomto průvodci postupy probereme několik běžných scénářů, které vám pomůžou pochopit, jak používat vlastní zásady deklarací identity.
Požadavky
- Tenant Microsoft Entra.
- Podniková aplikace nakonfigurovaná v Centru pro správu Microsoft Entra.
- Pro uživatele PowerShellu si stáhněte nejnovější sadu Microsoft Graph PowerShell SDK. Tento krok je nepovinný.
Přizpůsobení deklarací identity v Microsoft Entra ID
Microsoft Entra ID podporuje dva způsoby přizpůsobení deklarací identity pomocí Microsoft Graphu nebo PowerShellu pro vaše aplikace:
V následujících příkladech vytvoříte, aktualizujete a nahradíte zásady pro instanční objekty. Vlastní zásady deklarací identity jsou vždy propojené s instančními objekty. Před vytvořením vlastních zásad deklarací identity pro aplikaci nebo instanční objekt se ujistěte, že jste podnikovou aplikaci nakonfigurovali jako součást požadavků.
Otevřete Microsoft Graph Explorer v prohlížeči, přihlaste se k Microsoft Graph Exploreru jako alespoň správce aplikace a zvolte jeden z následujících scénářů.
- 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í vlastní zásady deklarací identity byste měli nakonfigurovat aplikaci tak, aby potvrdila, že tokeny obsahují přizpůsobené deklarace identity. Další informace najdete v tématu Důležité informace o zabezpečení.
Vynechání základních deklarací identity z tokenů
V tomto příkladu vytvoříte vlastní zásadu deklarací identity, která odebere základní sadu deklarací identity z tokenů vystavených propojenému instančnímu objektu.
V Microsoft Graph Exploreru identifikujte aplikaci, pro kterou chcete nakonfigurovat vlastní zásady deklarací identity pro použití rozhraní API instančního objektu.
Vytvořte vlastní zásady deklarací identity spuštěním následujícího rozhraní API. Tato zásada propojená s instančním objektem vynechá základní deklarace identity z tokenů.
PUT https://graph.microsoft.com/beta/servicePrincipals/<servicePrincipal-id>/claimsPolicy
Text požadavku:
{ "includeBasicClaimSet": false }
Pokud chcete zobrazit novou zásadu, spusťte následující příkaz.
GET https://graph.microsoft.com/beta/servicePrincipals/<servicePrincipal-id>/claimsPolicy
Odpověď:
HTTP/1.1 200 OK Content-type: application/json { "@odata.context": "…", "id": "aaaaaaaa-bbbb-cccc-1111-222222222222.", "includeBasicClaimSet": false, "includeApplicationIdInIssuer": false, "audienceOverride": null, "groupFilter": null, "claims": [] }
EmployeeID
Zahrnutí deklarací identity a TenantCountry
jako deklarací identity do tokenů
V tomto příkladu vytvoříte přizpůsobení deklarací identity, které přidají EmployeeID
tokeny a TenantCountry
do tokenů. V tomto příkladu zahrneme také základní deklarace identity nastavené do tokenů.
V Microsoft Graph Exploreru identifikujte aplikaci, pro kterou chcete nakonfigurovat vlastní zásady deklarací identity pro použití rozhraní API instančního objektu.
Vytvořte vlastní zásady deklarací identity spuštěním následujícího rozhraní API. Tato zásada propojená s instančním objektem přidá deklarace Identity EmployeeID a TenantCountry do tokenů.
PUT https://graph.microsoft.com/beta/servicePrincipals/<servicePrincipal-id>/claimsPolicy
Text požadavku:
{ "includeBasicClaimSet": true, "claims": [ { "@odata.type": "#microsoft.graph.customClaim", "name": "employeeId", "namespace": null, "tokenFormat": [ "jwt" ], "samlAttributeNameFormat": null, "configurations": [ { "condition": null, "attribute": { "@odata.type": "#microsoft.graph.sourcedAttribute", "id": " employeeid", "source": "user", "isExtensionAttribute": false }, "transformations": [] } ] }, { "@odata.type": "#microsoft.graph.customClaim", "name": "country", "namespace": null, "tokenFormat": [ "jwt" ], "samlAttributeNameFormat": null, "configurations": [ { "condition": null, "attribute": { "@odata.type": "#microsoft.graph.sourcedAttribute", "id": " tenantcountry", "source": "user", "isExtensionAttribute": false }, "transformations": [] } ] } ] }
Pokud chcete zobrazit novou zásadu, spusťte následující příkaz:
GET https://graph.microsoft.com/beta/servicePrincipals/<servicePrincipal-id>/claimsPolicy
Odpověď:
{ "@odata.context": "…", "id": "aaaaaaaa-bbbb-cccc-1111-222222222222", "includeBasicClaimSet": true, "includeApplicationIdInIssuer": false, "audienceOverride": null, "groupFilter": null, "claims": [...] }
Použití transformace deklarací identity v tokenech
V tomto příkladu aktualizujete zásadu tak, aby 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.
V Microsoft Graph Exploreru identifikujte aplikaci, pro kterou chcete nakonfigurovat vlastní zásady deklarací identity pro použití rozhraní API instančního objektu.
Vytvořte vlastní zásady deklarací identity spuštěním následujícího rozhraní API. Tato zásada generuje vlastní deklaraci identity
JoinedData
do tokenů.PATCH https://graph.microsoft.com/beta/servicePrincipals/<servicePrincipal-id>/claimsPolicy
Text požadavku:
{ "includeBasicClaimSet": true, "claims": [ { "@odata.type": "#microsoft.graph.customClaim", "name": "JoinedData", "namespace": null, "tokenFormat": [ "jwt" ], "samlAttributeNameFormat": null, "configurations": [ { "condition": null, "attribute": null, "transformations": [ { "@odata.type": "#microsoft.graph.joinTransformation", "separator": "-", "input": { "treatAsMultiValue": false, "attribute": { "@odata.type": "#microsoft.graph.sourcedAttribute", "id": "extensionattribute1", "source": "user", "isExtensionAttribute": false } }, "input2": { "treatAsMultiValue": false, "attribute": { "@odata.type":"#microsoft.graph.valueBasedAttribute", "value": "ext" } } } ] } ] } ] }
Poznámka:
Vlastní zásady deklarací identity jsou zásady silného typu a každá transformace používá jinou
@odata.type
hodnotu.Pokud chcete zobrazit novou zásadu a získat ji
ObjectId
, spusťte následující příkaz:GET https://graph.microsoft.com/beta/servicePrincipals/<servicePrincipal-id>/claimsPolicy
Odpověď:
{ "@odata.context": "…", "id": "aaaaaaaa-bbbb-cccc-1111-222222222222", "includeBasicClaimSet": true, "includeApplicationIdInIssuer": false, "audienceOverride": null, "groupFilter": null, "claims": [...] }
Související obsah
- Další informace o rozdílech mezi zásadami v přizpůsobení deklarací identity pomocí zásad
- Přihlášení identit v Microsoft Graphu