首页 > 解决方案 > azure ad b2c 自定义策略 - 如何在声明中获取用户对象 ID 和电子邮件?

问题描述

通过此处的说明https://docs.microsoft.com/en-us/azure/active-directory-b2c/custom-policy-get-started?tabs=app-reg-preview创建自定义策略以使用本地帐户注册/登录。但是令牌中缺少用户对象 ID 和电子邮件地址。关于如何获得这些索赔的任何想法?

标签: azure-ad-b2c

解决方案


sub是用户对象 ID,signInName是电子邮件。

在此处输入图像描述

这是OutputClaims

<OutputClaims>
        <OutputClaim ClaimTypeReferenceId="displayName" />
        <OutputClaim ClaimTypeReferenceId="givenName" />
        <OutputClaim ClaimTypeReferenceId="surname" />
        <OutputClaim ClaimTypeReferenceId="email" />
        <OutputClaim ClaimTypeReferenceId="signInName" DefaultValue="" />
        <OutputClaim ClaimTypeReferenceId="objectId" PartnerClaimType="sub"/>
        <OutputClaim ClaimTypeReferenceId="tenantId" AlwaysUseDefaultValue="true" DefaultValue="{Policy:TenantObjectId}" />

      </OutputClaims>

推荐阅读