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

Azure AD B2C配置v2令牌后仍下发v1令牌的问题咨询

问题排查方向与根本原因说明
  • 最常见根本原因:令牌版本由被访问资源(API)对应的应用注册配置决定,而非客户端应用的配置
    你当前修改的是SPA客户端应用的accessTokenAcceptedVersion参数,该参数仅控制客户端自身作为资源被访问时返回的令牌版本。如果你是请求自定义业务API的访问令牌,需要到对应API的应用注册清单中,将accessTokenAcceptedVersion设置为2,该配置才会生效。
  • 权威地址配置错误(当前配置不符合Azure AD B2C要求)
    你当前使用的authority地址https://login.microsoftonline.com/XXX.onmicrosoft.com是普通Azure AD的地址,并非B2C的标准地址。B2C的权威地址必须携带用户流/自定义策略,格式为:https://<租户名>.b2clogin.com/<租户名>.onmicrosoft.com/<用户流ID/自定义策略ID>。使用普通AAD地址请求会返回标准AAD的v1令牌,你当前令牌的iss字段为https://sts.windows.net/xxx也验证了这一点,正常B2C颁发的令牌签发者地址会包含b2clogin.com。
  • 请求的Scope指向了微软Graph API
    你当前返回的令牌aud字段为00000003-XXXX-XXXX-XXXX-XXXXXXXXXXXX,该ID是微软Graph API的固定应用ID,Graph API默认返回v1版本令牌,属于正常现象,不受自定义配置控制。如果你需要获取自定义业务API的v2令牌,需要检查protectedResourceMap中配置的scope是否为你自己的API暴露的权限,正确格式应为api://<API应用注册的客户端ID>/<权限名>,不要误用Graph的权限。
  • 本地缓存遗留旧令牌
    MSAL会将获取到的令牌存储在你配置的sessionStorage中,如果之前你配置错误时已经请求过v1令牌,在缓存过期前MSAL会直接复用旧令牌。你可以清空浏览器会话存储、Cookie后重新登录,验证是否还会返回v1令牌。
  • 应用注册配置未生效
    应用清单修改后存在1-2分钟的生效延迟,如果刚修改完配置立刻测试可能会不生效。同时确认你修改的是正确租户下对应资源的应用注册,避免混淆测试环境和生产环境的应用配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 06:36:06