容器注册表的 Azure 安全基线

此安全基线将 Microsoft 云安全基准版本 1.0 中的指南应用于容器注册表。 Microsoft Cloud 安全基准提供有关如何在 Azure 上保护云解决方案的建议。 内容按 Microsoft 云安全基准定义的安全控制措施以及适用于容器注册表的相关指南进行分组。

可以使用 Microsoft Defender for Cloud 监视此安全基线及其建议。 Azure Policy定义将在 Microsoft Defender for Cloud 门户页的“合规性”部分列出。

当功能具有相关的Azure Policy定义时,这些定义将列在此基线中,以帮助你衡量对 Microsoft 云安全基准控制和建议的合规性。 某些建议可能需要付费Microsoft Defender计划来实现某些安全方案。

注意

不适用于容器注册表的功能已被排除。 若要查看容器注册表如何完全映射到 Microsoft 云安全基准,请参阅 完整的容器注册表安全基线映射文件

安全配置文件

安全配置文件汇总了容器注册表的高影响行为,这可能会导致增加安全注意事项。

服务行为属性
产品类别 计算、容器
客户可以访问主机/OS 无访问权限
可以将服务部署到客户的虚拟网络中 False
存储静态客户内容 True

网络安全性

有关详细信息,请参阅 Microsoft 云安全基准:网络安全

NS-1:建立网络分段边界

功能

虚拟网络集成

说明:服务支持部署到客户的专用虚拟网络 (VNet) 。 了解详细信息

支持 默认启用 配置责任
False 不适用 不适用

配置指南:不支持此功能来保护此服务。

网络安全组支持

说明:服务网络流量遵循其子网上的网络安全组规则分配。 了解详细信息

支持 默认启用 配置责任
False 不适用 不适用

配置指南:不支持此功能来保护此服务。

NS-2:使用网络控制保护云服务

功能

说明:用于筛选网络流量的服务本机 IP 筛选功能 (不与 NSG 或Azure 防火墙) 混淆。 了解详细信息

支持 默认启用 配置责任
True False 客户

配置指南:为支持专用链接功能的所有 Azure 资源部署专用终结点,以便为资源建立专用接入点。

参考使用 Azure 专用链接 以私密方式连接到 Azure 容器注册表

禁用公用网络访问

说明:服务支持通过使用服务级别 IP ACL 筛选规则 (非 NSG 或Azure 防火墙) 或使用“禁用公用网络访问”切换开关来禁用公用网络访问。 了解详细信息

支持 默认启用 配置责任
True False 客户

配置指南:使用服务级别 IP ACL 筛选规则或通过在服务上启用“禁用公用网络访问”设置来禁用公用网络访问。

参考禁用公用网络访问

Microsoft Defender for Cloud 监视

Azure Policy 内置定义 - Microsoft.ContainerRegistry:

名称
(Azure 门户)
说明 效果 版本
(GitHub)
容器注册表不得允许无限制的网络访问 默认情况下,Azure 容器注册表接受来自任何网络上的主机的 Internet 连接。 为了防止注册表受到潜在的威胁,只允许来自特定的专用终结点、公共 IP 地址或地址范围的访问。 如果注册表没有配置网络规则,它将出现在不正常资源中。 有关容器注册表网络规则的详细信息,请访问:https://aka.ms/acr/privatelink、https://aka.ms/acr/portal/public-networkhttps://aka.ms/acr/vnet Audit、Deny、Disabled 2.0.0

身份管理

有关详细信息,请参阅 Microsoft 云安全基准:标识管理

IM-1:使用集中式标识和身份验证系统

功能

数据平面访问所需的 Azure AD 身份验证

说明:服务支持使用 Azure AD 身份验证进行数据平面访问。 了解详细信息

支持 默认启用 配置责任
True True Microsoft

配置指南:无需其他配置,因为默认部署已启用此功能。

参考使用 Azure 容器注册表进行身份验证

数据平面访问的本地身份验证方法

说明:数据平面访问支持的本地身份验证方法,例如本地用户名和密码。 了解详细信息

支持 默认启用 配置责任
True False 客户

功能说明:避免使用本地身份验证方法或帐户,应尽可能禁用这些方法或帐户。 请尽可能改用 Azure AD 进行身份验证。

