你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure RBAC 的最佳做法

本文介绍使用 Azure 基于角色的访问控制(Azure RBAC)的一些最佳做法。 这些最佳做法派生自我们在 Azure RBAC 方面的经验以及客户(如自己)的体验。

仅授予用户所需的访问权限

使用 Azure RBAC,可以在团队中分离职责,并仅向用户授予执行其作业所需的访问权限。 您不应在 Azure 订阅或资源中为每个人提供不受限制的权限,而是仅允许特定范围内的某些操作。

规划访问控制策略时,最佳做法是向用户授予完成工作的最低特权。 即使最初似乎更方便操作,也应避免在更广泛的范围内分配更大的角色。 创建自定义角色时,仅包括用户所需的权限。 通过限制角色和范围,可以对在安全主体受到入侵的情况下会面临风险的具体资源进行限制。

下图显示了使用 Azure RBAC 的建议模式。

建议使用 Azure RBAC 和最小特权模式的关系图。

有关如何分配角色的信息,请参阅 使用 Azure 门户分配 Azure 角色

限制订阅所有者数

建议最多保留 3 个订阅所有者,以降低因所有者帐户被入侵而导致安全漏洞的风险。 可以在 Microsoft Defender for Cloud 中监视此建议。 有关 Defender for Cloud 中的其他标识和访问建议,请参阅 安全建议 - 参考指南

限制特权管理员角色分配

某些角色标识为 特权管理员角色。 请考虑执行以下作来改善安全状况:

  • 删除不必要的特权角色分配。
  • 避免在可以改用 作业功能角色 时分配特权管理员角色。
  • 如果必须分配特权管理员角色,请使用范围较窄的范围,例如资源组或资源,而不是更广泛的范围,例如管理组或订阅。
  • 如果要分配有权创建角色分配的角色,请考虑添加条件来约束角色分配。 有关详细信息,请参阅向 有条件的其他人委托 Azure 角色分配管理

有关详细信息,请参阅 “列出或管理特权管理员角色分配”。

使用 Microsoft Entra Privileged Identity Management

若要保护特权帐户免受恶意网络攻击,可以使用 Microsoft Entra Privileged Identity Management (PIM)降低特权的暴露时间,并通过报告和警报提高对其使用情况的可见性。 PIM 通过提供对 Microsoft Entra ID 和 Azure 资源的实时特权访问来帮助保护特权帐户。 访问可以有时间限制,之后自动撤销特权。

有关详细信息,请参阅 什么是Microsoft Entra Privileged Identity Management?

将角色分配给组,而不是用户

若要使角色分配更易于管理,请避免将角色直接分配给用户。 而是将角色分配给组。 将角色分配给组而不是用户还有助于最大程度地减少角色分配的数量,每个订阅都有角色分配数限制

使用唯一角色 ID 而不是角色名称分配角色

角色名称可能会更改几次,例如:

  • 你使用的是自己的自定义角色,你决定更改名称。
  • 你正在使用一个名称中包含 (预览) 的预览角色。 释放角色后,将重命名该角色。

即使角色已重命名,角色 ID 也不会更改。 如果使用脚本或自动化来创建角色分配,最佳做法是使用唯一的角色 ID 而不是角色名称。 因此,如果角色被重命名,您的脚本更有可能会正常工作。

有关详细信息,请参阅 使用唯一角色 ID 和 Azure PowerShell 分配角色并使用唯一角色 ID 和 Azure CLI 分配角色

在创建自定义角色时避免使用通配符

创建自定义角色时,可以使用通配符 (*) 字符定义权限。 建议显式指定 ActionsDataActions,而不是使用通配符(*)字符。 通过将来的 ActionsDataActions 授予的附加访问权限和权限可能是使用通配符的不良行为。 有关详细信息,请参阅 Azure 自定义角色

后续步骤