来自 Postman 的Azure AD访问令牌

bmvo0sr5  于 2022-12-23  发布在  Postman
关注(0)|答案(2)|浏览(249)

今天,我在从Postman获取Azure AD访问令牌时遇到问题。这是在它之前为我正在使用的同一应用和其他应用工作时出现的问题。但今天它们都不工作。我工作正常,但现在它向我显示此错误:

  • 错误代码:AADSTS900144请求正文必须包含以下参数:"客户端ID"*

我使用https://login.microsoftonline.com/common/oauth2/v2.0/authorize作为身份验证URL,使用https://login.microsoftonline.com/common/v2.0/token作为访问令牌URL。我尝试了这些方法作为访问令牌URL,但均无效。https://login.microsoftonline.com/{{tenant_id}}/v2.0/tokenhttps://login.microsoftonline.com/common/tokenhttps://login.microsoftonline.com/{tenant_id}/token这是我的Azure AD oauth 2.0配置。此外,如您所见,请求正文中没有client_id。

gj3fmq9x

gj3fmq9x1#

我尝试在我的环境中重现相同的结果,但得到以下结果

你可以从Azure AD应用程序获取身份验证URL和访问令牌URL的,这些值因支持的帐户类型而异,如下所示:

  • 转到Azure门户-〉Azure Active Directory -〉应用注册-〉你的应用-〉概述-〉终结点 *

现在我在Postman中添加了环境变量,定义如下:

使用variables请求令牌时,请确保选择正确的环境
我填写了与您相同的必填详细信息以获得访问令牌,如下所示:

当我选择获取新访问令牌时,我成功获取了token,如下所示:

如果在获取访问令牌时未包含client_id,则通常会发生此错误。
我在如下变量中将client_id参数更改为blank

当我再次尝试获取访问令牌时,我收到了相同的错误,如下所示:

解决错误,请确保在正确的环境中传递client_id值并保存它。

qoefvg9y

qoefvg9y2#

我知道为什么会这样了:我检查了我朋友的电脑,它在那里工作!这个问题是最后一次更新的 Postman 。他们已经改变了授权的东西。只要改变客户端身份验证发送客户端凭据在正文和它会工作。x1c 0d1x

相关问题