如何在Azure AD B2C自定义策略的JWT令牌中包含EmployeeId声明?
把Azure AD B2C的Employee Id放进JWT令牌的方法
虽然官方文档的用户配置属性列表里没列Employee Id,但它其实是Azure AD B2C支持的内置目录属性,只要通过自定义策略做以下几步配置,就能把它加到身份验证令牌里:
1. 声明
employeeId属性
在自定义策略的<ClaimsSchema>节点下添加这段配置,定义该属性的基本信息:<ClaimType Id="employeeId"> <DisplayName>Employee Id</DisplayName> <DataType>string</DataType> <UserHelpText>企业内部员工编号</UserHelpText> <UserInputType>TextBox</UserInputType> </ClaimType>2. 从用户目录读取该属性
找到负责读取用户数据的技术配置文件(通常是AAD-UserReadUsingObjectId),添加输出声明映射,把目录里的employeeId属性绑定到我们定义的声明:<OutputClaim ClaimTypeReferenceId="employeeId" PartnerClaimType="employeeId" />3. 让令牌包含该声明
在颁发JWT的技术配置文件(一般是JwtIssuer)里,加入这个输出声明,确保它被写入令牌:<OutputClaim ClaimTypeReferenceId="employeeId" />4. 在依赖方策略中指定输出
最后在<RelyingParty>节点的<OutputClaims>里添加该声明,保证它最终出现在发给应用的令牌中:<OutputClaim ClaimTypeReferenceId="employeeId" />
内容的提问来源于stack exchange,提问作者Dazfl
相关产品推荐
相关产品推荐

