azure - 在 Azure Active Directory 中注册应用以生成客户端 ID
问题描述
我对如何在我的 Azure Active Directory 中注册应用程序感到有些困惑。我正在运行 Microsoft Dynamics CRM on-Demand 应用程序<myorg>.crm4.dynamics.com
。为了运行一些简单的黑盒测试,我决定使用ADAL4J和 CRM Web api 编写一个基于 Java 的小型 Web 客户端。据我了解,我需要在 AAD 中注册我的应用程序。我是否可以假设将其注册为本地人?因为它只是在本地运行一些请求/后请求?在这个用例中,我需要为重定向 uri 配置什么?
在反复试验的过程中,我使用我的资源 uri ( <myorg>.crm4.dynamics.com
) 作为重定向 uri 注册了一个应用程序,并授予了访问 Dynamics CRM Api 的必要权限。令我惊讶的是,它起作用了,我能够使用相应的客户端 ID 检索访问令牌。我之所以在这里问这个问题,是因为我采取的配置仍然让我感觉不对。<myorg>.crm4.dynamics.com
我需要注册的不是我的 CRM 应用程序,而是通过请求访问 API 的 Web 客户端<myorg>.crm4.dynamics.com/api/data/v9.0/accounts
,对吧?
解决方案
要从基于 Java 的 Web 客户端使用 Dynamics CRM webapi,您必须在 Azure AAD 中注册 CRM 应用程序(不是 Java 应用程序),并且可以使用应用程序 ID(以前称为客户端 ID)来获取用于身份验证的令牌。
演练:向 Azure Active Directory 注册 Dynamics 365 应用
Azure Active Directory 中的应用注册通常由想要开发外部客户端应用程序以在 Customer Engagement 中读取和写入数据的 ISV 完成。在 Azure Active Directory 中注册应用程序会为你提供 ISV 可以在其客户端应用程序的身份验证代码中使用的应用程序 ID 和重定向 URI 值。
推荐阅读
- html - 错误:元素类型无效:需要字符串(用于内置组件)或类/函数
- python - 我不明白python中这个for循环的语法
- python - Python打印timedelta计算输出
- powerbi - 根据累积量度转换 DAX 返利
- vim - 空格可以像vim中退格上的制表符一样吗?
- java - Maximo 中企业服务的用户出口中的 XPath 无效
- tensorflow - 运行张量流时出现“不支持的数据格式”
- jquery - 带有 html i 类的 .text 的 Jquery 语法
- c++ - 我可以将 &std::array<> 作为 void* 传递吗?
- spring-batch - 使用 Spring Batch 读取具有重复批次的文件