配置指南:限制对数据平面访问使用本地身份验证方法。 改为使用 Azure Active Directory (Azure AD) 作为默认身份验证方法来控制数据平面访问。

参考创建具有存储库范围权限的令牌

IM-3:安全且自动地管理应用程序标识

功能

托管标识

说明:数据平面操作支持使用托管标识进行身份验证。 了解详细信息

支持 默认启用 配置责任
True False 客户

配置指南:尽可能使用 Azure 托管标识而不是服务主体,这可以向支持 Azure Active Directory 的 Azure 服务和资源进行身份验证, (Azure AD) 身份验证。 托管标识凭据由平台完全托管、轮换和保护,避免了在源代码或配置文件中使用硬编码凭据。

参考使用 Azure 托管标识向 Azure 容器注册表进行身份验证

服务主体

说明:数据平面支持使用服务主体进行身份验证。 了解详细信息

支持 默认启用 配置责任
True False 客户

其他指导:尽管服务支持服务主体作为身份验证模式,但我们建议尽可能改用托管标识。

参考使用服务主体Azure 容器注册表身份验证

IM-7:根据条件限制资源访问

功能

数据平面的条件访问

说明:可以使用 Azure AD 条件访问策略控制数据平面访问。 了解详细信息

支持 默认启用 配置责任
False 不适用 不适用

配置指南:不支持此功能来保护此服务。

特权访问

有关详细信息,请参阅 Microsoft 云安全基准:特权访问

PA-1:隔离和限制高度特权/管理用户

功能

本地管理员帐户

说明:服务具有本地管理帐户的概念。 了解详细信息

支持 默认启用 配置责任
True False 客户

功能说明:避免使用本地身份验证方法或帐户,应尽可能禁用这些方法或帐户。 请尽可能改用 Azure AD 进行身份验证。

配置指南:如果常规管理操作不需要,请禁用或限制任何本地管理员帐户,仅供紧急使用。 每个容器注册表包含一个管理员用户帐户,此帐户默认禁用。

参考使用 Azure 容器注册表进行身份验证

PA-7:遵循 Just Enough Administration(最小特权)原则

功能

用于数据平面的 Azure RBAC

说明:Azure Role-Based 访问控制 (Azure RBAC) 可用于托管对服务的数据平面操作的访问。 了解详细信息

支持 默认启用 配置责任
True True Microsoft

配置指南:无需其他配置,因为默认部署已启用此功能。

参考Azure 容器注册表角色和权限

PA-8:确定云提供商支持的访问流程

功能

客户密码箱

说明:客户密码箱可用于 Microsoft 支持访问。 了解详细信息

支持 默认启用 配置责任
True False 客户

配置指南:在 Microsoft 需要访问你的数据的支持方案中,请使用客户密码箱进行评审,然后批准或拒绝 Microsoft 的每个数据访问请求。

参考Microsoft Azure 客户密码箱

数据保护

有关详细信息,请参阅 Microsoft 云安全基准:数据保护

DP-1:对敏感数据进行发现、分类和标记

功能

敏感数据发现和分类

