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

如何通过Azure B2C传递用户名密码获取令牌及解决Postman调用错误

解决Azure B2C获取令牌报错AADB2C90057的问题

确认授权流程匹配需求

你需要用**资源所有者密码凭据流(ROPC)**实现用户名密码直接获取令牌,而非隐式流。先核对Postman请求配置:

  • 请求URL必须是B2C租户的ROPC端点,格式示例:
    https://<租户名>.b2clogin.com/<租户名>.onmicrosoft.com/<用户流名称>/oauth2/v2.0/token
  • 请求方法为POST,必填参数:
    • grant_type=password
    • client_id=<你的应用ID>
    • username=<完整用户名,如user@xxx.onmicrosoft.com>
    • password=<用户密码>
    • scope=<目标Web API的权限范围,如https://xxx.onmicrosoft.com/api/access>

配置Azure B2C应用的授权规则

  1. 登录Azure门户,进入你的B2C租户后台
  2. 找到目标应用注册,进入身份验证选项卡
  3. 在隐式授权和混合流区域,勾选ID令牌和访问令牌(若需兼容隐式流,但核心是确保ROPC流被允许)
  4. 切换到高级设置,确认允许的令牌颁发者配置正确
  5. 保存所有更改

启用用户流的ROPC支持

  1. 在B2C租户后台进入用户流页面,选择你正在使用的用户流(如SignInSignUp)
  2. 打开属性选项,确认允许资源所有者密码凭据流已勾选启用

校验Postman参数准确性

  • client_id必须是应用注册的应用程序(客户端)ID,而非对象ID
  • scope必须包含目标Web API已授权给该客户端的权限范围
  • 用户名需使用完整的用户主体名(UPN)格式

错误"AADB2C90057"的核心原因:当前请求触发了隐式流,但应用未配置允许该流。若你的目标是ROPC流,务必确保请求端点、参数与ROPC流程匹配,同时完成应用和用户流的对应配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 23:47:08