使用 AAD v2 的 Dynamics 365 API

Pau*_*ers 4 microsoft-dynamics azure-active-directory dynamics-365 microsoft-graph-security microsoft-graph-api

我正在尝试通过 SPA 访问 Dynamics 365 Online API。但我想使用 v2 授权端点。我在 AAD 中注册了我的应用程序并为 Dynamics CRM 分配了权限(我正在使用允许我指定 Dynamics 的预览注册刀片)。它没有说 Dynamics 需要管理员同意,但是当我在 SPA 中指定范围时,我在同意屏幕上收到一个错误,表明我需要管理员同意。

我过去曾成功使用过 v1 授权端点,所以我怀疑这是我在检索访问令牌时指定范围的问题。

这个 API 有什么特别需要的吗?还没有完全实施吗?

在我请求 access_token 时的范围参数中,我尝试过:

<service guid>/<scope guid>
<service guid>/user_impersonation
https://<tenant>.crm.dynamics.com/user_impersonation
https://crm.dynamics.com/user_impersonation
https://dynamics.com/user_impersonation
Run Code Online (Sandbox Code Playgroud)

最后四个表示需要管理员同意。我尝试了其他几种格式,但它们出错表明格式不正确或资源不存在 - 我得到了。但我对管理员同意部分感到困惑。

任何指导表示赞赏!

小智 7

您需要使用以下范围:

https://{organization}.crm.dynamics.com//user_impersonation.

注意双斜线。