下文详细说明了 Azure Policy 法规合规性内置计划定义如何映射到 Microsoft 云安全基准的合规性域和控制措施。 有关此合规性标准的详细信息,请参阅 Microsoft 云安全基准。 如需了解所有权,请查看策略类型和云中责任分担。
以下映射是到 Microsoft 云安全基准控制的映射。 许多控制措施都是使用 Azure Policy 计划定义实现的。 若要查看完整计划定义,请在 Azure 门户中打开“策略”,并选择“定义”页。 然后,找到并选择 Microsoft 云安全基准法规合规性内置计划定义。
重要
下面的每个控件都与一个或多个 Azure Policy 定义关联。 这些策略有助于评估控制的合规性;但是,控制与一个或多个策略之间通常不是一对一或完全匹配。 因此,Azure Policy 中的符合性仅引用策略定义本身;这并不能确保你完全符合某个控制措施的所有要求。 此外,符合性标准包含目前未由任何 Azure Policy 定义处理的控件。 因此,Azure Policy 中的符合性只是整体符合性状态的部分视图。 此符合性标准的符合性域、控制措施和 Azure Policy 定义之间的关联可能会随着时间的推移而发生变化。 若要查看更改历史记录,请参阅 GitHub 提交历史记录。
网络安全
建立网络分段边界
ID:Microsoft 云安全基准 NS-1 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应限制在与虚拟机关联的网络安全组上使用所有网络端口 | Azure 安全中心已识别到网络安全组的某些入站规则过于宽松。 入站规则不应允许从“任何”或“Internet”范围进行访问。 这有可能使得攻击者能够将你的资源定为攻击目标。 | AuditIfNotExists、Disabled | 3.0.0 |
面向 Internet 的虚拟机应使用网络安全组进行保护 | 使用网络安全组 (NSG) 限制对 VM 的访问,以此防范 VM 遭受潜在威胁。 如需详细了解如何使用 NSG 控制流量,请访问 https://docs.azure.cn/virtual-network/network-security-groups-overview | AuditIfNotExists、Disabled | 3.0.0 |
应使用网络安全组来保护非面向 Internet 的虚拟机 | 使用网络安全组 (NSG) 限制对 VM 的访问,以此防范非面向 Internet 的 VM 遭受潜在威胁。 如需详细了解如何使用 NSG 控制流量,请访问 https://docs.azure.cn/virtual-network/network-security-groups-overview | AuditIfNotExists、Disabled | 3.0.0 |
子网应与网络安全组关联 | 使用网络安全组 (NSG) 限制对 VM 的访问,以此防范子网遭受潜在威胁。 NSG 包含一系列访问控制列表 (ACL) 规则,这些规则可以允许或拒绝流向子网的网络流量。 | AuditIfNotExists、Disabled | 3.0.0 |
使用网络控制保护云服务
ID:Microsoft 云安全基准 NS-2 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
[已弃用]:认知服务应使用专用链接 | 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。 将专用终结点映射到认知服务将减少数据泄露的可能性。 有关专用链接的详细信息,请访问:https://docs.azure.cn/private-link/。 | Audit、Disabled | 3.0.1-deprecated |
API 管理服务应使用虚拟网络 | Azure 虚拟网络部署提供了增强的安全性和隔离,并允许你将 API 管理服务放置在不可经 Internet 路由的网络(你控制对其的访问权限)中。 然后,可以使用各种 VPN 技术将这些网络连接到本地网络,这样就能够访问网络中的和/或本地的后端服务。 可以将开发人员门户和 API 网关配置为可以从 Internet 访问或只能在虚拟网络内访问。 | Audit、Deny、Disabled | 1.0.2 |
API 管理应禁用对服务配置终结点的公用网络访问 | 要提高 API 管理服务的安全性,请限制与服务配置终结点的连接,例如直接访问管理 API、Git 配置管理终结点,或自承载网关配置终结点。 | AuditIfNotExists、Disabled | 1.0.1 |
应用程序配置应使用专用链接 | 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。 通过将专用终结点映射到应用配置实例(而不是整个服务),还可以防范数据泄露风险。 有关详细信息,请访问:https://docs.azure.cn/azure-app-configuration/concept-private-endpoint。 | AuditIfNotExists、Disabled | 1.0.2 |
应在 Kubernetes 服务上定义经授权的 IP 范围 | 通过仅向特定范围内的 IP 地址授予 API 访问权限,来限制对 Kubernetes 服务管理 API 的访问。 建议将访问权限限制给已获授权的 IP 范围,以确保只有受允许网络中的应用程序可以访问群集。 | Audit、Disabled | 2.0.1 |
Azure AI 服务资源应限制网络访问 | 通过限制网络访问,可以确保只有允许的网络才能访问该服务。 这可以通过配置网络规则来实现,从其确保只有允许的网络中的应用程序才可以访问 Azure AI 服务。 | Audit、Deny、Disabled | 3.2.0 |
Azure AI 服务资源应使用 Azure 专用链接 | 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台通过 Azure 主干网络处理使用者和服务之间的连接,可降低数据泄露风险。 有关专用链接的详细信息,请访问 https://docs.azure.cn/private-link/private-link-overview | Audit、Disabled | 1.0.0 |
Azure Cache for Redis 应使用专用链接 | 通过专用终结点,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 通过将专用终结点映射到 Azure Cache for Redis 实例,可以降低数据泄露风险。 有关详细信息,请访问:https://docs.azure.cn/azure-cache-for-redis/cache-private-link。 | AuditIfNotExists、Disabled | 1.0.0 |
Azure Cosmos DB 帐户应有防火墙规则 | 应在 Azure Cosmos DB 帐户上定义防火墙规则,以防止来自未经授权的源的流量。 至少定义了一个 IP 规则且启用了虚拟网络筛选器的帐户才会被视为合规。 禁用公共访问的帐户也被视为合规。 | Audit、Deny、Disabled | 2.1.0 |
Azure Cosmos DB 应禁用公用网络访问 | 禁用公用网络访问可确保 CosmosDB 帐户不会在公共 Internet 上公开,从而提高安全性。 创建专用终结点可以限制 CosmosDB 帐户的公开。 有关详细信息,请访问:https://docs.azure.cn/cosmos-db/how-to-configure-private-endpoints#blocking-public-network-access-during-account-creation。 | Audit、Deny、Disabled | 1.0.0 |
Azure Databricks 群集应禁用公共 IP | 在 Azure Databricks 工作区中禁用群集的公共 IP 可确保群集不会在公共 Internet 上公开,从而提高安全性。 有关详细信息,请访问:https://docs.azure.cn/databricks/security/secure-cluster-connectivity。 | Audit、Deny、Disabled | 1.0.1 |
Azure Databricks 工作区应位于虚拟网络中 | Azure 虚拟网络增强了 Azure Databricks 工作区的安全性和隔离性,并提供子网、访问控制策略和其他功能来进一步限制访问。 有关详细信息,请访问:https://docs.azure.cn/databricks/administration-guide/cloud-configurations/azure/vnet-inject。 | Audit、Deny、Disabled | 1.0.2 |
Azure Databricks 工作区应禁用公用网络访问 | 禁用公用网络访问可确保资源不会在公共 Internet 上公开,从而提高了安全性。 你可以通过创建专用终结点来控制资源的公开。 有关详细信息,请访问:https://docs.azure.cn/databricks/administration-guide/cloud-configurations/azure/private-link。 | Audit、Deny、Disabled | 1.0.1 |
Azure Databricks 工作区应使用专用链接 | 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。 通过将专用终结点映射到 Azure Databricks 工作区,可以降低数据泄露风险。 有关专用链接的详细信息,请访问:https://docs.azure.cn/databricks/administration-guide/cloud-configurations/azure/private-link-standard#create-the-workspace-and-private-endpoints-in-the-azure-portal-ui。 | Audit、Disabled | 1.0.2 |
Azure 事件网格域应使用专用链接 | 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。 通过将专用终结点映射到事件网格域(而不是整个服务),还可以防范数据泄露风险。 有关详细信息,请访问:https://docs.azure.cn/event-grid/configure-private-endpoints。 | Audit、Disabled | 1.0.2 |
Azure 事件网格主题应使用专用链接 | 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。 通过将专用终结点映射到事件网格主题(而不是整个服务),还可以防范数据泄露风险。 有关详细信息,请访问:https://docs.azure.cn/event-grid/configure-private-endpoints。 | Audit、Disabled | 1.0.2 |
Azure 密钥保管库应启用防火墙 | 启用密钥保管库防火墙,以便默认情况下,任何公共 IP 都无法访问密钥保管库。 (可选)可以配置特定的 IP 范围来限制对这些网络的访问。 了解详细信息:https://docs.azure.cn/key-vault/general/network-security | Audit、Deny、Disabled | 3.2.1 |
Azure 密钥保管库应使用专用链接 | 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。 通过将专用终结点映射到密钥保管库,可以降低数据泄露风险。 有关专用链接的详细信息,请访问:https://docs.azure.cn/key-vault/general/private-link-service。 | [parameters('audit_effect')] | 1.2.1 |
Azure 机器学习计算应位于虚拟网络中 | Azure 虚拟网络增强了 Azure 机器学习计算群集和实例的安全性和隔离性,并提供子网、访问控制策略和其他功能来进一步限制访问。 为计算配置虚拟网络后,该计算不可公开寻址,并且只能从虚拟网络中的虚拟机和应用程序进行访问。 | Audit、Disabled | 1.0.1 |
Azure 机器学习工作区应禁用公用网络访问 | 禁用公用网络访问可确保机器学习工作区不会在公共 Internet 上公开,从而提高安全性。 你可以通过创建专用终结点来控制工作区的公开。 有关详细信息,请参阅:https://docs.azure.cn/machine-learning/how-to-configure-private-link?view=azureml-api-2&tabs=azure-portal。 | Audit、Deny、Disabled | 2.0.1 |
Azure 机器学习工作区应使用专用链接 | 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。 通过将专用终结点映射到 Azure 机器学习工作区,可以降低数据泄露风险。 有关专用链接的详细信息,请访问:https://docs.azure.cn/machine-learning/how-to-configure-private-link。 | Audit、Disabled | 1.0.0 |
Azure SignalR 服务应使用专用链接 | 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。 通过将专用终结点映射到 Azure SignalR 服务资源而不是整个服务,可降低数据泄露风险。 有关专用链接的详细信息,请访问:https://docs.azure.cn/azure-signalr/howto-private-endpoints。 | Audit、Disabled | 1.0.0 |
Azure SQL 托管实例应禁用公用网络访问 | 禁用 Azure SQL 托管实例上的公用网络访问(公共终结点)可确保只能从其虚拟网络内部或专用终结点访问它们,从而提高安全性。 若要了解有关公共网络访问的详细信息,请访问 https://docs.azure.cn/azure-sql/managed-instance/public-endpoint-configure。 | Audit、Deny、Disabled | 1.0.0 |
容器注册表不得允许无限制的网络访问 | 默认情况下,Azure 容器注册表接受来自任何网络上的主机的 Internet 连接。 为了防止注册表受到潜在的威胁,只允许来自特定的专用终结点、公共 IP 地址或地址范围的访问。 如果注册表没有配置网络规则,它将出现在不正常资源中。 有关容器注册表网络规则的详细信息,请访问:https://docs.azure.cn/container-registry/container-registry-access-selected-networks。 | Audit、Deny、Disabled | 2.0.0 |
容器注册表应使用专用链接 | 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。通过将专用终结点映射到容器注册表,而不是整个服务,还可以防范数据泄露风险。 有关详细信息,请访问:https://docs.azure.cn/container-registry/container-registry-private-link。 | Audit、Disabled | 1.0.1 |
CosmosDB 帐户应使用专用链接 | 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。 通过将专用终结点映射到 CosmosDB 帐户,可以降低数据泄露风险。 有关专用链接的详细信息,请访问:https://docs.azure.cn/cosmos-db/how-to-configure-private-endpoints。 | Audit、Disabled | 1.0.0 |
应启用 Azure SQL 数据库上的专用终结点连接 | 专用终结点连接通过启用到 Azure SQL 数据库的专用连接来加强安全通信。 | Audit、Disabled | 1.1.0 |
应为 MariaDB 服务器启用专用终结点 | 专用终结点连接通过启用到 Azure Database for MariaDB 的专用连接来加强安全通信。 配置专用终结点连接,以启用对仅来自已知网络的流量的访问,并防止访问所有其他 IP 地址,包括 Azure 内的地址。 | AuditIfNotExists、Disabled | 1.0.2 |
应为 MySQL 服务器启用专用终结点 | 专用终结点连接通过启用到 Azure Database for MySQL 的专用连接来加强安全通信。 配置专用终结点连接,以启用对仅来自已知网络的流量的访问,并防止访问所有其他 IP 地址,包括 Azure 内的地址。 | AuditIfNotExists、Disabled | 1.0.2 |
应为 PostgreSQL 服务器启用专用终结点 | 专用终结点连接通过启用到 Azure Database for PostgreSQL 的专用连接来加强安全通信。 配置专用终结点连接,以启用对仅来自已知网络的流量的访问,并防止访问所有其他 IP 地址,包括 Azure 内的地址。 | AuditIfNotExists、Disabled | 1.0.2 |
应禁用 Azure SQL 数据库上的公用网络访问 | 禁用公用网络访问属性可确保只能从专用终结点访问 Azure SQL 数据库,从而提高安全性。 此配置拒绝所有符合基于 IP 或虚拟网络的防火墙规则的登录。 | Audit、Deny、Disabled | 1.1.0 |
应为 MariaDB 服务器禁用公用网络访问 | 禁用公用网络访问属性以提高安全性,并确保只能从专用终结点访问 Azure Database for MariaDB。 此配置严格禁止访问 Azure IP 范围之外的任何公共地址空间,并拒绝与 IP 或基于虚拟网络的防火墙规则匹配的所有登录。 | Audit、Deny、Disabled | 2.0.0 |
应为 MySQL 服务器禁用公用网络访问 | 禁用公用网络访问属性以提高安全性,并确保只能从专用终结点访问 Azure Database for MySQL。 此配置严格禁止访问 Azure IP 范围之外的任何公共地址空间,并拒绝与 IP 或基于虚拟网络的防火墙规则匹配的所有登录。 | Audit、Deny、Disabled | 2.0.0 |
应为 PostgreSQL 服务器禁用公用网络访问 | 禁用公用网络访问属性以提高安全性,并确保只能从专用终结点访问 Azure Database for PostgreSQL。 此配置禁止访问 Azure IP 范围之外的任何公共地址空间,并拒绝与 IP 或基于虚拟网络的防火墙规则匹配的所有登录。 | Audit、Deny、Disabled | 2.0.1 |
应限制对存储帐户的网络访问 | 应限制对存储帐户的网络访问。 配置网络规则,以便只允许来自允许的网络的应用程序访问存储帐户。 若要允许来自特定 Internet 或本地客户端的连接,可以向来自特定 Azure 虚拟网络的流量或公共 Internet IP 地址范围授予访问权限 | Audit、Deny、Disabled | 1.1.1 |
存储帐户应使用虚拟网络规则来限制网络访问 | 使用虚拟网络规则作为首选方法(而不使用基于 IP 的筛选),保护存储帐户免受潜在威胁危害。 禁用基于 IP 的筛选可以阻止公共 IP 访问你的存储帐户。 | Audit、Deny、Disabled | 1.0.1 |
存储帐户应使用专用链接 | 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。 将专用终结点映射到存储帐户可以降低数据泄露风险。 有关专用链接的详细信息,请访问 https://docs.azure.cn/private-link/private-link-overview。 | AuditIfNotExists、Disabled | 2.0.0 |
在企业网络边缘部署防火墙
ID:Microsoft 云安全基准 NS-3 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应禁用虚拟机上的 IP 转发 | 在虚拟机的 NIC 上启用 IP 转发可让该计算机接收发往其他目标的流量。 极少需要启用 IP 转发(例如,将 VM 用作网络虚拟设备时),因此,此策略应由网络安全团队评审。 | AuditIfNotExists、Disabled | 3.0.0 |
应通过即时网络访问控制来保护虚拟机的管理端口 | 建议通过 Azure 安全中心监视可能的网络适时 (JIT) 访问 | AuditIfNotExists、Disabled | 3.0.0 |
应关闭虚拟机上的管理端口 | 打开远程管理端口会使 VM 暴露在较高级别的 Internet 攻击风险之下。 此类攻击试图暴力破解凭据,来获取对计算机的管理员访问权限。 | AuditIfNotExists、Disabled | 3.0.0 |
检测并禁用不安全的服务和协议
ID:Microsoft 云安全基准 NS-8 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应用服务应用应使用最新的 TLS 版本 | 由于安全漏洞,会定期发布针对 TLS 的较新版本,包括其他功能并提高速度。 升级到应用服务应用的最新 TLS 版本,以利用安全修补程序(如果有)和/或最新版本的新功能。 | AuditIfNotExists、Disabled | 2.1.0 |
函数应用应使用最新 TLS 版本 | 由于安全漏洞,会定期发布针对 TLS 的较新版本,包括其他功能并提高速度。 升级到函数应用的最新 TLS 版本,以利用安全修补程序(如果有)和/或最新版本的新功能。 | AuditIfNotExists、Disabled | 2.1.0 |
标识管理
使用集中式标识和身份验证系统
ID:Microsoft 云安全基准 IM-1 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
[预览]:Azure PostgreSQL 灵活服务器应启用“仅限 Microsoft Entra 身份验证” | 通过禁用本地身份验证方法并允许“仅限 Microsoft Entra 身份验证”,可确保 Azure PostgreSQL 灵活服务器只能由 Microsoft Entra 标识访问,从而提高安全性。 | Audit、Disabled | 1.0.0-preview |
应为 PostgreSQL 服务器预配 Microsoft Entra 管理员 | 对 PostgreSQL 服务器的 Microsoft Entra 管理员预配进行审核来启用 Microsoft Entra 身份验证。 使用 Microsoft Entra 身份验证可简化权限管理,还可集中进行数据库用户和其他 Microsoft 服务的标识管理 | AuditIfNotExists、Disabled | 1.0.1 |
应该为 SQL 服务器预配 Azure Active Directory 管理员 | 审核确认已为 SQL Server 预配了 Azure Active Directory 管理员以启用 Azure AD 身份验证。 使用 Azure AD 身份验证可以简化权限管理,以及集中化数据库用户和其他 Azure 服务的标识管理 | AuditIfNotExists、Disabled | 1.0.0 |
Azure AI Services 资源应禁用密钥访问权限(禁用本地身份验证) | 建议禁用密钥访问(本地身份验证),以确保安全。 通常用于开发/测试的 Azure OpenAI Studio 需要密钥访问,如果禁用密钥访问,则会无法使用。 禁用后,Microsoft Entra ID 将成为唯一的访问方法,该方法允许采用最低权限原则和精细控制。 了解详细信息:https://docs.azure.cn/ai-services/authentication | Audit、Deny、Disabled | 1.1.0 |
Azure 机器学习计算应禁用本地身份验证方法 | 禁用本地身份验证方法可确保机器学习计算需要专用于身份验证的 Azure Active Directory 标识,从而提高安全性。 有关详细信息,请访问:https://docs.azure.cn/machine-learning/security-controls-policy。 | Audit、Deny、Disabled | 2.1.0 |
Azure SQL 数据库应启用仅 Microsoft Entra 身份验证 | 要求 Azure SQL 逻辑服务器使用纯 Microsoft Entra 身份验证。 此策略不会阻止创建启用本地身份验证的服务器。 它确实会阻止在创建资源后启用本地身份验证。 考虑使用“纯 Microsoft Entra 身份验证”计划,而不是同时要求使用这两者。 有关详细信息,请访问:https://docs.azure.cn/azure-sql/database/authentication-azure-ad-only-authentication-create-server。 | Audit、Deny、Disabled | 1.0.0 |
Azure SQL 数据库应在创建期间启用纯 Microsoft Entra 身份验证 | 要求使用纯 Microsoft Entra 身份验证创建 Azure SQL 逻辑服务器。 此策略不会阻止在创建资源后重新启用本地身份验证。 考虑使用“纯 Microsoft Entra 身份验证”计划,而不是同时要求使用这两者。 有关详细信息,请访问:https://docs.azure.cn/azure-sql/database/authentication-azure-ad-only-authentication-create-server。 | Audit、Deny、Disabled | 1.2.0 |
Azure SQL 托管实例应启用仅 Microsoft Entra 身份验证 | 要求 Azure SQL 托管实例使用纯 Microsoft Entra 身份验证。 此策略不会阻止创建启用本地身份验证的 Azure SQL 托管实例。 它确实会阻止在创建资源后启用本地身份验证。 考虑使用“纯 Microsoft Entra 身份验证”计划,而不是同时要求使用这两者。 有关详细信息,请访问:https://docs.azure.cn/azure-sql/database/authentication-azure-ad-only-authentication-create-server。 | Audit、Deny、Disabled | 1.0.0 |
Azure SQL 托管实例应在创建期间启用纯 Microsoft Entra 身份验证 | 要求使用纯 Microsoft Entra 身份验证创建 Azure SQL 托管实例。 此策略不会阻止在创建资源后重新启用本地身份验证。 考虑使用“纯 Microsoft Entra 身份验证”计划,而不是同时要求使用这两者。 有关详细信息,请访问:https://docs.azure.cn/azure-sql/database/authentication-azure-ad-only-authentication-create-server。 | Audit、Deny、Disabled | 1.2.0 |
Cosmos DB 数据库帐户应禁用本地身份验证方法 | 禁用本地身份验证方法可确保 Cosmos DB 数据库帐户仅将 Azure Active Directory 标识作为身份验证方法,从而提高安全性。 有关详细信息,请访问:https://docs.azure.cn/cosmos-db/how-to-setup-rbac#disable-local-auth。 | Audit、Deny、Disabled | 1.1.0 |
Service Fabric 群集应仅使用 Azure Active Directory 进行客户端身份验证 | 审核 Service Fabric 中仅通过 Azure Active Directory 进行客户端身份验证 | Audit、Deny、Disabled | 1.1.0 |
存储帐户应阻止共享密钥访问 | 审核 Azure Active Directory (Azure AD) 授予存储帐户请求权限的要求。 默认情况下,可以使用 Azure Active Directory 凭据对请求进行授权,或使用帐户访问密钥对其进行共享密钥授权。 在这两种类型的授权中,与共享密钥相比,Azure AD 提供更高级别的安全性和易用性,是 Microsoft 推荐的授权方法。 | Audit、Deny、Disabled | 2.0.0 |
Synapse 工作区应该启用纯 Microsoft Entra 身份验证 | 要求 Synapse 工作区使用纯 Microsoft Entra 身份验证。 此策略不会阻止创建启用本地身份验证的工作区。 它确实会阻止在创建资源后启用本地身份验证。 考虑使用“纯 Microsoft Entra 身份验证”计划,而不是同时要求使用这两者。 有关详细信息,请访问:https://docs.azure.cn/azure-sql/database/authentication-azure-ad-only-authentication-create-server。 | Audit、Deny、Disabled | 1.0.0 |
Synapse 工作区应在工作区创建期间仅使用 Microsoft Entra 标识进行身份验证 | 要求使用纯 Microsoft Entra 身份验证创建 Synapse 工作区。 此策略不会阻止在创建资源后重新启用本地身份验证。 考虑使用“纯 Microsoft Entra 身份验证”计划,而不是同时要求使用这两者。 有关详细信息,请访问:https://docs.azure.cn/azure-sql/database/authentication-azure-ad-only-authentication-create-server。 | Audit、Deny、Disabled | 1.2.0 |
VPN 网关应仅对点到站点用户使用 Azure Active Directory (Azure AD) 身份验证 | 禁用本地身份验证方法可确保 VPN 网关仅使用 Azure Active Directory 标识进行身份验证,从而提高安全性。 在 https://docs.azure.cn/vpn-gateway/openvpn-azure-ad-tenant 详细了解 Azure AD 身份验证 | Audit、Deny、Disabled | 1.0.0 |
以安全方式自动管理应用程序标识
ID:Microsoft 云安全基准 IM-3 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应用服务应用应使用托管标识 | 使用托管标识以实现增强的身份验证安全性 | AuditIfNotExists、Disabled | 3.0.0 |
函数应用应使用托管标识 | 使用托管标识以实现增强的身份验证安全性 | AuditIfNotExists、Disabled | 3.0.0 |
应使用系统分配的托管标识来部署虚拟机的来宾配置扩展 | 来宾配置扩展需要系统分配的托管标识。 如果安装了来宾配置扩展,但没有系统分配的托管标识,则此策略作用域内的 Azure 虚拟机是不合规的。 有关详细信息,请访问 https://docs.azure.cn/governance/policy/concepts/guest-configuration | AuditIfNotExists、Disabled | 1.0.1 |
对服务器和服务进行身份验证
ID:Microsoft 云安全基准 IM-4 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
API 管理对 API 后端的调用应进行身份验证 | 从 API 管理对后端的调用应使用某种形式的身份验证,无论是通过证书还是凭据。 不适用于 Service Fabric 后端。 | 审核、已禁用、拒绝 | 1.0.1 |
API 管理对 API 后端的调用不应绕过证书指纹或名称验证 | 要提升 API 安全性,API 管理应验证所有 API 调用的后端服务器证书。 启用 SSL 证书指纹和名称验证。 | 审核、已禁用、拒绝 | 1.0.2 |
Azure SQL 数据库应运行 TLS 版本 1.2 或更高版本 | 将 TLS 版本设置为 1.2 或更高版本,可以确保只能从使用 TLS 1.2 或更高版本的客户端访问 Azure SQL 数据库,从而提高安全性。 不建议使用低于 1.2 的 TLS 版本,因为它们存在有据可查的安全漏洞。 | 审核、已禁用、拒绝 | 2.0.0 |
使用强身份验证控制
ID:Microsoft 云安全基准 IM-6 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
对 Azure 资源拥有所有者权限的帐户应启用 MFA | 为了防止帐户或资源出现违规问题,应为所有拥有所有者权限的订阅帐户启用多重身份验证 (MFA)。 | AuditIfNotExists、Disabled | 1.0.0 |
对 Azure 资源拥有读取权限的帐户应启用 MFA | 为了防止帐户或资源出现违规问题,应为所有拥有读取特权的订阅帐户启用多重身份验证 (MFA)。 | AuditIfNotExists、Disabled | 1.0.0 |
对 Azure 资源拥有写入权限的帐户应启用 MFA | 为了防止帐户或资源出现违规问题,应为所有拥有写入特权的订阅帐户启用多重身份验证 (MFA)。 | AuditIfNotExists、Disabled | 1.0.0 |
限制凭据和机密的泄露
ID:Microsoft 云安全基准 IM-8 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
API 管理最低 API 版本应设置为 2019-12-01 或更高版本 | 若要阻止服务机密与只读用户共享,应将最低 API 版本设置为 2019-12-01 或更高版本。 | Audit、Deny、Disabled | 1.0.1 |
API 管理机密命名值应存储在 Azure Key Vault 中 | 命名值是每个 API 管理服务中名称/值对的集合。 机密值可以存储为 API 管理中的加密文本(自定义机密),也可以通过引用 Azure 密钥保管库中的机密进行存储。 要提高 API 管理和机密的安全性,请从 Azure Key Vault 引用机密命名值。 Azure 密钥保管库支持精细的访问管理和机密轮换策略。 | 审核、已禁用、拒绝 | 1.0.2 |
特权访问
隔离和限制高度特权/管理用户
ID:Microsoft 云安全基准 PA-1 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
只多只为订阅指定 3 个所有者 | 建议最多指定 3 个订阅所有者,以减少可能出现的已遭入侵的所有者做出的违规行为。 | AuditIfNotExists、Disabled | 3.0.0 |
应删除对 Azure 资源拥有所有者权限的已封锁帐户 | 应从订阅中删除拥有所有者权限的已弃用帐户。 已弃用帐户是已阻止登录的帐户。 | AuditIfNotExists、Disabled | 1.0.0 |
应删除对 Azure 资源拥有所有者权限的来宾帐户 | 为了防止发生未受监视的访问,应从订阅中删除拥有所有者权限的外部帐户。 | AuditIfNotExists、Disabled | 1.0.0 |
应为订阅分配了多个所有者 | 建议指定多个订阅所有者,这样才会有管理员访问冗余。 | AuditIfNotExists、Disabled | 3.0.0 |
避免对帐户和权限的长期访问
ID:Microsoft 云安全基准 PA-2 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应通过即时网络访问控制来保护虚拟机的管理端口 | 建议通过 Azure 安全中心监视可能的网络适时 (JIT) 访问 | AuditIfNotExists、Disabled | 3.0.0 |
定期评审和协调用户访问权限
ID:Microsoft 云安全基准 PA-4 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应删除对 Azure 资源拥有所有者权限的已封锁帐户 | 应从订阅中删除拥有所有者权限的已弃用帐户。 已弃用帐户是已阻止登录的帐户。 | AuditIfNotExists、Disabled | 1.0.0 |
应删除对 Azure 资源拥有读取和写入权限的已封锁帐户 | 应从订阅中删除弃用的帐户。 已弃用帐户是已阻止登录的帐户。 | AuditIfNotExists、Disabled | 1.0.0 |
应删除对 Azure 资源拥有所有者权限的来宾帐户 | 为了防止发生未受监视的访问,应从订阅中删除拥有所有者权限的外部帐户。 | AuditIfNotExists、Disabled | 1.0.0 |
应删除对 Azure 资源拥有读取权限的来宾帐户 | 应从订阅中删除拥有读取特权的外部帐户,以防发生未受监视的访问。 | AuditIfNotExists、Disabled | 1.0.0 |
应删除对 Azure 资源拥有写入权限的来宾帐户 | 应从订阅中删除拥有写入特权的外部帐户,以防发生未受监视的访问。 | AuditIfNotExists、Disabled | 1.0.0 |
遵循 Just Enough Administration(最小特权)原则
ID:Microsoft 云安全基准 PA-7 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
API 管理订阅的范围不应为所有 API | API 管理订阅的范围应限定为产品或单个 API,而不是所有 API,后者可能会导致过多的数据泄露。 | 审核、已禁用、拒绝 | 1.1.0 |
审核自定义 RBAC 角色的使用情况 | 审核“所有者、参与者、读者”等内置角色而不是容易出错的自定义 RBAC 角色。 使用自定义角色被视为例外,需要进行严格的审查和威胁建模 | Audit、Disabled | 1.0.1 |
应在 Kubernetes 服务中使用基于角色的访问控制 (RBAC) | 若要针对用户可执行的操作提供精细筛选,请使用 Azure 基于角色的访问控制 (RBAC) 来管理 Kubernetes 服务群集中的权限并配置相关授权策略。 | Audit、Disabled | 1.0.3 |
数据保护
监视敏感数据的异常情况和威胁
ID:Microsoft 云安全基准 DP-2 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应启用适用于 Azure SQL 数据库服务器的 Azure Defender | Azure Defender for SQL 提供了以下功能:呈现和缓解潜在数据库漏洞、检测可能指示对 SQL 数据库产生威胁的异常活动,以及发现敏感数据并对其进行分类。 | AuditIfNotExists、Disabled | 1.0.2 |
应为未受保护的 SQL 托管实例启用 Azure Defender for SQL | 审核所有未启用高级数据安全的 SQL 托管实例。 | AuditIfNotExists、Disabled | 1.0.2 |
加密传输中的敏感数据
ID:Microsoft 云安全基准 DP-3 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
API 管理 API 应仅使用加密协议 | 为了确保传输中数据的安全性,API 应只能通过加密协议(如 HTTPS 或 WSS)使用。 避免使用不安全的协议,例如 HTTP 或 WS。 | 审核、已禁用、拒绝 | 2.0.2 |
只应通过 HTTPS 访问应用服务应用 | 使用 HTTPS 可确保执行服务器/服务身份验证服务,并保护传输中的数据不受网络层窃听攻击威胁。 | 审核、已禁用、拒绝 | 4.0.0 |
应用服务应用应仅需要 FTPS | 启用“FTPS 强制实施”以增强安全性。 | AuditIfNotExists、Disabled | 3.0.0 |
应用服务应用应使用最新的 TLS 版本 | 由于安全漏洞,会定期发布针对 TLS 的较新版本,包括其他功能并提高速度。 升级到应用服务应用的最新 TLS 版本,以利用安全修补程序(如果有)和/或最新版本的新功能。 | AuditIfNotExists、Disabled | 2.1.0 |
Azure SQL 数据库应运行 TLS 版本 1.2 或更高版本 | 将 TLS 版本设置为 1.2 或更高版本,可以确保只能从使用 TLS 1.2 或更高版本的客户端访问 Azure SQL 数据库,从而提高安全性。 不建议使用低于 1.2 的 TLS 版本,因为它们存在有据可查的安全漏洞。 | 审核、已禁用、拒绝 | 2.0.0 |
应为 MySQL 数据库服务器启用“强制 SSL 连接” | Azure Database for MySQL 支持使用安全套接字层 (SSL) 将 Azure Database for MySQL 服务器连接到客户端应用程序。 通过在数据库服务器与客户端应用程序之间强制实施 SSL 连接,可以加密服务器与应用程序之间的数据流,有助于防止“中间人”攻击。 此配置强制始终启用 SSL 以访问数据库服务器。 | Audit、Disabled | 1.0.1 |
应为 PostgreSQL 数据库服务器启用“强制 SSL 连接” | Azure Database for MySQL 支持使用安全套接字层 (SSL) 将 Azure Database for MySQL 服务器连接到客户端应用程序。 通过在数据库服务器与客户端应用程序之间强制实施 SSL 连接,可以加密服务器与应用程序之间的数据流,有助于防止“中间人”攻击。 此配置强制始终启用 SSL 以访问数据库服务器。 | Audit、Disabled | 1.0.1 |
只应通过 HTTPS 访问函数应用 | 使用 HTTPS 可确保执行服务器/服务身份验证服务,并保护传输中的数据不受网络层窃听攻击威胁。 | 审核、已禁用、拒绝 | 5.0.0 |
函数应用应仅需要 FTPS | 启用“FTPS 强制实施”以增强安全性。 | AuditIfNotExists、Disabled | 3.0.0 |
函数应用应使用最新 TLS 版本 | 由于安全漏洞,会定期发布针对 TLS 的较新版本,包括其他功能并提高速度。 升级到函数应用的最新 TLS 版本,以利用安全修补程序(如果有)和/或最新版本的新功能。 | AuditIfNotExists、Disabled | 2.1.0 |
Kubernetes 群集应只可通过 HTTPS 进行访问 | 使用 HTTPS 可确保执行身份验证,并保护传输中的数据不受网络层窃听攻击威胁。 此功能目前已面向 Kubernetes 服务 (AKS) 正式发布,并面向已启用 Azure Arc 的 Kubernetes 提供预览版。 有关详细信息,请访问 https://docs.azure.cn/governance/policy/concepts/policy-for-kubernetes | audit、Audit、deny、Deny、disabled、Disabled | 8.2.0 |
只能与 Azure Cache for Redis 建立安全连接 | 审核是否仅启用通过 SSL 来与 Azure Redis 缓存建立连接。 使用安全连接可确保服务器和服务之间的身份验证并保护传输中的数据免受中间人攻击、窃听攻击和会话劫持等网络层攻击 | Audit、Deny、Disabled | 1.0.0 |
应启用安全传输到存储帐户 | 审核存储帐户中安全传输的要求。 安全传输选项会强制存储帐户仅接受来自安全连接 (HTTPS) 的请求。 使用 HTTPS 可确保服务器和服务之间的身份验证并保护传输中的数据免受中间人攻击、窃听和会话劫持等网络层攻击 | Audit、Deny、Disabled | 2.0.0 |
默认启用静态数据加密
ID:Microsoft 云安全基准 DP-4 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应为 MySQL 服务器预配 Microsoft Entra 管理员 | 对 MySQL 服务器的 Microsoft Entra 管理员预配进行审核来启用 Microsoft Entra 身份验证。 使用 Microsoft Entra 身份验证可简化权限管理,还可集中进行数据库用户和其他 Microsoft 服务的标识管理 | AuditIfNotExists、Disabled | 1.1.1 |
自动化帐户变量应加密 | 存储敏感数据时,请务必启用自动化帐户变量资产加密 | Audit、Deny、Disabled | 1.1.0 |
Service Fabric 群集应将 ClusterProtectionLevel 属性设置为 EncryptAndSign | Service Fabric 使用主要群集证书为节点之间的通信提供三个保护级别(None、Sign 和 EncryptAndSign)。 设置保护级别以确保所有节点到节点消息均已进行加密和数字签名 | Audit、Deny、Disabled | 1.1.0 |
应在 SQL 数据库上启用透明数据加密 | 应启用透明数据加密以保护静态数据并满足符合性要求 | AuditIfNotExists、Disabled | 2.0.0 |
虚拟机和虚拟机规模集应启用主机中加密 | 使用主机中加密可对虚拟机和虚拟机规模集数据进行端到端加密。 主机中加密可对临时磁盘和 OS/数据磁盘缓存实现静态加密。 启用主机中加密后,将使用平台管理的密钥对临时 OS 磁盘进行加密。 OS/数据磁盘缓存使用客户管理的密钥或平台管理的密钥进行静态加密,具体取决于在磁盘中选择的加密类型。 更多信息请访问 https://docs.azure.cn/virtual-machines/disks-enable-host-based-encryption-portal。 | Audit、Deny、Disabled | 1.0.0 |
需要时在静态数据加密中使用客户管理的密钥选项
ID:Microsoft 云安全基准 DP-5 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
Azure AI 服务资源应使用客户管理的密钥 (CMK) 加密静态数据 | 使用客户管理的密钥加密静态数据可以更好地控制密钥生命周期,包括轮换和管理。 对于需要满足相关合规性要求的组织而言尤其如此。 默认情况下不会对此进行评估,并且只会根据合规性或限制性策略的要求应用此建议。 如果未启用,将使用平台管理的密钥来加密数据。 为实现此目的,请更新安全策略中适用范围的“效果”参数。 | Audit、Deny、Disabled | 2.2.0 |
Azure Cosmos DB 帐户应使用客户管理的密钥来加密静态数据 | 使用客户管理的密钥来管理 Azure Cosmos DB 的静态加密。 默认情况下,使用服务管理的密钥对数据进行静态加密,但为了满足法规符合性标准,通常需要使用客户管理的密钥。 客户管理的密钥允许使用由你创建并拥有的 Azure Key Vault 密钥对数据进行加密。 你可以完全控制并负责关键生命周期,包括轮换和管理。 更多信息请访问 https://docs.azure.cn/zh-cn/cosmos-db/how-to-setup-cmk。 | audit、Audit、deny、Deny、disabled、Disabled | 1.1.0 |
应使用客户管理的密钥对 Azure 机器学习工作区进行加密 | 使用客户管理的密钥管理 Azure 机器学习工作区数据的静态加密。 默认情况下,使用服务管理的密钥对客户数据进行加密,但为了满足法规符合性标准,通常需要使用客户管理的密钥。 客户管理的密钥允许使用由你创建并拥有的 Azure Key Vault 密钥对数据进行加密。 你可以完全控制并负责关键生命周期,包括轮换和管理。 更多信息请访问 https://docs.azure.cn/zh-cn/machine-learning/how-to-create-workspace-template#deploy-an-encrypted-workspace。 | Audit、Deny、Disabled | 1.1.0 |
应使用客户管理的密钥对容器注册表进行加密 | 使用客户管理的密钥来管理注册表内容的静态加密。 默认情况下,使用服务管理的密钥对数据进行静态加密,但为了满足法规符合性标准,通常需要使用客户管理的密钥。 客户管理的密钥允许使用由你创建并拥有的 Azure Key Vault 密钥对数据进行加密。 你可以完全控制并负责关键生命周期,包括轮换和管理。 更多信息请访问 https://docs.azure.cn/container-registry/container-registry-customer-managed-keys。 | Audit、Deny、Disabled | 1.1.2 |
SQL 托管实例应使用客户管理的密钥进行静态数据加密 | 使用你自己的密钥实现透明数据加密 (TDE) 可增加透明度和对 TDE 保护程序的控制,并促进职责划分。 此建议适用于具有相关合规性要求的组织。 | Audit、Deny、Disabled | 2.0.0 |
SQL Server 应使用客户管理的密钥进行静态数据加密 | 使用你自己的密钥实现透明数据加密 (TDE) 可增加透明度和对 TDE 保护程序的控制,并促进职责划分。 此建议适用于具有相关合规性要求的组织。 | Audit、Deny、Disabled | 2.0.1 |
存储帐户应使用客户管理的密钥进行加密 | 使用客户管理的密钥更灵活地保护 blob 和文件存储帐户。 指定客户托管密钥时,该密钥用于保护和控制对数据加密密钥的访问。 使用客户管理的密钥可提供附加功能来控制密钥加密密钥的轮换或以加密方式擦除数据。 | Audit、Disabled | 1.0.3 |
使用安全密钥管理流程
ID:Microsoft 云安全基准 DP-6 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
API 管理机密命名值应存储在 Azure Key Vault 中 | 命名值是每个 API 管理服务中名称/值对的集合。 机密值可以存储为 API 管理中的加密文本(自定义机密),也可以通过引用 Azure 密钥保管库中的机密进行存储。 要提高 API 管理和机密的安全性,请从 Azure Key Vault 引用机密命名值。 Azure 密钥保管库支持精细的访问管理和机密轮换策略。 | 审核、已禁用、拒绝 | 1.0.2 |
Key Vault 密钥应具有到期日期 | 应为加密密钥定义非永久性到期日期。 密钥永久有效会导致潜在攻击者有更多时间来破解密钥。 建议的安全做法是为加密密钥设置到期日期。 | Audit、Deny、Disabled | 1.0.2 |
Key Vault 机密应具有到期日期 | 应为机密定义非永久性到期日期。 机密永久有效会导致潜在攻击者有更多时间来破解密钥。 建议的安全做法是为机密设置到期日期。 | Audit、Deny、Disabled | 1.0.2 |
使用安全证书管理流程
ID:Microsoft 云安全基准 DP-7 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
证书应具有指定的最长有效期 | 通过指定证书在密钥保管库中的最长有效时间,管理组织的符合性要求。 | audit、Audit、deny、Deny、disabled、Disabled | 2.2.1 |
确保密钥和证书存储库的安全性
ID:Microsoft 云安全基准 DP-8 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
Azure 密钥保管库应启用防火墙 | 启用密钥保管库防火墙,以便默认情况下,任何公共 IP 都无法访问密钥保管库。 (可选)可以配置特定的 IP 范围来限制对这些网络的访问。 了解详细信息:https://docs.azure.cn/key-vault/general/network-security | Audit、Deny、Disabled | 3.2.1 |
Azure 密钥保管库应使用专用链接 | 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。 通过将专用终结点映射到密钥保管库,可以降低数据泄露风险。 有关专用链接的详细信息,请访问:https://docs.azure.cn/key-vault/general/private-link-service。 | [parameters('audit_effect')] | 1.2.1 |
Key Vault 应启用删除保护 | 恶意删除密钥保管库可能会导致永久丢失数据。 可以通过启用清除保护和软删除来防止永久数据丢失。 清除保护通过强制实施软删除密钥保管库的强制保留期来保护你免受内部攻击。 你的组织或 Azure 内的任何人都无法在软删除保持期内清除你的密钥保管库。 请记住,在 2019 年 9 月 1 日之后创建的密钥保管库默认启用软删除。 | Audit、Deny、Disabled | 2.1.0 |
密钥保管库应启用软删除 | 在未启用软删除的情况下删除密钥保管库,将永久删除密钥保管库中存储的所有机密、密钥和证书。 意外删除密钥保管库可能会导致永久丢失数据。 软删除允许在可配置的保持期内恢复意外删除的密钥保管库。 | Audit、Deny、Disabled | 3.0.0 |
应启用 Key Vault 中的资源日志 | 对启用资源日志进行审核。 使用此策略可在发生安全事件或网络受到安全威胁时重新创建用于调查的活动线索 | AuditIfNotExists、Disabled | 5.0.0 |
资产管理
仅使用已批准的服务
ID:Microsoft 云安全基准 AM-2 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
Azure API 管理平台版本应为 stv2 | Azure API 管理 stv1 计算平台版本将于 2024 年 8 月 31 日起停用,这些实例应迁移到 stv2 计算平台以获得持续支持。 有关详细信息,请访问 https://docs.azure.cn/api-management/breaking-changes/stv1-platform-retirement-august-2024 | Audit、Deny、Disabled | 1.0.0 |
存储帐户应迁移到新的 Azure 资源管理器资源 | 使用新的 Azure 资源管理器为存储帐户提供安全增强功能,例如:更强大的访问控制 (RBAC)、更好的审核、基于 Azure 资源管理器的部署和监管、对托管标识的访问权限、访问密钥保管库以获取机密、基于 Azure AD 的身份验证以及对标记和资源组的支持,以简化安全管理 | Audit、Deny、Disabled | 1.0.0 |
应将虚拟机迁移到新的 Azure 资源管理器资源 | 对虚拟机使用新的 Azure 资源管理器以提供安全增强功能,例如:更强的访问控制 (RBAC)、更佳审核功能、基于 Azure 资源管理器的部署和治理、对托管标识的访问、访问密钥保管库以获取机密、基于 Azure AD 的身份验证以及支持使用标记和资源组简化安全管理 | Audit、Deny、Disabled | 1.0.0 |
日志记录和威胁检测
启用威胁检测功能
ID:Microsoft 云安全基准 LT-1 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应启用适用于 Azure SQL 数据库服务器的 Azure Defender | Azure Defender for SQL 提供了以下功能:呈现和缓解潜在数据库漏洞、检测可能指示对 SQL 数据库产生威胁的异常活动,以及发现敏感数据并对其进行分类。 | AuditIfNotExists、Disabled | 1.0.2 |
应启用 Azure Defender for Resource Manager | Azure Defender for Resource Manager 会自动监视组织中的资源管理操作。 Azure Defender 会检测威胁,并向你发出有关可疑活动的警报。 若要详细了解 Azure Defender for Resource Manager 的功能,请参阅 https://docs.azure.cn/zh-cn//defender-for-cloud/defender-for-resource-manager-introduction。 启用此 Azure Defender 计划会产生费用。 若要了解各区域的定价详细信息,请访问安全中心的定价页:https://www.azure.cn/pricing/details/azure-defender/。 | AuditIfNotExists、Disabled | 1.0.0 |
应启用适用于服务器的 Azure Defender | 适用于服务器的 Azure Defender 可为服务器工作负载提供实时威胁防护,并生成强化建议以及有关可疑活动的警报。 | AuditIfNotExists、Disabled | 1.0.3 |
应为未受保护的 Azure SQL 服务器启用 Azure Defender for SQL | 审核没有高级数据安全的 SQL 服务器 | AuditIfNotExists、Disabled | 2.0.1 |
应为未受保护的 PostgreSQL 灵活服务器启用 Azure Defender for SQL | 审核没有高级数据安全的 PostgreSQL 灵活服务器 | AuditIfNotExists、Disabled | 1.0.0 |
应为未受保护的 SQL 托管实例启用 Azure Defender for SQL | 审核所有未启用高级数据安全的 SQL 托管实例。 | AuditIfNotExists、Disabled | 1.0.2 |
Azure Kubernetes 服务群集应启用 Defender 配置文件 | Microsoft Defender for Containers 提供云原生 Kubernetes 安全功能,包括环境强化、工作负载保护和运行时保护。 在 Azure Kubernetes 服务群集上启用 SecurityProfile.AzureDefender 时,会将代理部署到群集以收集安全事件数据。 在 https://docs.azure.cn/defender-for-cloud/defender-for-containers-introduction?tabs=defender-for-container-arch-aks 中详细了解 Microsoft Defender for Containers | Audit、Disabled | 2.0.1 |
应启用 Microsoft Defender for Containers | Microsoft Defender for Containers 为 Azure、混合和多云 Kubernetes 环境提供强化、漏洞评估和运行时保护。 | AuditIfNotExists、Disabled | 1.0.0 |
应为未受保护的 Synapse 工作区启用 Microsoft Defender for SQL | 启用 Defender for SQL 以保护 Synapse 工作区。 Defender for SQL 监视 Synapse SQL 以检测异常活动,这些活动表明数据库遭到了异常的访问或利用尝试并且可能会造成损害。 | AuditIfNotExists、Disabled | 1.0.0 |
应为计算机上的 SQL Server 计划启用针对 SQL Server 的自动预配 | 为了确保 SQL VM 和已启用 Arc 的 SQL Server 受到保护,请确保将针对 SQL 的 Azure 监视代理配置为自动进行部署。 如果你之前配置了 Microsoft 监视代理的自动预配,那么这也是必要的,因为该组件将被弃用。 | AuditIfNotExists、Disabled | 1.0.0 |
为标识和访问管理启用威胁检测
ID:Microsoft 云安全基准 LT-2 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应启用适用于 Azure SQL 数据库服务器的 Azure Defender | Azure Defender for SQL 提供了以下功能:呈现和缓解潜在数据库漏洞、检测可能指示对 SQL 数据库产生威胁的异常活动,以及发现敏感数据并对其进行分类。 | AuditIfNotExists、Disabled | 1.0.2 |
应启用 Azure Defender for Resource Manager | Azure Defender for Resource Manager 会自动监视组织中的资源管理操作。 Azure Defender 会检测威胁,并向你发出有关可疑活动的警报。 若要详细了解 Azure Defender for Resource Manager 的功能,请参阅 https://docs.azure.cn/zh-cn//defender-for-cloud/defender-for-resource-manager-introduction。 启用此 Azure Defender 计划会产生费用。 若要了解各区域的定价详细信息,请访问安全中心的定价页:https://www.azure.cn/pricing/details/azure-defender/。 | AuditIfNotExists、Disabled | 1.0.0 |
应启用适用于服务器的 Azure Defender | 适用于服务器的 Azure Defender 可为服务器工作负载提供实时威胁防护,并生成强化建议以及有关可疑活动的警报。 | AuditIfNotExists、Disabled | 1.0.3 |
应为未受保护的 Azure SQL 服务器启用 Azure Defender for SQL | 审核没有高级数据安全的 SQL 服务器 | AuditIfNotExists、Disabled | 2.0.1 |
应为未受保护的 PostgreSQL 灵活服务器启用 Azure Defender for SQL | 审核没有高级数据安全的 PostgreSQL 灵活服务器 | AuditIfNotExists、Disabled | 1.0.0 |
应为未受保护的 SQL 托管实例启用 Azure Defender for SQL | 审核所有未启用高级数据安全的 SQL 托管实例。 | AuditIfNotExists、Disabled | 1.0.2 |
Azure Kubernetes 服务群集应启用 Defender 配置文件 | Microsoft Defender for Containers 提供云原生 Kubernetes 安全功能,包括环境强化、工作负载保护和运行时保护。 在 Azure Kubernetes 服务群集上启用 SecurityProfile.AzureDefender 时,会将代理部署到群集以收集安全事件数据。 在 https://docs.azure.cn/defender-for-cloud/defender-for-containers-introduction?tabs=defender-for-container-arch-aks 中详细了解 Microsoft Defender for Containers | Audit、Disabled | 2.0.1 |
应启用 Microsoft Defender for Containers | Microsoft Defender for Containers 为 Azure、混合和多云 Kubernetes 环境提供强化、漏洞评估和运行时保护。 | AuditIfNotExists、Disabled | 1.0.0 |
应为未受保护的 Synapse 工作区启用 Microsoft Defender for SQL | 启用 Defender for SQL 以保护 Synapse 工作区。 Defender for SQL 监视 Synapse SQL 以检测异常活动,这些活动表明数据库遭到了异常的访问或利用尝试并且可能会造成损害。 | AuditIfNotExists、Disabled | 1.0.0 |
应为计算机上的 SQL Server 计划启用针对 SQL Server 的自动预配 | 为了确保 SQL VM 和已启用 Arc 的 SQL Server 受到保护,请确保将针对 SQL 的 Azure 监视代理配置为自动进行部署。 如果你之前配置了 Microsoft 监视代理的自动预配,那么这也是必要的,因为该组件将被弃用。 | AuditIfNotExists、Disabled | 1.0.0 |
启用日志记录以进行安全调查
ID:Microsoft 云安全基准 LT-3 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应用服务应用应已启用资源日志 | 审核确认已在应用上启用资源日志。 如果发生安全事件或网络遭泄露,这样便可以重新创建活动线索用于调查目的。 | AuditIfNotExists、Disabled | 2.0.1 |
应启用 SQL 服务器上的审核 | 应在 SQL 服务器上启用审核以跟踪服务器上所有数据库的数据库活动,并将其保存在审核日志中。 | AuditIfNotExists、Disabled | 2.0.0 |
应启用 Azure AI 服务资源中的诊断日志 | 为 Azure AI 服务资源启用日志。 这样便可以在发生安全事件或网络遭泄露时,重新创建活动线索用于调查目的 | AuditIfNotExists、Disabled | 1.0.0 |
应启用 Azure Data Lake Store 中的资源日志 | 对启用资源日志进行审核。 这样便可以在发生安全事件或网络受到威胁时重新创建活动线索以用于调查目的 | AuditIfNotExists、Disabled | 5.0.0 |
应启用 Azure Databricks 工作区中的资源日志 | 发生安全事件或网络遭到入侵时,通过资源日志可重新创建用于调查的活动线索。 | AuditIfNotExists、Disabled | 1.0.1 |
应启用 Azure Kubernetes 服务中的资源日志 | 在调查安全事件时,Azure Kubernetes 服务的资源日志可帮助重新创建活动线索。 启用日志可确保它们在需要时存在 | AuditIfNotExists、Disabled | 1.0.0 |
应启用 Azure 机器学习工作区中的资源日志 | 发生安全事件或网络遭到入侵时,通过资源日志可重新创建用于调查的活动线索。 | AuditIfNotExists、Disabled | 1.0.1 |
应启用 Azure 流分析中的资源日志 | 对启用资源日志进行审核。 这样便可以在发生安全事件或网络受到威胁时重新创建活动线索以用于调查目的 | AuditIfNotExists、Disabled | 5.0.0 |
应启用 Batch 帐户中的资源日志 | 对启用资源日志进行审核。 这样便可以在发生安全事件或网络受到威胁时重新创建活动线索以用于调查目的 | AuditIfNotExists、Disabled | 5.0.0 |
应启用 Data Lake Analytics 中的资源日志 | 对启用资源日志进行审核。 这样便可以在发生安全事件或网络受到威胁时重新创建活动线索以用于调查目的 | AuditIfNotExists、Disabled | 5.0.0 |
应启用事件中心内的资源日志 | 对启用资源日志进行审核。 这样便可以在发生安全事件或网络受到威胁时重新创建活动线索以用于调查目的 | AuditIfNotExists、Disabled | 5.0.0 |
应启用 Key Vault 中的资源日志 | 对启用资源日志进行审核。 使用此策略可在发生安全事件或网络受到安全威胁时重新创建用于调查的活动线索 | AuditIfNotExists、Disabled | 5.0.0 |
应启用逻辑应用中的资源日志 | 对启用资源日志进行审核。 这样便可以在发生安全事件或网络受到威胁时重新创建活动线索以用于调查目的 | AuditIfNotExists、Disabled | 5.1.0 |
应启用搜索服务中的资源日志 | 对启用资源日志进行审核。 这样便可以在发生安全事件或网络受到威胁时重新创建活动线索以用于调查目的 | AuditIfNotExists、Disabled | 5.0.0 |
应启用服务总线中的资源日志 | 对启用资源日志进行审核。 这样便可以在发生安全事件或网络受到威胁时重新创建活动线索以用于调查目的 | AuditIfNotExists、Disabled | 5.0.0 |
启用网络日志记录以进行安全调查
ID:Microsoft 云安全基准 LT-4 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应在 Linux 虚拟机上安装网络流量数据收集代理 | 安全中心使用 Microsoft Dependency Agent 从 Azure 虚拟机收集网络流量数据,以启用高级网络保护功能,如网络映射上的流量可视化、网络强化建议和特定网络威胁。 | AuditIfNotExists、Disabled | 1.0.1-preview |
应在 Windows 虚拟机上安装网络流量数据收集代理 | 安全中心使用 Microsoft Dependency Agent 从 Azure 虚拟机收集网络流量数据,以启用高级网络保护功能,如网络映射上的流量可视化、网络强化建议和特定网络威胁。 | AuditIfNotExists、Disabled | 1.0.1-preview |
配置日志存储保留期
ID:Microsoft 云安全基准 LT-6 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
对存储帐户目标进行审核的 SQL Server 应配置至少 90 天的保留期 | 为便于调查事件,建议将 SQL Server 审核数据在存储帐户目标中的数据保留期设置为至少 90 天。 确认你遵守所运营区域的必要保留规则。 为了符合监管标准,有时需要这样做。 | AuditIfNotExists、Disabled | 3.0.0 |
事件响应
准备 - 设置事件通知
ID:Microsoft 云安全基准 IR-2 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应启用高严重性警报的电子邮件通知 | 当某个订阅中存在潜在的安全漏洞时,若要确保组织中的相关人员收到通知,请在安全中心为高严重性警报启用电子邮件通知。 | AuditIfNotExists、Disabled | 1.1.0 |
应启用向订阅所有者发送高严重性警报的电子邮件通知 | 当订阅中存在潜在的安全漏洞时,若要确保订阅所有者收到通知,请在安全中心设置向订阅所有者发送高严重性警报的电子邮件通知。 | AuditIfNotExists、Disabled | 2.1.0 |
订阅应有一个联系人电子邮件地址,用于接收安全问题通知 | 当某个订阅中存在潜在的安全漏洞时,若要确保组织中的相关人员收到通知,请设置一个安全联系人,以接收来自安全中心的电子邮件通知。 | AuditIfNotExists、Disabled | 1.0.1 |
检测和分析 - 基于高质量警报创建事件
ID:Microsoft 云安全基准 IR-3 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应启用适用于 Azure SQL 数据库服务器的 Azure Defender | Azure Defender for SQL 提供了以下功能:呈现和缓解潜在数据库漏洞、检测可能指示对 SQL 数据库产生威胁的异常活动,以及发现敏感数据并对其进行分类。 | AuditIfNotExists、Disabled | 1.0.2 |
应启用 Azure Defender for Resource Manager | Azure Defender for Resource Manager 会自动监视组织中的资源管理操作。 Azure Defender 会检测威胁,并向你发出有关可疑活动的警报。 若要详细了解 Azure Defender for Resource Manager 的功能,请参阅 https://docs.azure.cn/zh-cn//defender-for-cloud/defender-for-resource-manager-introduction。 启用此 Azure Defender 计划会产生费用。 若要了解各区域的定价详细信息,请访问安全中心的定价页:https://www.azure.cn/pricing/details/azure-defender/。 | AuditIfNotExists、Disabled | 1.0.0 |
应启用适用于服务器的 Azure Defender | 适用于服务器的 Azure Defender 可为服务器工作负载提供实时威胁防护,并生成强化建议以及有关可疑活动的警报。 | AuditIfNotExists、Disabled | 1.0.3 |
应为未受保护的 Azure SQL 服务器启用 Azure Defender for SQL | 审核没有高级数据安全的 SQL 服务器 | AuditIfNotExists、Disabled | 2.0.1 |
应为未受保护的 PostgreSQL 灵活服务器启用 Azure Defender for SQL | 审核没有高级数据安全的 PostgreSQL 灵活服务器 | AuditIfNotExists、Disabled | 1.0.0 |
应为未受保护的 SQL 托管实例启用 Azure Defender for SQL | 审核所有未启用高级数据安全的 SQL 托管实例。 | AuditIfNotExists、Disabled | 1.0.2 |
应启用 Microsoft Defender for Containers | Microsoft Defender for Containers 为 Azure、混合和多云 Kubernetes 环境提供强化、漏洞评估和运行时保护。 | AuditIfNotExists、Disabled | 1.0.0 |
应为未受保护的 Synapse 工作区启用 Microsoft Defender for SQL | 启用 Defender for SQL 以保护 Synapse 工作区。 Defender for SQL 监视 Synapse SQL 以检测异常活动,这些活动表明数据库遭到了异常的访问或利用尝试并且可能会造成损害。 | AuditIfNotExists、Disabled | 1.0.0 |
应为计算机上的 SQL Server 计划启用针对 SQL Server 的自动预配 | 为了确保 SQL VM 和已启用 Arc 的 SQL Server 受到保护,请确保将针对 SQL 的 Azure 监视代理配置为自动进行部署。 如果你之前配置了 Microsoft 监视代理的自动预配,那么这也是必要的,因为该组件将被弃用。 | AuditIfNotExists、Disabled | 1.0.0 |
检测和分析 - 调查事件
ID:Microsoft 云安全基准 IR-4 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应启用网络观察程序 | 网络观察程序是一个区域性服务,可用于在网络方案级别监视和诊断 Azure 内部以及传入和传出 Azure 的流量的状态。 使用方案级别监视可以诊断端到端网络级别视图的问题。 需要在存在虚拟网络的每个区域中创建一个网络观察程序资源组。 如果网络观察程序资源组在特定区域中不可用,则会启用警报。 | AuditIfNotExists、Disabled | 3.0.0 |
检测和分析 - 设置事件优先级
ID:Microsoft 云安全基准 IR-5 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应启用适用于 Azure SQL 数据库服务器的 Azure Defender | Azure Defender for SQL 提供了以下功能:呈现和缓解潜在数据库漏洞、检测可能指示对 SQL 数据库产生威胁的异常活动,以及发现敏感数据并对其进行分类。 | AuditIfNotExists、Disabled | 1.0.2 |
应启用 Azure Defender for Resource Manager | Azure Defender for Resource Manager 会自动监视组织中的资源管理操作。 Azure Defender 会检测威胁,并向你发出有关可疑活动的警报。 若要详细了解 Azure Defender for Resource Manager 的功能,请参阅 https://docs.azure.cn/zh-cn//defender-for-cloud/defender-for-resource-manager-introduction。 启用此 Azure Defender 计划会产生费用。 若要了解各区域的定价详细信息,请访问安全中心的定价页:https://www.azure.cn/pricing/details/azure-defender/。 | AuditIfNotExists、Disabled | 1.0.0 |
应启用适用于服务器的 Azure Defender | 适用于服务器的 Azure Defender 可为服务器工作负载提供实时威胁防护,并生成强化建议以及有关可疑活动的警报。 | AuditIfNotExists、Disabled | 1.0.3 |
应为未受保护的 Azure SQL 服务器启用 Azure Defender for SQL | 审核没有高级数据安全的 SQL 服务器 | AuditIfNotExists、Disabled | 2.0.1 |
应为未受保护的 PostgreSQL 灵活服务器启用 Azure Defender for SQL | 审核没有高级数据安全的 PostgreSQL 灵活服务器 | AuditIfNotExists、Disabled | 1.0.0 |
应为未受保护的 SQL 托管实例启用 Azure Defender for SQL | 审核所有未启用高级数据安全的 SQL 托管实例。 | AuditIfNotExists、Disabled | 1.0.2 |
应启用 Microsoft Defender for Containers | Microsoft Defender for Containers 为 Azure、混合和多云 Kubernetes 环境提供强化、漏洞评估和运行时保护。 | AuditIfNotExists、Disabled | 1.0.0 |
应为未受保护的 Synapse 工作区启用 Microsoft Defender for SQL | 启用 Defender for SQL 以保护 Synapse 工作区。 Defender for SQL 监视 Synapse SQL 以检测异常活动,这些活动表明数据库遭到了异常的访问或利用尝试并且可能会造成损害。 | AuditIfNotExists、Disabled | 1.0.0 |
应为计算机上的 SQL Server 计划启用针对 SQL Server 的自动预配 | 为了确保 SQL VM 和已启用 Arc 的 SQL Server 受到保护,请确保将针对 SQL 的 Azure 监视代理配置为自动进行部署。 如果你之前配置了 Microsoft 监视代理的自动预配,那么这也是必要的,因为该组件将被弃用。 | AuditIfNotExists、Disabled | 1.0.0 |
安全状况和漏洞管理
审核并强制执行安全配置
ID:Microsoft 云安全基准 PV-2 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
[已弃用]:函数应用应启用“客户端证书(传入客户端证书)” | 客户端证书允许应用请求传入请求的证书。 只有具有有效证书的客户端才能访问该应用。 由于 Http 2.0 不支持客户端证书,此策略已替换为同名的新策略。 | Audit、Disabled | 3.1.0-deprecated |
不应启用 API 管理直接管理终结点 | Azure API 管理中的直接管理 REST API 会绕过 Azure 资源管理器基于角色的访问控制、授权和限制机制,因此会增加服务的漏洞。 | 审核、已禁用、拒绝 | 1.0.2 |
API 管理最低 API 版本应设置为 2019-12-01 或更高版本 | 若要阻止服务机密与只读用户共享,应将最低 API 版本设置为 2019-12-01 或更高版本。 | Audit、Deny、Disabled | 1.0.1 |
应用服务应用应启用“客户端证书(传入客户端证书)” | 客户端证书允许应用请求传入请求的证书。 只有具有有效证书的客户端才能访问该应用。 此策略适用于 Http 版本设置为 1.1 的应用。 | AuditIfNotExists、Disabled | 1.0.0 |
应用服务应用应已禁用远程调试 | 远程调试需要入站端口在应用服务应用上打开。 应禁用远程调试。 | AuditIfNotExists、Disabled | 2.0.0 |
应用服务应用不应将 CORS 配置为允许每个资源访问应用 | 跨源资源共享 (CORS) 不应允许所有域都能访问应用。 仅允许所需的域与应用交互。 | AuditIfNotExists、Disabled | 2.0.0 |
Azure API 管理平台版本应为 stv2 | Azure API 管理 stv1 计算平台版本将于 2024 年 8 月 31 日起停用,这些实例应迁移到 stv2 计算平台以获得持续支持。 有关详细信息,请访问 https://docs.azure.cn/api-management/breaking-changes/stv1-platform-retirement-august-2024 | Audit、Deny、Disabled | 1.0.0 |
应重新创建 Azure 机器学习计算实例以获取最新的软件更新 | 确保 Azure 机器学习计算实例在最新的可用操作系统上运行。 通过使用最新的安全修补程序运行,提高了安全性并减少了漏洞。 有关详细信息,请访问 https://docs.azure.cn/machine-learning/concept-vulnerability-management?view=azureml-api-2#compute-instance。 | [parameters('effects')] | 1.0.3 |
应在群集上安装并启用用于 Kubernetes 服务 (AKS) 的 Azure Policy 加载项 | 用于 Kubernetes 服务 (AKS) 的 Azure Policy 加载项扩展了 Gatekeeper v3(用于开放策略代理 (OPA) 的许可控制器 Webhook),以集中、一致的方式在群集上应用大规模强制措施和安全措施。 | Audit、Disabled | 1.0.2 |
函数应用应已禁用远程调试 | 远程调试需要入站端口在函数应用上打开。 应禁用远程调试。 | AuditIfNotExists、Disabled | 2.0.0 |
函数应用不应将 CORS 配置为允许每个资源访问应用 | 跨源资源共享 (CORS) 不应允许所有域都能访问你的函数应用。 仅允许所需的域与函数应用交互。 | AuditIfNotExists、Disabled | 2.0.0 |
Kubernetes 群集容器 CPU 和内存资源限制不得超过指定的限制 | 强制实施容器 CPU 和内存资源限制,以防止 Kubernetes 群集中发生资源耗尽攻击。 此策略通常适用于 Kubernetes 服务 (AKS) 以及已启用 Azure Arc 的 Kubernetes 的预览版。 有关详细信息,请参阅 https://docs.azure.cn/governance/policy/concepts/policy-for-kubernetes。 | audit、Audit、deny、Deny、disabled、Disabled | 9.3.0 |
Kubernetes 群集容器不得共享主机进程 ID 命名空间或主机 IPC 命名空间 | 阻止 Pod 容器在 Kubernetes 群集中共享主机进程 ID 命名空间和主机 IPC 命名空间。 此建议是旨在提高 Kubernetes 环境安全性的 CIS 5.2.2 和 CIS 5.2.3 的一部分。 此策略通常适用于 Kubernetes 服务 (AKS) 以及已启用 Azure Arc 的 Kubernetes 的预览版。 有关详细信息,请参阅 https://docs.azure.cn/governance/policy/concepts/policy-for-kubernetes。 | audit、Audit、deny、Deny、disabled、Disabled | 5.2.0 |
Kubernetes 群集容器只应使用允许的 AppArmor 配置文件 | 容器只应使用 Kubernetes 群集中允许的 AppArmor 配置文件。 此策略通常适用于 Kubernetes 服务 (AKS) 以及已启用 Azure Arc 的 Kubernetes 的预览版。 有关详细信息,请参阅 https://docs.azure.cn/governance/policy/concepts/policy-for-kubernetes。 | audit、Audit、deny、Deny、disabled、Disabled | 6.2.0 |
Kubernetes 群集容器只应使用允许的功能 | 限制功能以减小 Kubernetes 群集中容器的受攻击面。 此建议是旨在提高 Kubernetes 环境安全性的 CIS 5.2.8 和 CIS 5.2.9 的一部分。 此策略通常适用于 Kubernetes 服务 (AKS) 以及已启用 Azure Arc 的 Kubernetes 的预览版。 有关详细信息,请参阅 https://docs.azure.cn/governance/policy/concepts/policy-for-kubernetes。 | audit、Audit、deny、Deny、disabled、Disabled | 6.2.0 |
Kubernetes 群集容器应只使用允许的映像 | 使用受信任注册表中的映像,以降低 Kubernetes 群集暴露于未知漏洞、安全问题和恶意映像的风险。 有关详细信息,请参阅 https://docs.azure.cn/governance/policy/concepts/policy-for-kubernetes。 | audit、Audit、deny、Deny、disabled、Disabled | 9.3.0 |
Kubernetes 群集容器应使用只读根文件系统运行 | 运行使用只读根文件系统的容器,以防止在运行时发生更改而导致恶意二进制文件添加到 Kubernetes 群集中的 PATH。 此策略通常适用于 Kubernetes 服务 (AKS) 以及已启用 Azure Arc 的 Kubernetes 的预览版。 有关详细信息,请参阅 https://docs.azure.cn/governance/policy/concepts/policy-for-kubernetes。 | audit、Audit、deny、Deny、disabled、Disabled | 6.3.0 |
Kubernetes 群集 Pod hostPath 卷只应使用允许的主机路径 | 仅限将 Pod HostPath 卷装载到 Kubernetes 群集中允许的主机路径。 此策略通常适用于 Kubernetes 服务 (AKS) 以及已启用 Azure Arc 的 Kubernetes。 有关详细信息,请参阅 https://docs.azure.cn/governance/policy/concepts/policy-for-kubernetes。 | audit、Audit、deny、Deny、disabled、Disabled | 6.2.0 |
Kubernetes 群集 Pod 和容器只应使用批准的用户 ID 和组 ID 运行 | 控制 Pod 和容器可以使用哪些用户、主要组、补充组和文件系统组 ID 在 Kubernetes 群集中运行。 此策略通常适用于 Kubernetes 服务 (AKS) 以及已启用 Azure Arc 的 Kubernetes 的预览版。 有关详细信息,请参阅 https://docs.azure.cn/governance/policy/concepts/policy-for-kubernetes。 | audit、Audit、deny、Deny、disabled、Disabled | 6.2.0 |
Kubernetes 群集 Pod 只应使用批准的主机网络和端口范围 | 限制 Pod 在 Kubernetes 群集中对主机网络和允许的主机端口范围的访问。 此建议是旨在提高 Kubernetes 环境安全性的 CIS 5.2.4 的一部分。 此策略通常适用于 Kubernetes 服务 (AKS) 以及已启用 Azure Arc 的 Kubernetes 的预览版。 有关详细信息,请参阅 https://docs.azure.cn/governance/policy/concepts/policy-for-kubernetes。 | audit、Audit、deny、Deny、disabled、Disabled | 6.2.0 |
Kubernetes 群集服务应只侦听允许的端口 | 将服务限制为只侦听允许的端口,以确保对 Kubernetes 群集进行的访问安全。 此策略通常适用于 Kubernetes 服务 (AKS) 以及已启用 Azure Arc 的 Kubernetes 的预览版。 有关详细信息,请参阅 https://docs.azure.cn/governance/policy/concepts/policy-for-kubernetes。 | audit、Audit、deny、Deny、disabled、Disabled | 8.2.0 |
Kubernetes 群集不应允许特权容器 | 不允许在 Kubernetes 群集中创建特权容器。 此建议是旨在提高 Kubernetes 环境安全性的 CIS 5.2.1 的一部分。 此策略通常适用于 Kubernetes 服务 (AKS) 以及已启用 Azure Arc 的 Kubernetes 的预览版。 有关详细信息,请参阅 https://docs.azure.cn/governance/policy/concepts/policy-for-kubernetes。 | audit、Audit、deny、Deny、disabled、Disabled | 9.2.0 |
Kubernetes 群集应禁用自动装载 API 凭据 | 禁用自动装载 API 凭据,以防止可能泄露的 Pod 资源对 Kubernetes 群集运行 API 命令。 有关详细信息,请参阅 https://docs.azure.cn/governance/policy/concepts/policy-for-kubernetes。 | audit、Audit、deny、Deny、disabled、Disabled | 4.2.0 |
Kubernetes 群集不得允许容器特权提升 | 不允许容器使用特权提升运行,从而进入 Kubernetes 群集的根。 此建议是旨在提高 Kubernetes 环境安全性的 CIS 5.2.5 的一部分。 此策略通常适用于 Kubernetes 服务 (AKS) 以及已启用 Azure Arc 的 Kubernetes 的预览版。 有关详细信息,请参阅 https://docs.azure.cn/governance/policy/concepts/policy-for-kubernetes。 | audit、Audit、deny、Deny、disabled、Disabled | 7.2.0 |
Kubernetes 群集不应授予 CAP_SYS_ADMIN 安全功能 | 为了减小容器的受攻击面,请限制 CAP_SYS_ADMIN Linux 功能。 有关详细信息,请参阅 https://docs.azure.cn/governance/policy/concepts/policy-for-kubernetes。 | audit、Audit、deny、Deny、disabled、Disabled | 5.1.0 |
Kubernetes 群集不应使用默认命名空间 | 防止在 Kubernetes 群集中使用默认命名空间,以防止对 ConfigMap、Pod、Secret、Service 和 ServiceAccount 资源类型进行的未经授权的访问。 有关详细信息,请参阅 https://docs.azure.cn/governance/policy/concepts/policy-for-kubernetes。 | audit、Audit、deny、Deny、disabled、Disabled | 4.2.0 |
审核并强制执行计算资源的安全配置
ID:Microsoft 云安全基准 PV-4 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应在计算机上安装来宾配置扩展 | 若要确保安全配置计算机的来宾内设置,请安装来宾配置扩展。 该扩展监视的来宾内设置包括操作系统的配置、应用程序配置或状态以及环境设置。 安装后,来宾内策略将可用,如“应启用 Windows 攻击防护”。 更多信息请访问 https://docs.azure.cn/zh-cn/governance/policy/concepts/guest-configuration。 | AuditIfNotExists、Disabled | 1.0.3 |
应使用系统分配的托管标识来部署虚拟机的来宾配置扩展 | 来宾配置扩展需要系统分配的托管标识。 如果安装了来宾配置扩展,但没有系统分配的托管标识,则此策略作用域内的 Azure 虚拟机是不合规的。 有关详细信息,请访问 https://docs.azure.cn/zh-cn/governance/policy/concepts/guest-configuration | AuditIfNotExists、Disabled | 1.0.1 |
执行漏洞评估
ID:Microsoft 云安全基准 PV-5 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应在虚拟机上启用漏洞评估解决方案 | 审核虚拟机以检测其是否正在运行受支持的漏洞评估解决方案。 每个网络风险和安全计划的核心部分都是识别和分析漏洞。 Azure 安全中心的标准定价层包括对虚拟机进行漏洞扫描,无需额外付费。 此外,安全中心可以自动为你部署此工具。 | AuditIfNotExists、Disabled | 3.0.0 |
应在 SQL 托管实例上启用漏洞评估 | 审核未启用定期漏洞评估扫描的每个 SQL 托管实例。 漏洞评估可发现、跟踪和帮助你修正潜在数据库漏洞。 | AuditIfNotExists、Disabled | 1.0.1 |
应对 SQL 服务器启用漏洞评估 | 审核未正确配置漏洞评估的 Azure SQL 服务器。 漏洞评估可发现、跟踪和帮助你修正潜在数据库漏洞。 | AuditIfNotExists、Disabled | 3.0.0 |
快速自动地修正漏洞
ID:Microsoft 云安全基准 PV-6 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
Azure 注册表容器映像应已解决漏洞(由 Microsoft Defender 漏洞管理提供支持) | 容器映像漏洞评估会扫描注册表中的常见漏洞 (CVE),并为每个映像提供详细的漏洞报告。 解决漏洞可以极大地改善安全状况,确保在部署之前可以安全地使用映像。 | AuditIfNotExists、Disabled | 1.0.1 |
Azure 运行容器映像应已解决漏洞(由 Microsoft Defender 漏洞管理提供支持) | 容器映像漏洞评估会扫描注册表中的常见漏洞 (CVE),并为每个映像提供详细的漏洞报告。 此建议可显示出 Kubernetes 群集中当前运行的易受攻击映像。 修正当前正在运行的容器映像中的漏洞是改善安全状况的关键,可显著减少容器化工作负载的攻击面。 | AuditIfNotExists、Disabled | 1.0.1 |
计算机应配置为定期检查,以确认缺少的系统更新 | 为确保每 24 小时自动触发对缺失系统更新的定期评估,AssessmentMode 属性应设置为“AutomaticByPlatform”。 详细了解 AssessmentMode 属性,适用于 Windows:https://aka.ms/computevm-windowspatchassessmentmode,适用于 Linux:https://aka.ms/computevm-linuxpatchassessmentmode。 | Audit、Deny、Disabled | 3.7.0 |
SQL 数据库应已解决漏洞结果 | 监视漏洞评估扫描结果,并提供有关如何消除数据库漏洞的建议。 | AuditIfNotExists、Disabled | 4.1.0 |
计算机上的 SQL Server 应已解决漏洞结果 | SQL 漏洞评估会扫描数据库中的安全漏洞,并显示与最佳做法之间的任何偏差,例如配置错误、权限过多和敏感数据未受保护。 解决发现的漏洞可以极大地改善数据库安全态势。 | AuditIfNotExists、Disabled | 1.0.0 |
应在计算机上安装系统更新(由更新中心提供技术支持) | 计算机缺少系统、安全和关键更新。 软件更新通常包括安全漏洞的关键补丁。 恶意软件攻击中经常会利用这些漏洞,因此保持软件更新至关重要。 若要安装所有重要补丁并保护你的计算机,请遵循修正步骤。 | AuditIfNotExists、Disabled | 1.0.1 |
应修复计算机上安全配置中的漏洞 | 建议通过 Azure 安全中心监视不满足配置的基线的服务器 | AuditIfNotExists、Disabled | 3.1.0 |
终结点安全性
使用终结点检测和响应 (EDR)
ID:Microsoft 云安全基准 ES-1 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应启用适用于服务器的 Azure Defender | 适用于服务器的 Azure Defender 可为服务器工作负载提供实时威胁防护,并生成强化建议以及有关可疑活动的警报。 | AuditIfNotExists、Disabled | 1.0.3 |
备份和恢复
确保定期执行自动备份
ID:Microsoft 云安全基准 BR-1 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应为虚拟机启用 Azure 备份 | 启用 Azure 备份,确保对 Azure 虚拟机提供保护。 Azure 备份是一种安全且经济高效的 Azure 数据保护解决方案。 | AuditIfNotExists、Disabled | 3.0.0 |
应为 Azure Database for MariaDB 启用异地冗余备份 | 通过 Azure Database for MariaDB,你可以为数据库服务器选择冗余选项。 它可以设置为异地冗余备份存储,其中数据不仅存储在托管服务器的区域内,还可以复制到配对区域,以便在区域发生故障时提供恢复选项。 只能在服务器创建期间为备份配置异地冗余存储。 | Audit、Disabled | 1.0.1 |
应为 Azure Database for MySQL 启用异地冗余备份 | 通过 Azure Database for MySQL,你可以为数据库服务器选择冗余选项。 它可以设置为异地冗余备份存储,其中数据不仅存储在托管服务器的区域内,还可以复制到配对区域,以便在区域发生故障时提供恢复选项。 只能在服务器创建期间为备份配置异地冗余存储。 | Audit、Disabled | 1.0.1 |
应为 Azure Database for PostgreSQL 启用异地冗余备份 | 通过 Azure Database for PostgreSQL,你可以为数据库服务器选择冗余选项。 它可以设置为异地冗余备份存储,其中数据不仅存储在托管服务器的区域内,还可以复制到配对区域,以便在区域发生故障时提供恢复选项。 只能在服务器创建期间为备份配置异地冗余存储。 | Audit、Disabled | 1.0.1 |
保护备份和恢复数据
ID:Microsoft 云安全基准 BR-2 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
应为虚拟机启用 Azure 备份 | 启用 Azure 备份,确保对 Azure 虚拟机提供保护。 Azure 备份是一种安全且经济高效的 Azure 数据保护解决方案。 | AuditIfNotExists、Disabled | 3.0.0 |
应为 Azure Database for MariaDB 启用异地冗余备份 | 通过 Azure Database for MariaDB,你可以为数据库服务器选择冗余选项。 它可以设置为异地冗余备份存储,其中数据不仅存储在托管服务器的区域内,还可以复制到配对区域,以便在区域发生故障时提供恢复选项。 只能在服务器创建期间为备份配置异地冗余存储。 | Audit、Disabled | 1.0.1 |
应为 Azure Database for MySQL 启用异地冗余备份 | 通过 Azure Database for MySQL,你可以为数据库服务器选择冗余选项。 它可以设置为异地冗余备份存储,其中数据不仅存储在托管服务器的区域内,还可以复制到配对区域,以便在区域发生故障时提供恢复选项。 只能在服务器创建期间为备份配置异地冗余存储。 | Audit、Disabled | 1.0.1 |
应为 Azure Database for PostgreSQL 启用异地冗余备份 | 通过 Azure Database for PostgreSQL,你可以为数据库服务器选择冗余选项。 它可以设置为异地冗余备份存储,其中数据不仅存储在托管服务器的区域内,还可以复制到配对区域,以便在区域发生故障时提供恢复选项。 只能在服务器创建期间为备份配置异地冗余存储。 | Audit、Disabled | 1.0.1 |
DevOps 安全性
在整个 DevOps 生命周期内加强工作负载的安全性
ID:Microsoft 云安全基准 DS-6 所有权:共享
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
Azure 注册表容器映像应已解决漏洞(由 Microsoft Defender 漏洞管理提供支持) | 容器映像漏洞评估会扫描注册表中的常见漏洞 (CVE),并为每个映像提供详细的漏洞报告。 解决漏洞可以极大地改善安全状况,确保在部署之前可以安全地使用映像。 | AuditIfNotExists、Disabled | 1.0.1 |
Azure 运行容器映像应已解决漏洞(由 Microsoft Defender 漏洞管理提供支持) | 容器映像漏洞评估会扫描注册表中的常见漏洞 (CVE),并为每个映像提供详细的漏洞报告。 此建议可显示出 Kubernetes 群集中当前运行的易受攻击映像。 修正当前正在运行的容器映像中的漏洞是改善安全状况的关键,可显著减少容器化工作负载的攻击面。 | AuditIfNotExists、Disabled | 1.0.1 |
后续步骤
有关 Azure Policy 的其他文章:
- 请参阅计划定义结构。
- 在 Azure Policy 示例中查看其他示例。
- 查看了解策略效果。
- 了解如何修正不符合的资源。