AADB2C90085内部错误排查:DEV环境令牌请求失败
AADB2C90085内部错误排查方案(DEV环境令牌请求失败)
错误信息
invalid_grant: undefined - [undefined]: AADB2C90085: The service has encountered an internal error. Please re-authenticate and try again.
DEV环境突然触发该错误,相同代码切换到PROD配置可正常运行,已核对自定义策略、策略密钥,以下是进一步排查方向:
排查步骤
检查授权码及PKCE参数有效性
- 确认
code参数是否正常获取、未过期(授权码有效期默认5分钟),避免使用已失效或错误的授权码 - 保证令牌请求的
redirect_uri、client_id和前端授权请求时完全一致,参数不匹配会直接触发错误 - 如果启用了PKCE流程,核对
code_verifier是否和授权请求阶段生成的code_challenge对应,确保算法一致(默认S256)
- 确认
验证DEV环境应用注册配置
- 检查DEV租户的应用注册中,
https://www.test.site.se/这个redirect_uri是否已正确添加且未被移除 - 确认应用未被意外禁用,且API权限面板中
user_impersonation等权限已完成管理员同意授权 - 对比PROD和DEV环境的应用注册配置,找出是否存在遗漏或差异项(比如回复URL、权限范围)
- 检查DEV租户的应用注册中,
排查B2C自定义策略及租户状态
- 检查DEV环境的自定义策略是否有最近的变更(比如用户旅程、技术配置文件修改),对比PROD策略的内容差异
- 确认策略中引用的所有密钥(证书、对称密钥)在DEV租户中状态有效,未过期或被重置
- 查看Azure门户中B2C租户的服务健康状态,确认是否存在平台级的服务异常
日志深度分析
- 查看B2C租户的审计日志,筛选令牌请求相关的失败记录,提取错误的详细上下文信息(比如请求ID、具体参数错误)
- 启用前端应用的日志跟踪,记录从授权码获取到令牌请求的完整流程,定位中间环节的异常点
- 确保
client-request-id在请求中正确传递,用该ID在B2C日志中精准检索对应请求的详细报错信息
令牌请求端点及Payload信息
https://<tenant>.b2clogin.com/<tenant>.onmicrosoft.com/b2c_1a_signup_signin/oauth2/v2.0/token Payload client_id: <clientid> redirect_uri: https://www.test.site.se/ scope: https://tenant.onmicrosoft.com/<guid>/user_impersonation openid profile offline_access code: code_verifier: grant_type: authorization_code client_info: 1 client-request-id:
内容的提问来源于stack exchange,提问作者Avdesh Gupta
相关产品推荐
相关产品推荐

