本文详细介绍了安全执行自动化作业的最佳做法。 Azure 自动化为你提供了平台,用于协调频繁、耗时、容易出错的基础结构管理和操作任务,以及任务关键型操作。 此服务使您能够无缝地在云和混合环境中执行称为自动化 Runbook 的脚本。
主动保护并强化 Azure 自动化服务的平台组件。 该服务会经历可靠的安全性和合规性检查。 Azure云安全基准详细介绍了最佳做法和建议,以帮助提高Azure上的工作负载、数据和服务的安全性。 另请参见适用于 Azure 自动化的 Azure 安全基线。
自动化帐户的安全配置
本部分指导你安全地配置自动化帐户。
权限
在授予对自动化资源的访问权限时,请遵循最低特权原则完成工作。 实现自动化精细 RBAC 角色,并避免分配更广泛的角色或范围(例如订阅级别)。 创建自定义角色时,只包括用户需要的权限。 通过限制角色和范围,可以限制在安全主体被入侵时面临风险的资源。 有关基于角色的访问控制概念的详细信息,请参阅 Azure 基于角色的访问控制最佳做法。
避免使用包含带有通配符 (*) 的 Actions 的角色,因为这意味着对 Automation 资源或其子资源具有完全访问权限,例如 automationaccounts/*/read。 而应仅针对所需权限使用特定操作。
如果用户不需要访问自动化帐户中的所有 Runbook,请配置 Runbook 级别的基于角色的访问权限。
限制自动化参与者等高权限角色的数量,以降低因所有者账户被攻陷而造成安全风险的可能性。
使用 Microsoft Entra Privileged Identity Management 保护特权帐户免受恶意网络攻击,以通过报告和警报提高其使用可见性。
保障混合 Runbook 辅助角色的安全
使用混合 Runbook 辅助角色 VM 扩展来安装混合辅助角色,该扩展不依赖于 Log Analytics 代理。 建议使用此平台,因为它利用了基于 Microsoft Entra ID 的身份验证。 Azure 自动化的混合 Runbook 辅助角色功能允许你直接在 Azure 中托管该角色的计算机或非 Azure 计算机上执行 Runbook,以便在本地环境中运行自动化作业。
- 仅对负责管理以下操作的用户使用高权限用户或 混合辅助角色工作器自定义角色:例如,注册或注销混合辅助角色工作器和混合组,以及针对混合 Runbook 辅助角色工作器组执行 Runbook。
- 同一用户还需要在托管混合辅助角色的计算机上具有 VM 参与者访问权限。 由于 VM 参与者是一个高权限角色,因此请确保只有少数具有相应权限的用户才能管理 Hybrid 工作负载,从而降低因所有者账户被攻破而导致安全漏洞的风险。
遵循 Azure RBAC 最佳做法。
遵循最小特权原则,仅向用户授予在混合辅助角色上执行 Runbook 所需的权限。 不要向承载混合运行簿辅助角色的计算机授予不受限制的权限。 在访问不受限的情况下,如果用户具有 VM 参与者权限或有权针对混合辅助角色计算机运行命令,则他们可以使用来自混合辅助角色计算机的自动化帐户运行方式证书,并能够以订阅参与者身份进行恶意用户访问。 这可能会危害 Azure 环境的安全。 对于负责管理针对混合 Runbook 辅助角色工作器和混合 Runbook 辅助角色工作器组的自动化 Runbook 的用户,请使用混合辅助角色自定义角色。
注销任何未使用的或未响应的混合辅助角色。
强烈建议永远不要在托管域控制器的虚拟机上配置混合辅助角色扩展。 安全最佳做法不建议进行此类设置,因为通过 Azure 自动化作业将域控制器暴露给潜在攻击途径具有高风险。 域控制器应受到高度保护并与非基本服务隔离,以防止未经授权访问并维护 Active Directory 域服务 (ADDS) 环境的完整性。
身份验证证书和标识
对于 Runbook 身份验证,建议使用托管标识。 Microsoft Entra ID 的托管标识让你的 runbook 可以轻松访问其他受 Microsoft Entra 保护的资源,如 Azure 密钥保管库。 标识由 Azure 平台托管,无需设置或转交任何机密。 有关 Azure 自动化中的托管标识的详细信息,请参阅 Azure 自动化的托管标识
可以使用两种类型的托管标识对自动化帐户进行身份验证:
- 系统分配的标识与你的应用程序相绑定,如果删除应用,标识也会被删除。 一个应用只能具有一个系统分配的标识。
- 用户分配的标识是可分配给你的应用的独立 Azure 资源。 一个应用可以具有多个用户分配的标识。
有关更多详细信息,请参阅托管标识最佳做法建议。
定期轮换 Azure 自动化密钥。 密钥重新生成阻止日后的 DSC 或混合辅助角色节点注册使用以前的密钥。 建议使用基于扩展的混合辅助角色,因为它使用 Microsoft Entra 身份验证而不是自动化密钥。 Microsoft Entra ID 集中控制和管理标识与资源凭据。
数据安全
保护 Azure 自动化中的资产,包括凭据、证书、连接和加密的变量。 这些资产在 Azure 自动化中受到了多级加密的保护。 默认情况下,数据使用 Azure 管理的密钥进行加密。 为了进一步控制加密密钥,可以提供客户管理的密钥,用于对自动化资产进行加密。 这些密钥必须存在于 Azure 密钥保管库 中,以便自动化服务能够访问密钥。 请参阅使用客户管理的密钥加密安全资产。
不要打印作业输出中的任何凭据或证书的详细信息。 作为低特权用户的自动化作业操作员可以查看敏感信息。
维护自动化配置(如 Runbook 和资产)的有效备份,确保备份经过验证并受保护,以在意外事件发生后保持业务连续性。
Azure 自动化策略
查看适用于 Azure 自动化的 Azure Policy 建议并采取适当的措施。 请参阅 Azure 自动化策略。
后续步骤
- 若要了解如何使用 Azure 基于角色的访问控制 (Azure RBAC),请参阅在 Azure 自动化中管理角色权限和安全性。
- 有关 Azure 如何保护隐私和保障数据安全的详细信息,请参阅 Azure 自动化数据安全。
- 若要了解如何将自动化帐户配置为使用加密,请参阅加密 Azure 自动化中的安全资产。
- 有关运行时版本支持、停用和安全更新的信息,请参阅Azure 自动化的语言运行时支持和停用策略。