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

如何在Postman中无需浏览器交互获取Azure AD B2C访问令牌?

如何在Postman中通过单请求获取Azure AD B2C自定义策略的访问令牌(无需手动浏览器登录)

完全可以实现,你可以使用**资源所有者密码凭据流(ROPC流)**来完成这个需求,这个流不需要浏览器交互,直接通过Postman发送POST请求就能获取访问令牌。

前提条件

  • 你的Azure AD B2C租户已启用ROPC流:在Azure门户的B2C租户设置中,找到「身份验证方法」,开启资源所有者密码凭据选项
  • 自定义策略已配置ROPC支持:需要在策略中添加ResourceOwnerPasswordCredentials类型的技术配置文件和对应的用户旅程
  • 目标API的应用注册已允许ROPC流,并且你已获取该API的权限范围(scope)
  • 测试用户未启用多因素认证(MFA)——ROPC流不支持MFA

Postman请求配置

  1. 请求方法与URL

    • 方法:POST
    • URL:https://<你的B2C租户名>.b2clogin.com/<你的B2C租户名>.onmicrosoft.com/<你的自定义策略ID>/oauth2/v2.0/token
      (替换尖括号中的实际租户名、策略ID)
  2. 请求头
    添加Content-Type头:

    Content-Type: application/x-www-form-urlencoded
    
  3. 请求体(选择x-www-form-urlencoded格式)
    填入以下参数:

    • grant_type: password
    • client_id: 你的客户端应用注册ID(即之前Postman OAuth配置里的Client ID)
    • username: 测试用户的完整用户名(例如testuser@yourtenant.onmicrosoft.com)
    • password: 该用户的登录密码
    • scope: https://<你的B2C租户名>.onmicrosoft.com/<API应用ID>/<权限范围名称> offline_access
      (offline_access可选,用于获取刷新令牌)
    • response_type: token(若需要同时获取ID令牌,可填id_token token)

发送请求后,你就能直接在响应中拿到access_token,无需手动通过浏览器登录。

注意事项

  • ROPC流会直接处理用户密码,安全性低于授权码流,建议仅用于测试场景或特定的后端服务调用
  • 如果自定义策略未正确配置ROPC,请求会返回错误,需要检查策略中的技术配置文件和用户旅程定义

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 08:15:34