应用注册注意事项
ALM Accelerator for Power Platform 依靠 Microsoft Entra 应用注册与所需服务进行通信。 本文讨论在为 ALM 加速器设计应用注册策略时应牢记的注意事项以及可以采取的方法。
所需 API 权限
您需要允许应用注册使用 ALM 加速器的相关 API 与所需服务进行通信。 与这些服务进行通信的要求取决于 ALM 加速器的功能。
下表显示 ALM 加速器的不同功能所需的 API 权限。
功能 | API 权限 | 权限类型 | 说明 |
---|---|---|---|
CustomAzureDevOps 自定义连接器 | Azure DevOps - user_impersonation | 委派 | ALM 加速器画布应用需要 Azure DevOps API 权限来与 Azure DevOps 通信。 |
部署验证管道 | Dynamics CRM - user_impersonation | 委派 | 将解决方案部署到验证环境的管道需要有使用 Power Platform (Dynamics CRM) API 的权限来执行解决方案操作。 |
部署验证管道 | Power Apps Advisor - Analysis.All | 委派 | 将解决方案部署到验证环境的管道需要有使用 Power Apps Advisor 服务的权限来运行解决方案检查器任务。 |
部署测试管道 | Dynamics CRM - user_impersonation | 委派 | 将解决方案部署到测试环境的管道需要有使用 Power Platform (Dynamics CRM) API 的权限来执行解决方案操作。 |
部署生产管道 | Dynamics CRM - user_impersonation | 委派 | 将解决方案部署到生产环境的管道需要有使用 Power Platform (Dynamics CRM) API 的权限来执行解决方案操作。 |
导出解决方案管道 | Dynamics CRM - user_impersonation | 委派 | 从制作者开发环境导出解决方案的管道需要有使用 Power Platform (Dynamics CRM) API 的权限来执行解决方案操作。 |
导入解决方案管道 | Dynamics CRM - user_impersonation | 委派 | 将解决方案从 Azure Git 源代码管理导入制作者开发环境的管道需要有使用 Power Platform (Dynamics CRM) API 的权限来执行解决方案操作。 |
删除解决方案管道 | Dynamics CRM - user_impersonation | 委派 | 在制作者开发环境中删除解决方案的管道需要有使用 Power Platform (Dynamics CRM) API 的权限来执行解决方案操作。 |
应用注册策略的注意事项
在为 ALM 加速器设计创建和管理应用注册的策略时,应同时考虑安全性和维护问题。
最低特权原则
从安全角度,考虑最低特权原则。 任何应用注册都应该具有执行必要操作所需的最低特权。
维护简单
从维护角度,考虑一个只需要您做最少的工作来维护应用注册和使用它们的服务的策略。 例如,维护应用注册的任务之一是机密轮换—撤消当前机密与创建新机密。 在轮换机密时,每个使用应用注册的服务都需要重新配置。 您使用的应用注册越多,所需要执行的维护工作就越多。
Azure 应用注册策略
向 Microsoft Entra ID 注册应用以供 ALM 加速器使用的策略可以从非常简单一直到非常精细。
全包式应用注册
最简单的策略是为您的所有需求创建一个应用注册。 使用此策略,您可以对 CustomAzureDevOps 自定义连接器和访问 Power Platform 环境所需的所有 Azure DevOps 服务连接使用同一个应用注册。
虽然这种策略是最容易管理,但它违反了最小特权原则。 一个应用注册有权通过自定义连接器和您配置的所有 Azure DevOps 服务连接执行所有必需的操作。
应用注册 | API 权限和类型 | 说明 |
---|---|---|
用于所有目的的单个应用注册 | Azure DevOps - user_impersonation - 委派 | ALM 加速器画布应用需要 Azure DevOps API 权限来与 Azure DevOps 通信。 |
用于所有目的的单个应用注册 | Dynamics CRM - user_impersonation - 委派 | 从制作者开发环境导出解决方案并将解决方案部署到验证、测试和生产环境的管道需要有使用 Power Platform (Dynamics CRM) API 的权限来执行解决方案操作。 |
用于所有目的的单个应用注册 | Power Apps Advisor - user_impersonation - 委派 | 将解决方案部署到验证环境的管道需要有使用 Power Apps Advisor 服务的权限来运行解决方案检查器任务。 |
分别为 Azure DevOps 和 Power Platform 创建一个应用注册
更精细的策略是为 CustomAzureDevOps 自定义连接器创建一个应用注册,并为管道创建一个用于与 Power Platform 环境通信的应用注册。
这一策略更符合最低特权原则。 仅用于 CustomAzureDevOps 自定义连接器的应用注册可以访问 Azure DevOps API,仅用于连接 Power Platform 的应用注册可以使用 Power Platform (Dynamics CRM) API。
应用注册 | API 权限和类型 | 说明 |
---|---|---|
Azure DevOps 的应用注册 | Azure DevOps - user_impersonation - 委派 | ALM 加速器画布应用需要 Azure DevOps API 权限来与 Azure DevOps 通信。 |
Power Platform 的应用注册 | Dynamics CRM - user_impersonation - 委派 | 从制作者开发环境导出解决方案并将解决方案部署到验证环境的管道需要有使用 Power Platform (Dynamics CRM) API 的权限来执行解决方案操作。 |
Power Platform 的应用注册 | Power Apps Advisor - user_impersonation - 委派 | 将解决方案部署到验证环境的管道需要有使用 Power Apps Advisor 服务的权限来运行解决方案检查器任务。 |
为 Azure DevOps 创建一个应用注册,为 Power Platform 创建多个应用注册
一个更精细的策略是创建用于访问不同 Power Platform 环境的应用注册。 您可以使用 ALM 加速器管道为需要访问的每个环境创建一个应用注册。 或者,使用 ALM 加速器为您支持的每个 Power Platform 项目创建一个应用注册。
这一策略非常符合最低特权原则。 但是,您还应该考虑维护问题。 确保保持一种结构化方式来识别每个环境使用的应用注册。 当您轮换应用注册机密时,这些信息将派上用场。
下表显示如何为每个 Power Platform 项目创建应用注册,以限制仅访问相关环境。
应用注册 | Power Platform 范围 | API 权限和类型 | 说明 |
---|---|---|---|
Azure DevOps 的应用注册 | 不适用 | Azure DevOps - user_impersonation - 委派 | ALM 加速器画布应用需要 Azure DevOps API 权限来与 Azure DevOps 通信。 |
Power Platform 的应用注册 | 平台项目 1 | Dynamics CRM - user_impersonation - 委派 | 将解决方案部署到验证环境的管道需要有使用 Power Platform (Dynamics CRM) API 的权限来执行解决方案操作。 |
Power Platform 的应用注册 | 项目 1 | Power Apps Advisor - user_impersonation - 委派 | 将解决方案部署到验证环境的管道需要有使用 Power Apps Advisor 服务的权限来运行解决方案检查器任务。 |
Power Platform 的应用注册 | 项目 2 | Dynamics CRM - user_impersonation - 委派 | 将解决方案部署到验证环境的管道需要有使用 Power Platform (Dynamics CRM) API 的权限来执行解决方案操作。 |
Power Platform 的应用注册 | 项目 2 | Power Apps Advisor - user_impersonation - 委派 | 将解决方案部署到验证环境的管道需要有使用 Power Apps Advisor 服务的权限来运行解决方案检查器任务。 |
Power Platform 的应用注册 | 制作者开发环境 1 | Dynamics CRM - user_impersonation - 委派 | 从制作者开发环境导出解决方案的管道需要有使用 Power Platform (Dynamics CRM) API 的权限来执行解决方案操作。 |
Power Platform 的应用注册 | 制作者开发环境 2 | Dynamics CRM - user_impersonation - 委派 | 从制作者开发环境导出解决方案的管道需要有使用 Power Platform (Dynamics CRM) API 的权限来执行解决方案操作 |
下表显示如何通过为每个 Power Platform 环境创建应用注册来进一步符合最低特权原则。
应用注册 | Power Platform 范围 | API 权限和类型 | 说明 |
---|---|---|---|
Azure DevOps 的应用注册 | 不适用 | Azure DevOps - user_impersonation - 委派 | ALM 加速器画布应用需要 Azure DevOps API 权限来与 Azure DevOps 通信。 |
Power Platform 的应用注册 | 项目 1 - 验证环境 | Dynamics CRM - user_impersonation - 委派 | 将解决方案部署到验证环境的管道需要有使用 Power Platform (Dynamics CRM) API 的权限来执行解决方案操作。 |
Power Platform 的应用注册 | 项目 1 - 验证环境 | Power Apps Advisor - user_impersonation - 委派 | 将解决方案部署到验证环境的管道需要有使用 Power Apps Advisor 服务的权限来运行解决方案检查器任务。 |
Power Platform 的应用注册 | 项目 1 - 测试环境 | Power Apps Advisor - user_impersonation - 委派 | 将解决方案部署到验证环境的管道需要有使用 Power Apps Advisor 服务的权限来运行解决方案检查器任务。 |
Power Platform 的应用注册 | 项目 1 - 生产环境 | Dynamics CRM - user_impersonation - 委派 | 将解决方案部署到验证环境的管道需要有使用 Power Platform (Dynamics CRM) API 的权限来执行解决方案操作。 |
Power Platform 的应用注册 | 项目 2 - 验证环境 | Dynamics CRM - user_impersonation - 委派 | 将解决方案部署到验证环境的管道需要有使用 Power Platform (Dynamics CRM) API 的权限来执行解决方案操作。 |
Power Platform 的应用注册 | 项目 2 - 验证环境 | Power Apps Advisor - user_impersonation - 委派 | 将解决方案部署到验证环境的管道需要有使用 Power Apps Advisor 服务的权限来运行解决方案检查器任务。 |
Power Platform 的应用注册 | 项目 2 - 测试环境 | Power Apps Advisor - user_impersonation - 委派 | 将解决方案部署到验证环境的管道需要有使用 Power Apps Advisor 服务的权限来运行解决方案检查器任务。 |
Power Platform 的应用注册 | 项目 2 - 生产环境 | Dynamics CRM - user_impersonation - 委派 | 将解决方案部署到验证环境的管道需要有使用 Power Platform (Dynamics CRM) API 的权限来执行解决方案操作。 |
Power Platform 的应用注册 | 制作者开发环境 1 | Dynamics CRM - user_impersonation - 委派 | 从制作者开发环境导出解决方案的管道需要有使用 Power Platform (Dynamics CRM) API 的权限来执行解决方案操作。 |
Power Platform 的应用注册 | 制作者开发环境 2 | Dynamics CRM - user_impersonation - 委派 | 从制作者开发环境导出解决方案的管道需要有使用 Power Platform (Dynamics CRM) API 的权限来执行解决方案操作。 |