使用POSTMAN获取授权代码-OAuth2.0

时间:2020-09-20 20:38:14

标签: azure oauth-2.0 azure-active-directory postman microsoft-graph-api

我正在使用POSTMAN测试MSGraph的OAuth2.0 AuthCode流。以下是相同的详细信息:

AuthCode URL https://login.microsoftonline.com/{tenant_id}/oauth2/authorize

AccessToken URL https://login.microsoftonline.com/{tenant_id}/oauth2/v2.0/token

当我做一些研究以了解如何使用POSTMAN测试OAuth2.0时。我能够找到一些线程来帮助我生成访问令牌,并点击用户个人资料api以获取用户详细信息,如以下屏幕截图所示:

enter image description here

enter image description here

但是,我有一个奇怪的要求,我想在一个单独的请求中生成一个AuthCode,然后在另一个请求中使用它来获取访问令牌,然后使用访问令牌在一个单独的请求中获取用户详细信息请求。

有人可以帮我解决上述要求吗?

2 个答案:

答案 0 :(得分:0)

在Postman的第一个请求的测试标签中,您需要将AuthCode存储在环境变量pm.environment.set("authCode", authCode)中。

然后您可以通过pm.environment.get("authCode")在下一个请求的预请求脚本中使用它,也可以在标头中将其用作URL参数:{{authCode}}

答案 1 :(得分:0)

您可以先在浏览器中请求授权码:

https://login.microsoftonline.com/{tenant}/oauth2/v2.0/authorize?
client_id={your-client-id}
&response_type=code
&redirect_uri=https://localhost:4500/web/completeoauth/ms
&response_mode=query
&scope=https://graph.microsoft.com/mail.read
&state=12345

enter image description here

然后使用授权码在邮递员中请求令牌:

enter image description here


更新

如果您不想使用浏览器,只需不要选中使用浏览器授权复选框,然后将回调URL 设置为您的重定向URI 。当您请求令牌时,它将提示您登录。<​​/ p>

登录后,它将直接向您返回访问令牌。但是您不会看到代码,这是因为系统直接将您的代码交换为令牌并将其返回给您。