You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何移除Azure AD B2C ID令牌中自定义属性的extension前缀?

如何移除Azure AD B2C ID令牌中自定义属性的"extension"前缀?

是的,通过自定义策略可以实现这个需求,核心思路是利用**声明转换(Claims Transformation)**将带前缀的自定义属性值复制到新的声明中,然后在ID令牌里输出这个新声明。具体步骤如下:

1. 定义新的目标声明

在自定义策略的<ClaimsSchema>节点下,添加一个和原自定义属性类型一致的新声明,比如要把extension_sampledata改成sampledata,就添加:

<ClaimType Id="sampledata">
  <DisplayName>Sample Data</DisplayName>
  <DataType>string</DataType> <!-- 类型需和extension_sampledata保持一致,比如string、boolean等 -->
</ClaimType>

2. 添加声明转换规则

在<ClaimsTransformations>节点下,添加复制声明值的转换规则,把原属性的值赋值给新声明:

<ClaimsTransformation Id="CopyExtensionSampledataToSampledata" TransformationMethod="CopyClaim">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="extension_sampledata" TransformationClaimType="inputClaim" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="sampledata" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>

3. 在用户旅程的技术配置文件中应用转换

找到读取用户属性的技术配置文件(比如AAD-UserReadUsingObjectId或自定义读取配置文件),在<OutputClaimsTransformations>节点下添加上述转换规则,确保获取到extension_sampledata后执行转换:

<TechnicalProfile Id="AAD-UserReadUsingObjectId">
  <!-- 原有配置保持不变 -->
  <OutputClaimsTransformations>
    <OutputClaimsTransformation ReferenceId="CopyExtensionSampledataToSampledata" />
  </OutputClaimsTransformations>
</TechnicalProfile>

4. 在RelyingParty中输出新声明

最后,在<RelyingParty>节点的<OutputClaims>里,移除原来的extension_sampledata,添加新的sampledata声明:

<RelyingParty>
  <DefaultUserJourney ReferenceId="SignUpOrSignIn" />
  <TechnicalProfile Id="PolicyProfile">
    <DisplayName>PolicyProfile</DisplayName>
    <Protocol Name="OpenIdConnect" />
    <OutputClaims>
      <!-- 其他保留的声明 -->
      <OutputClaim ClaimTypeReferenceId="sampledata" /> <!-- 输出不带前缀的声明 -->
    </OutputClaims>
    <SubjectNamingInfo ClaimType="sub" />
  </TechnicalProfile>
</RelyingParty>

完成以上配置后重新发布自定义策略,用户登录后获取的ID令牌里就会出现不带extension前缀的sampledata属性,原带前缀的属性不会被输出(除非特意保留)。

内容的提问来源于stack exchange,提问作者opqrshun

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 09:57:27