首页 文章

提供令牌的Dynamics CRM 401

提问于
浏览
2

我正在为单租户服务器到服务器身份验证进行动态crm集成 . 这是获取令牌的必要条件,因为数据将用于创建面向客户的UI .

因此,我使用client_credentials授权类型从Azure获取令牌 . 但是,当我尝试使用此令牌访问任何动态 endpoints 时(例如此处记录的那些:https://msdn.microsoft.com/en-us/library/mt607871.aspx)我得到的全部是401 - 访问被拒绝 .

我做了以下事情:

  • 创建Azure应用程序

  • 创建并存储了一个密钥

  • 在线动态CRM的启用权限

我已经看到一些建议,我需要CRM本身的服务用户提供访问权限,但是当我尝试创建一个时,所描述的选项不会出现 . (例如:https://msdn.microsoft.com/en-us/library/mt790170.aspx#bkmk_ManuallyCreateUser

你能否提出我在这里可能缺少的任何步骤?

下面是使用令牌的示例调用

{ method: 'GET',
url: 'https://<snip>/api/data/v8.2/accounts?$select=name&$top=3',
headers:
{ Authorization: 'Bearer <snip>',
Accept: 'application/json',
'OData-MaxVersion': '4.0',
'OData-Version': '4.0' }
}

编辑:请注意我在这里使用node.js和基于C#/ .net的答案可能不会有太大的帮助

1 回答

  • 1

    这是关于如何configure server to server auth的帖子 . 假设您已经完成了除创建应用程序用户之外的所有步骤,您可以通过以下方式执行此操作:

    • 在CRM中导航到设置 - >安全 - >用户

    • 将视图从"Enabled Users"更改为"Application Users"

    • 从新用户表单中将表单从"User"更改为"Application User" .

    enter image description here

    您现在应该能够创建应用程序用户 .

相关问题