请求Azure AD B2C的邮递员访问令牌

spo*_*ahn 9 postman azure-ad-b2c

我怎么可以要求Access Token邮差针对Azure的AD B2C租户?

新访问令牌屏幕截图


我尝试从Run NowAzure门户网站中获取网址并将其放入,Auth Url但会产生以下错误:

b2c错误


更新

在Chris的回答之后,我现在已经超过了上述错误.我可以登录但仍然无法获取访问令牌:

AADB2C90085:该服务遇到内部错误.请重新进行身份验证,然后重试.相关ID:45c56d47-4739-465f-8e02-49ba5b3a1b86时间戳:2017-11-16 15:27:52Z

spo*_*ahn 12

使用@Chris Padgett的答案,我能够使用Implicit授权类型使其工作(无法使用授权代码Gran Type工作).


拨款类型: Implicit

回调网址:我的B2C应用中定义的任何网址

身份验证网址: https://login.microsoftonline.com/te/{tenant}/{policy}/oauth2/v2.0/authorize

客户ID:Application ID来自我的B2C应用

范围: https://{tenant}.onmicrosoft.com/{web api app id uri}/{scope name}

客户认证: Either one, it didn't matter


更新

微软已经记录了这个过程! 使用Postman获取令牌并测试API.

  • 嘿,我只想说谢谢你用这个 B2C 的东西记录了所有的困难 - 在我寻找答案的任何地方,我看到 spotmahn 已经问过这个问题,做了研究并得到了答案,通常是成功的!它非常有用,比试图找出微软(通常)关于该主题的过时文档要好得多。荣誉。 (2认同)
  • 嗨@ubienewbie - 你发布了以下问题吗?如果是的话,您可以分享链接吗?谢谢 (2认同)

Idu*_*tus 9

进行此设置有点令人头疼。这是我根据本线程中的答案拼凑而成的内容,已更新以利用 Postman 的优势Grant Type: Authorization Code (With PKCE)

信用也可以从https://blogs.aaddevsup.xyz/2020/08/performing-azure-ad-oauth2-authorization-code-grant-flow-with-pkce-in-postman/作为起点。

使用:Azure B2C 租户、JS SPA 前端、Azure Function 后端。

Azure 门户(Azure AD B2C)

  • SPA 和后端的设置或多或少如本 MS 文档中所述(小心,某些部分已经过时!):https ://learn.microsoft.com/en-us/azure/api-management/howto-保护后端前端-azure-ad-b2c

  • @ SPA 应用程序注册 > 身份验证刀片 > 将此值添加到“单页应用程序重定向 URI” https://oauth.pstmn.io/v1/callback

  • @Azure AD B2C | 应用程序注册,点击“端点”(蓝色地球图标@顶部)

  • 记录 Azure AD B2C OAuth 2.0 令牌端点 (v2)Azure AD B2c 2.0 授权端点 (v2)

邮差

  • 授权:Oauth 2.0
  • 将身份验证数据添加到:请求标头

配置新令牌

  • 代币名称:WhateverYouWant

  • 授权类型:带有 PKCE 的授权码

  • 回调网址: https: //oauth.pstmn.io/v1/callback

  • [ ] 使用浏览器授权(未勾选)

  • 身份验证 URL:https://<租户名称>.b2clogin.com/<租户名称>.onmicrosoft.com/<策略名称>/oauth2/v2.0/authorize

  • 访问令牌 URL:https://<租户名称>.b2clogin.com/<租户名称>.onmicrosoft.com/<策略名称>/oauth2/v2.0/token

  • 客户端 ID:< your-SPA-Application-ID-aka-client-ID >

  • 客户端秘密:<空>

  • 代码挑战方法:SHA-256

  • 代码验证器:<空>

  • 状态:<空>

  • 范围:类似于 <租户名称>.onmicrosoft.com/Hello

  • 客户端身份验证:在正文中发送客户端凭据

  • 单击[清除cookie]和[获取新的访问令牌]


小智 5

2020-05-26 更新

正如您在此处看到的,Microsoft 更改了 Azure Active Directory B2C 的登录 URL 。

所以@spottedmahn 的答案必须更新为:

资助类型: Implicit

回调 URL:在我的 B2C 应用程序中定义的任何 URL

验证网址: https://{tenant}.b2clogin.com/te/{tenant}.onmicrosoft.com/{policy}/oauth2/v2.0/authorize

客户端 ID:来自我的 B2C 应用程序的应用程序 ID

范围: https://{tenant}.onmicrosoft.com/{web api app id uri}/{scope name}

客户端认证:任一个,都无所谓