【问题标题】:Connect to Dynamics 365 Customer Engagement web services using OAuth使用 OAuth 连接到 Dynamics 365 Customer Engagement Web 服务
【发布时间】:2018-04-06 11:57:01
【问题描述】:

我正在尝试使用下面链接中给出的参考连接到 Dynamics 365

https://docs.microsoft.com/en-us/dynamics365/customer-engagement/developer/connect-customer-engagement-web-services-using-oauth

在下面的代码中进行用户身份验证后,控制转到 catch 块 说

"请求正文必须包含以下参数:'client_secret or client_assertion'"

AuthenticationResult result = authContext.AcquireToken(resource, clientId, new Uri(redirectUrl));

我知道对于其他 Microsoft 应用程序,有一个客户端应用程序密钥和一个客户端密钥密钥,我们可以使用它们获取访问令牌,但这是一个只有客户端应用程序密钥的 Azure 目录应用程序。如果我的理解有误,请纠正我。

【问题讨论】:

    标签: azure dynamics-crm dynamics-365


    【解决方案1】:

    您使用的是什么版本的 ADAL?看起来你需要 2.x 才能工作。从您链接的文档页面:

    您必须使用 ADAL 2.0 库。所有 Dynamics 365 Customer Engagement 工具、程序集和实用程序都需要 ADAL 2.0 支持的模式。 ADAL 3.0 库需要登录屏幕来捕获用户帐户信息,并且不提供按照 Dynamics 365 Customer Engagement 的要求以无头方式传递此帐户信息。

    我正在查看我最后一个使用 v2.29 的测试代码的 sn-p,但我没有带有这些参数的 AcquireToken 方法。

    【讨论】:

    • 我们是否必须在 azure 目录中创建一个单独的应用程序才能访问 Dynamics 365。不能,我们在 Azure 目录中创建一个应用程序并访问其他客户端的 Dynamics 365,就像我们在 Microsoft 应用程序门户中所做的那样?
    • @HyderAhmed 是的,你可以。不过,我会为此提交一个新问题。我不确定这将如何工作的详细信息,而且答案可能取决于您的具体情况的详细信息。
    猜你喜欢
    • 2021-06-07
    • 1970-01-01
    • 1970-01-01
    • 2019-11-27
    • 2023-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-10
    相关资源
    最近更新 更多