说明:Azure Purview 或 Azure 信息保护) 等工具 (可用于服务中的数据发现和分类。 了解详细信息

支持 默认启用 配置责任
False 不适用 不适用

配置指南:不支持此功能来保护此服务。

DP-2:监视针对敏感数据的异常情况和威胁

功能

数据泄露/丢失防护

说明:服务支持 DLP 解决方案,用于监视客户内容) 中的敏感数据移动 (。 了解详细信息

支持 默认启用 配置责任
True False 客户

配置指南:禁用容器注册表导出,以确保仅通过数据平面 (“docker pull”) 访问数据。 这可确保无法通过“acr import”或“acr transfer”将数据移出注册表。

参考容器注册表应禁用导出

DP-3:加密传输中的敏感数据

功能

传输中数据加密

说明:服务支持数据平面的传输中数据加密。 了解详细信息

支持 默认启用 配置责任
True True Microsoft

配置指南:无需其他配置,因为默认部署上已启用此功能。

参考如何在 Azure 容器注册表 上启用 TLS 1.2

DP-4:默认启用静态数据加密

功能

使用平台密钥加密静态数据

说明:支持使用平台密钥的静态数据加密,任何客户静态内容都使用这些 Microsoft 托管密钥进行加密。 了解详细信息

支持 默认启用 配置责任
True True Microsoft

配置指南:无需其他配置,因为默认部署上已启用此功能。

参考使用平台管理的密钥加密注册表

DP-5:需要时在静态数据加密中使用客户管理的密钥选项

功能

使用 CMK 进行静态数据加密

说明:服务存储的客户内容支持使用客户管理的密钥进行静态数据加密。 了解详细信息

支持 默认启用 配置责任
True False 客户

配置指南:如果需要符合法规要求,请定义需要使用客户管理的密钥进行加密的用例和服务范围。 使用客户管理的密钥为这些服务启用和实施静态数据加密。

参考使用客户管理的密钥加密注册表

Microsoft Defender for Cloud 监视

Azure Policy 内置定义 - Microsoft.ContainerRegistry:

名称
(Azure 门户)
说明 效果 版本
(GitHub)
应使用客户管理的密钥对容器注册表进行加密 使用客户管理的密钥来管理注册表内容的静态加密。 默认情况下,使用服务管理的密钥对数据进行静态加密,但为了满足法规符合性标准,通常需要使用客户管理的密钥。 客户管理的密钥允许使用由你创建并拥有的 Azure Key Vault 密钥对数据进行加密。 你可以完全控制并负责关键生命周期,包括轮换和管理。 更多信息请访问 https://aka.ms/acr/CMK Audit、Deny、Disabled 1.1.2

DP-6:使用安全密钥管理流程

功能

Azure 密钥保管库中的密钥管理

说明:该服务支持任何客户密钥、机密或证书的 Azure 密钥保管库集成。 了解详细信息

支持 默认启用 配置责任
False 不适用 不适用

配置指南:不支持此功能来保护此服务。

资产管理

有关详细信息,请参阅 Microsoft 云安全基准:资产管理

AM-2:仅使用已获批准的服务

功能

Azure Policy 支持

说明:可以通过Azure Policy监视和强制实施服务配置。 了解详细信息

支持 默认启用 配置责任
True False 客户

配置指南:使用 Microsoft Defender for Cloud 配置Azure Policy以审核和强制实施 Azure 资源的配置。 使用 Azure Monitor 在资源上检测到配置偏差时创建警报。 使用Azure Policy [拒绝] 和 [如果不存在则部署] 效果跨 Azure 资源强制实施安全配置。

参考使用 Azure Policy 审核 Azure 容器注册表的合规性

日志记录和威胁检测

有关详细信息,请参阅 Microsoft 云安全基准:日志记录和威胁检测

LT-1:启用威胁检测功能

功能

适用于服务/产品的 Microsoft Defender

说明:服务具有特定于产品/服务的Microsoft Defender解决方案,用于监视安全问题并发出警报。 了解详细信息

支持 默认启用 配置责任
True False 客户

配置指南:使用 Microsoft Defender for Cloud 内置威胁检测功能,并为容器注册表资源启用Microsoft Defender。 适用于容器注册表的 Microsoft Defender 提供了另一层安全智能。 它会检测以非寻常和可能有害的方式访问或恶意利用容器注册表资源的尝试。

参考容器Microsoft Defender概述

LT-4:启用日志记录以进行安全调查

功能

Azure 资源日志

说明:服务生成可提供增强的服务特定指标和日志记录的资源日志。 客户可以配置这些资源日志,并将其发送到自己的数据接收器,例如存储帐户或日志分析工作区。 了解详细信息

支持 默认启用 配置责任
True False 客户

配置指南:为容器注册表启用 Azure 资源日志。 可以使用 Microsoft Defender for Cloud 和 Azure Policy 启用资源日志和日志数据收集。 这些日志可能对调查安全事件和执行取证演练至关重要。

参考监视Azure 容器注册表

备份和恢复

有关详细信息,请参阅 Microsoft 云安全基准:备份和恢复

BR-1:确保定期执行自动备份

功能

Azure 备份

说明:服务可由Azure 备份服务备份。 了解详细信息

支持 默认启用 配置责任
False 不适用 不适用

配置指南:不支持此功能来保护此服务。

服务本机备份功能

说明:如果不使用 Azure 备份) ,服务 (支持自己的本机备份功能。 了解详细信息

支持 默认启用 配置责任
False 不适用 不适用

配置指南:不支持此功能来保护此服务。

后续步骤