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

无法修改Azure B2C中OpenID Connect身份提供商的声明配置

用PowerShell修改Azure B2C OpenID Connect身份提供商的声明配置

前期准备

  • 安装AzureADPreview模块(Azure B2C的多数身份提供商操作依赖这个预览模块)
  • 准备好你的Azure B2C租户ID

步骤1:连接到Azure B2C租户

打开PowerShell,执行以下命令登录:

Connect-AzureAD -TenantId "你的B2C租户ID"

步骤2:定位目标身份提供商

先列出所有身份提供商,找到你要修改的那个OIDC提供商的ID(一串GUID):

Get-AzureADMSIdentityProvider

用获取到的ID查询该提供商的详细配置:

$targetIdp = Get-AzureADMSIdentityProvider -Id "刚才查到的ID"

步骤3:修改声明映射

OIDC提供商的声明映射存在ClaimsMappingPolicy属性里,我们需要解析现有配置、修改错误值后再更新:

# 把现有配置转成可编辑的JSON对象
$claimsConfig = $targetIdp.ClaimsMappingPolicy | ConvertFrom-Json

# 修改错误的声明映射,比如把错误的PartnerClaimType值改成正确的
# 示例:将givenName对应的PartnerClaimType从wrong_field改为given_name
$claimsConfig.InputClaims | Where-Object { $_.ClaimTypeReferenceId -eq "givenName" } | ForEach-Object {
    $_.PartnerClaimType = "given_name"
}

# 把修改后的配置转成压缩JSON字符串
$updatedConfig = $claimsConfig | ConvertTo-Json -Compress

# 提交修改
Set-AzureADMSIdentityProvider -Id $targetIdp.Id -ClaimsMappingPolicy $updatedConfig

步骤4:验证修改结果

再次查询该提供商的配置,确认声明映射已经更新:

Get-AzureADMSIdentityProvider -Id $targetIdp.Id | Select-Object ClaimsMappingPolicy

特殊情况处理

如果你的OIDC提供商是通过门户默认创建的,可能没有关联自定义声明映射策略,这时需要先创建策略再关联:

  1. 新建一个JSON文件(比如claims-policy.json),内容如下(根据你的需求调整声明映射):
{
  "ClaimsMappingPolicy": {
    "Version": "1.0",
    "InputClaims": [
      {
        "ClaimTypeReferenceId": "givenName",
        "PartnerClaimType": "given_name"
      },
      {
        "ClaimTypeReferenceId": "surname",
        "PartnerClaimType": "family_name"
      }
    ],
    "OutputClaims": [
      {
        "ClaimTypeReferenceId": "givenName",
        "PartnerClaimType": null
      }
    ]
  }
}
  1. 执行以下命令创建策略并关联到身份提供商:
$policyContent = Get-Content "claims-policy.json" -Raw
$newPolicy = New-AzureADMSClaimsMappingPolicy -Definition $policyContent -DisplayName "自定义OIDC声明映射策略"
Set-AzureADMSIdentityProvider -Id $targetIdp.Id -ClaimsMappingPolicyId $newPolicy.Id

注意事项

  • 操作前建议备份现有配置,避免误操作导致问题
  • 如果修改后依然未生效,可能是B2C缓存问题,等待一段时间再验证,或者联系微软支持确认租户缓存情况

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 15:52:37