本文基于 Azure 登陆区域文章 Azure 登陆区域设计区域(用于标识和访问管理)中提供的指南为基础。 以下文章中提供的指南将帮助你确定与特定于 Azure Integration Services(AIS)部署的标识和访问管理相关的设计注意事项和建议。 如果 AIS 部署到支持任务关键型平台,则设计中还应包含有关 Azure 登陆区域设计区域的指南。
标识和访问管理 (IAM) 概述
在本文中,标识和访问管理(IAM)是指可用于在 Azure 中部署或维护资源的身份验证和授权选项。 实际上,这涉及到确定哪些标识有权通过Azure 门户或通过资源管理器 API 创建、更新、删除和管理资源。
IAM 是终结点安全性的单独注意事项,它定义了哪些标识可以调用和访问服务。 本系列的单独 安全 文章介绍了终结点安全性。 也就是说,有时这两个设计领域重叠:对于 Azure 中的某些服务,通过用于管理对资源的访问的相同 RBAC 控制来配置对终结点的访问。
设计注意事项
根据职责和运营效率的分离,确定部署的资源的 Azure 资源管理边界。
查看需要团队执行的 Azure 管理和活动。 请考虑要部署的 AIS 资源以及如何使用它们。 确定组织中可能的最佳责任分配。
设计建议
将托管标识用于集成服务资源 - 有关此建议的详细说明,请参阅 本系列中的安全 文章。
使用 Microsoft Entra ID 对集成服务资源进行身份验证。
考虑组织中角色所需的访问权限级别,并按角色应用最低特权原则。 例如,这些角色可以包括平台所有者、工作负荷所有者、devops 工程师和系统管理员。
使用最低特权原则,请考虑管理和维护 AIS 应用程序所需的角色。 要对此提出的问题:
谁需要查看来自 Application Insights、Log Analytics 和 存储 帐户等源的日志文件?
是否有人需要查看原始请求数据(包括敏感数据)?
可以从何处查看原始请求数据(例如,仅从企业网络查看数据) ?
谁可以查看工作流的运行历史记录?
谁可以重新提交失败的运行?
谁需要访问API 管理订阅密钥?
谁可以查看服务总线主题或订阅的内容,或查看队列/主题指标?
谁需要能够管理密钥库?
谁需要在密钥库中添加、编辑或删除密钥、机密和证书?
谁需要在密钥库中查看和读取密钥、机密或证书?
现有的内置 Microsoft Entra 角色和组是否涵盖已确定的要求?
创建自定义角色来限制访问权限,或者在内置角色无法完全锁定访问权限时提供对权限的更粒度。 例如,访问逻辑应用的回调 URL 需要一个权限,但“参与者”或“所有者”以外的此类访问权限没有内置角色,这些权限太宽。
了解如何使用 Azure Policy 限制对某些资源的访问,或强制实施符合公司策略。 例如,可以创建一个仅允许部署使用加密协议的API 管理 API 的策略。
查看 Azure 上 AIS 管理和管理中涉及的常见活动,并相应地分配 RBAC 权限。有关可用权限的详细信息,请参阅 资源提供程序操作。
常见 Azure 管理活动的一些示例包括:
Azure 资源 | Azure 资源提供程序 | 活动 |
---|---|---|
应用服务计划 | Microsoft.Web/serverfarms | 读取、加入、重启、获取 VNet 连接 |
API 连接 | Microsoft.Web/connections | 更新,确认 |
逻辑应用和函数 | Microsoft.Web/sites | 读取、启动、停止、重启、交换、更新配置、读取诊断、获取 VNet 连接 |
集成帐户 | Microsoft.Logic/integrationAccounts | 读取/添加/更新/删除程序集、读取/添加/更新/删除地图、读取/添加/更新/删除架构、读取/添加/更新/删除协议、读取/添加/更新/删除合作伙伴 |
服务总线 | Microsoft.ServiceBus | 读取、获取连接字符串、更新 DR 配置、读取队列、读取主题、读取订阅 |
存储帐户 | Microsoft.Storage/storageAccounts | 读取、更改(例如工作流运行历史记录) |
API 管理 | Microsoft.ApiManagement | 注册/删除用户、读取 API、管理授权、管理缓存 |
KeyVault | Microsoft.KeyVault/vaults | 创建保管库,编辑访问策略 |
下一步
查看关键设计领域,为体系结构制定完整的注意事项和建议。