0

我需要使用 REST API 从 Dataverse 表中获取详细信息并执行相同操作,我需要生成访问令牌以发送有效的授权标头。我已经通过Microsoft Dataverse 使用 OAuth 身份验证使用 Azure Active Directory 注册应用程序并按照步骤操作。现在要生成访问令牌,我使用带有https://login.microsoftonline.com/{tenantId}/oauth2/v2.0/token端点的 POST 方法,并将 grant_type as client_credentials、资源https://management.core.windows.net/以及客户端 ID 和客户端密码与内容类型传递为 as application/x-www-form-urlencoded。但我收到AADSTS901002: The 'resource' request parameter is not supported。


编辑

在 API 权限选项卡中,我添加了委派权限。

在此处输入图像描述

在身份验证选项卡中,我没有为流选择任何类型,我需要在此处更改吗?

在此处输入图像描述

另请注意,在 Token Configuration 选项卡中尚未添加任何声明或组,并且 Expose API 选项卡未添加范围和授权的客户端应用程序。如果我需要在此处进行任何更改,请告诉我。

在此处输入图像描述


更新

当我不传递资源参数并将范围与https://{orgId}.crm5.dyanamics.com/.defaultclient_id、client_secret 和 grant_type 一起发送时,我能够获取访问令牌,但是当我使用此令牌获取数据时,https://{orgId}.crm5.dyanamics.com/api/data/v9.0/accounts我正在获取用户不是组织

4

1 回答 1

0

错误AADSTS901002: The 'resource' request parameter is not supported表示请求中提供的资源不正确。

当您尝试为 Dataverse API 生成访问令牌时,资源应如下所示:

https://admin.services.crm.dynamics.com/
于 2021-12-15T06:20:52.563 回答