【发布时间】:2020-12-10 23:52:26
【问题描述】:
我一直在按照本教程获取 Azure 服务总线的访问令牌,以便我可以使用 Postman 将消息发布到队列:
https://docs.microsoft.com/en-us/rest/api/servicebus/get-azure-active-directory-tokenTh
按照示例进行操作,我可以获得访问令牌。但是,该示例使用较旧的 v1 令牌端点,例如
https://login.microsoftonline.com/{{tennant-id}}/oauth2/token
我想使用当前的 v2 端点,例如
https://login.microsoftonline.com/{{tennant-id}}/oauth2/v2.0/token
但是当我切换时得到这个错误:
AADSTS70011: The provided request must include a 'scope' input parameter. The provided value for the input parameter 'scope' is not valid. The scope https://servicebus.azure.net is not valid.
我假设范围的名称必须已更改,并且我找不到任何有关 azure 服务范围的文档。我试过很多东西,比如https://servicebus.windows.net 和https://myqueue.servicebus.windows.net 和谷歌搜索,但我什么也没找到。
更新
根据提供的答案,我已将“.default”附加到请求的范围。这并没有解决问题,但改变了我现在在邮递员控制台中收到 Error: invalid_client 的错误消息。
我正在尝试使用邮递员“获取新访问令牌”功能并将其设置为这样
[
更新 2
上次更新中的授权类型错误 - 应该是客户端凭据,然后才能正常工作。
【问题讨论】:
-
这个问题有更新吗?
-
@JoyWang 我还没有让它工作,但随着进度更新了问题。我正在尝试查找“.default”的文档,以查看它是否需要分配给该服务原则的其他角色,而不是该文章中涵盖的角色。
-
从截图来看,
Grant Type是Authorization Code,是认证码流,在你提到的文档中,它使用客户端凭证流,你需要把它改成@987654330 @. -
呃-谢谢@JoyWang
标签: azure azure-active-directory azureservicebus microsoft-identity-platform