安全控制:数据保护

数据保护涵盖静态、传输中和通过授权访问机制(包括使用访问控制、加密、密钥管理和证书管理发现、分类、保护和监视敏感数据资产)的控制。|

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

CIS 控制 v8 ID NIST SP 800-53 r4 ID PCI-DSS ID v3.2.1
3.2、3.7、3.13 RA-2、SC-28 A3.2

安全原则:根据定义的敏感数据范围建立和维护敏感数据的清单。 使用工具发现、分类和标记范围内的敏感数据。


Azure 指南:使用 Microsoft Purview 等工具(它结合了以前的 Azure Purview 和 Microsoft 365 合规性解决方案,Azure SQL数据发现和分类)集中扫描、分类和标记驻留在 Azure、本地、Microsoft 365 和其他位置的敏感数据。

Azure 实现和其他上下文


AWS 指南:将数据从各种源复制到 S3 存储存储桶,并使用 AWS Macie 扫描、分类和标记存储在存储桶中的敏感数据。 AWS Macie 可以根据自定义数据标识符规则检测敏感数据,例如安全凭据、财务信息、PHI 和 PII 数据或其他数据模式。

还可以使用 Azure Purview 多云扫描连接器扫描、分类和标记驻留在 S3 存储桶中的敏感数据。

注意:还可以使用 AWS 市场中的第三方企业解决方案进行数据发现分类和标记。

AWS 实现和其他上下文


GCP 指南:使用 Google Cloud 数据丢失防护等工具集中扫描、分类和标记驻留在 GCP 和本地环境中的敏感数据。

此外,使用 Google Cloud 数据目录 利用云数据丢失防护 (DLP) 扫描的结果,通过定义的标记模板识别敏感数据。

GCP 实现和其他上下文


客户安全利益干系人 (了解) 的详细信息

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

CIS 控制 v8 ID NIST SP 800-53 r4 ID PCI-DSS ID v3.2.1
3.13 AC-4、SI-4 A3.2

安全原则:监视敏感数据的异常情况,例如未经授权将数据传输到企业可见性和控制范围之外的位置。 这通常涉及监视那些可能意味着未经授权的数据外泄的异常活动(大型或异常传输)。


Azure 指南:使用 Azure 信息保护 (AIP) 监视已分类和标记的数据。

将 Microsoft Defender用于存储、Microsoft Defender用于 SQL、Microsoft Defender用于开源关系数据库,以及 Microsoft Defender for Cosmos DB,以针对可能指示未经授权传输敏感数据的信息的异常传输发出警报信息。

注意:如果需要符合数据丢失防护 (DLP) ,可以使用 Azure 市场 中基于主机的 DLP 解决方案或 Microsoft 365 DLP 解决方案强制实施检测和/或预防性控制,以防止数据外泄。

Azure 实现和其他上下文


AWS 指南:使用 AWS Macie 监视已分类和标记的数据,并使用 GuardDuty 检测某些资源 (S3、EC2、Kubernetes 或 IAM 资源) 的异常活动。 可以使用 EventBridge 对发现结果和警报进行会审、分析和跟踪,并将其转发到 Microsoft Sentinel 或安全中心进行事件聚合和跟踪。

还可以将 AWS 帐户连接到 Microsoft Defender for Cloud,以便进行合规性检查、容器安全性和终结点安全功能。

注意:如果需要符合数据丢失防护 (DLP) ,则可以使用 AWS 市场中基于主机的 DLP 解决方案。

AWS 实现和其他上下文


GCP 指南:使用 Google Cloud 安全命令中心/事件威胁检测/异常检测,针对可能指示未经授权传输敏感数据信息的信息的异常传输发出警报。

还可以将 GCP 帐户连接到 Microsoft Defender for Cloud,以便进行合规性检查、容器安全性和终结点安全功能。

GCP 实现和其他上下文


客户安全利益干系人 (了解) 的详细信息

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

CIS 控制 v8 ID NIST SP 800-53 r4 ID PCI-DSS ID v3.2.1
3.10 SC-8 3.5、3.6、4.1

安全原则:使用加密保护传输中的数据免受“带外”攻击 (例如流量捕获) ,以确保攻击者无法轻松读取或修改数据。

设置网络边界和服务范围,并在网络内部和外部强制实施传输中数据加密。 虽然这对于专用网络上的流量来说是可选的,但对于外部和公共网络上的流量来说,这是至关重要的。


Azure 指南:在内置本机传输数据加密功能的 Azure 存储等服务中强制实施安全传输。

通过确保连接到 Azure 资源的任何客户端使用传输层安全性 (TLS) v1.2 或更高版本,为 Web 应用程序工作负载和服务强制实施 HTTPS。 对于 VM 的远程管理,请使用 SSH(适用于 Linux)或 RDP/TLS(适用于 Windows),而不是使用未加密的协议。

若要远程管理 Azure 虚拟机,请使用适用于 Linux) 的 SSH (或适用于 Windows) 的 RDP/TLS (,而不是未加密的协议。 若要安全传输文件,请使用 Azure 存储 Blob、App 服务 应用和函数应用中的 SFTP/FTPS 服务,而不是使用常规 FTP 服务。

注意:为在 Azure 数据中心之间传输的所有 Azure 流量启用传输中数据加密。 默认情况下,大多数 Azure 服务都启用了 TLS v1.2 或更高版本。 某些服务(例如 Azure 存储和应用程序网关)可以在服务器端强制实施 TLS v1.2 或更高版本。

Azure 实现和其他上下文


AWS 指南:在内置本机传输数据加密功能的 Amazon S3、RDS 和 CloudFront 等服务中强制实施安全传输。

通过确保连接到 AWS 资源的任何客户端都使用 TLS v1.2 或更高版本,在服务器端或客户端 (为工作负荷 Web 应用程序和服务强制实施 HTTPS) (,例如在 AWS Elastic 负载均衡器) 中强制实施 HTTPS (。

对于 EC2 实例的远程管理,请使用适用于 Linux) 的 SSH (或适用于 Windows) 的 RDP/TLS (,而不是未加密的协议。 若要安全传输文件,请使用 AWS 传输 SFTP 或 FTPS 服务,而不是常规 FTP 服务。

注意:AWS 数据中心之间的所有网络流量都在物理层以透明方式加密。 使用支持的 Amazon EC2 实例类型时,VPC 内以及跨区域对等互连的 VPC 之间的所有流量都会在网络层以透明方式加密。 默认情况下,大多数 AWS 服务都启用了 TLS v1.2 或更高版本。 某些服务(例如 AWS 负载均衡器)可以在服务器端强制实施 TLS v1.2 或更高版本。

AWS 实现和其他上下文


GCP 指南:在内置本机传输数据加密功能的 Google 云存储等服务中强制实施安全传输。

为 Web 应用程序工作负载和服务强制实施 HTTPS,确保连接到 GCP 资源的任何客户端使用传输层安全性 (TLS) v1.2 或更高版本。

对于远程管理,Google Cloud Compute Engine 使用适用于 Linux) 的 SSH (或适用于 Windows) 的 RDP/TLS (,而不是未加密的协议。 为了安全传输文件,请在 Google Cloud Big Query 或 Cloud App Engine 等服务中使用 SFTP/FTPS 服务,而不是使用常规 FTP 服务。

GCP 实现和其他上下文


客户安全利益干系人 (了解) 的详细信息

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

CIS 控制 v8 ID NIST SP 800-53 r4 ID PCI-DSS ID v3.2.1
3.11 SC-28 3.4、3.5

安全原则:为了补充访问控制,应保护静态数据免受“带外”攻击 (例如使用加密访问基础存储) 。 这有助于确保攻击者无法轻松读取或修改数据。


Azure 指南:许多 Azure 服务默认使用服务管理的密钥在基础结构层启用静态数据加密。 这些服务管理的密钥代表客户生成,每两年自动轮换一次。

在技术上可行且默认未启用的情况下,可以在 Azure 服务中或在存储级别、文件级别或数据库级别的 VM 中启用静态数据加密。

Azure 实现和其他上下文


AWS 指南:许多 AWS 服务使用 AWS 托管的客户主密钥在基础结构/平台层默认启用静态数据加密。 这些 AWS 管理的客户主密钥代表客户生成,每三年自动轮换一次。

在技术上可行且默认情况下未启用的情况下,可以在 AWS 服务中或在存储级别、文件级别或数据库级别的 VM 中启用静态数据加密。

AWS 实现和其他上下文


GCP 指南:许多 Google Cloud 产品和服务使用服务管理的密钥在基础结构层默认启用静态数据加密。 这些服务管理的密钥代表客户生成并自动轮换。

在技术上可行且默认未启用的情况下,可以在 GCP 服务中或在 VM 的存储级别、文件级别或数据库级别启用静态数据加密。

注意:有关更多详细信息,请参阅文档“Google Cloud Services 加密粒度”。

GCP 实现和其他上下文


客户安全利益干系人 (了解) 的详细信息

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

CIS 控制 v8 ID NIST SP 800-53 r4 ID PCI-DSS ID v3.2.1
3.11 SC-12、SC-28 3.4、3.5、3.6

安全原则:如果需要符合法规,请定义需要客户管理的密钥选项的用例和服务范围。 在服务中使用客户管理的密钥启用和实现静态数据加密。


Azure 指南:Azure 还提供了一个加密选项,使用自己管理的密钥 (大多数服务的客户管理的密钥) 。

Azure 密钥保管库标准、高级和托管 HSM 与许多 Azure 服务本机集成,适用于客户管理的密钥用例。 可以使用 Azure 密钥保管库生成密钥或自带密钥。

但是,使用客户管理的密钥选项需要额外的操作工作量来管理密钥生命周期。 这可能包括加密密钥生成、轮换、撤销和访问控制等。

Azure 实现和其他上下文


AWS 指南:AWS 还提供了一个加密选项,使用自己管理的密钥 (存储在 AWS 密钥管理服务) 的某些服务的客户管理的客户主密钥。

AWS 密钥管理服务 (KMS) 与许多 AWS 服务本机集成,适用于客户管理的客户主密钥用例。 可以使用 AWS 密钥管理服务 (KMS) 生成主密钥或自带密钥。

但是,使用客户管理的密钥选项需要额外的操作工作来管理密钥生命周期。 这可能包括加密密钥生成、轮换、撤销和访问控制等。

AWS 实现和其他上下文


GCP 指南:Google Cloud 提供了一个加密选项,该选项使用自己管理的密钥 (大多数服务的客户管理的密钥) 。

Google Cloud Key Management Service (Cloud KMS) 与许多 GCP 服务本机集成,用于客户管理的加密密钥。 可以使用云 KMS 创建和管理这些密钥,并将密钥作为软件密钥存储在 HSM 群集中或外部。 可以使用云 KMS 生成密钥或提供自己的密钥 (客户提供的加密密钥) 。

但是,使用客户管理的密钥选项需要额外的操作工作来管理密钥生命周期。 这可能包括加密密钥生成、轮换、撤销和访问控制等。

GCP 实现和其他上下文


客户安全利益干系人 (了解) 的详细信息

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

CIS 控制 v8 ID NIST SP 800-53 r4 ID PCI-DSS ID v3.2.1
空值 IA-5、SC-12、SC-28 3.6

安全原则:记录并实施企业加密密钥管理标准、流程和过程,以控制密钥生命周期。 如果需要在服务中使用客户管理的密钥,请使用安全的 Key Vault 服务进行密钥生成、分发和存储。 根据定义的计划以及在密钥停用或泄露时轮换和撤销密钥。


Azure 指南:使用 Azure 密钥保管库创建和控制加密密钥生命周期,包括密钥生成、分发和存储。 根据定义的计划以及在密钥停用或泄露时,在 Azure Key Vault 和服务轮换和撤销密钥。 生成密钥时需要特定的加密类型和最小密钥大小。

如果需要在工作负载服务或应用程序中使用客户管理的密钥 (CMK),请确保遵循最佳做法:

  • 使用密钥层次结构生成单独的数据加密密钥 (DEK),其中包含密钥保管库中的密钥加密密钥 (KEK)。
  • 确保将密钥注册到 Azure 密钥保管库,并通过每个服务或应用程序中的密钥 ID 实现。

若要最大程度地提高密钥材料生存期和可移植性,请将自己的密钥 (BYOK) 到服务 (,即将受 HSM 保护的密钥从本地 HSM 导入 Azure 密钥保管库) 。 按照建议的准则执行密钥生成和密钥传输。

注意:有关 Azure 密钥保管库类型和 FIPS 符合性/验证级别的 FIPS 140-2 级别,请参阅以下内容。

  • 保管库中受软件保护的密钥 (高级 & 标准 SKU) :FIPS 140-2 级别 1
  • 保管库中受 HSM 保护的密钥(高级 SKU):FIPS 140-2 级别 2
  • 托管 HSM 中受 HSM 保护的密钥:FIPS 140-2 级别 3

Azure 密钥保管库 Premium 在后端使用共享 HSM 基础结构。 Azure 密钥保管库 托管 HSM 使用专用的机密服务终结点和专用 HSM,以便在需要更高级别的密钥安全性时使用。

Azure 实现和其他上下文


AWS 指南:使用 AWS 密钥管理服务 (KMS) 来创建和控制加密密钥生命周期,包括密钥生成、分发和存储。 根据定义的计划以及密钥停用或泄露时轮换和撤销 KMS 和服务中的密钥。

如果需要在工作负载服务或应用程序中使用客户管理的客户主密钥,请确保遵循最佳做法:

  • 使用密钥层次结构生成单独的数据加密密钥, (DEK) 与 KMS 中的密钥加密密钥 (KEK) 。
  • 确保密钥已注册到 KMS,并通过每个服务或应用程序中的 IAM 策略实现。

若要最大化密钥材料生存期和可移植性,请将自己的密钥 (BYOK) 引入服务 (,即将受 HSM 保护的密钥从本地 HSM 导入 KMS 或云 HSM) 。 按照建议的准则执行密钥生成和密钥传输。

注意:AWS KMS 在后端使用共享 HSM 基础结构。 需要管理自己的密钥存储和专用 HSM 时,请使用 AWS CloudHSM 支持的 AWS KMS 自定义密钥存储, (例如,对更高级别的密钥安全) 的法规合规性要求来生成和存储加密密钥。

注意:有关 AWS KMS 和 CloudHSM 中 FIPS 合规性级别的 FIPS 140-2 级别,请参阅以下内容:

  • AWS KMS 默认值:已验证 FIPS 140-2 级别 2
  • 使用 CloudHSM 的 AWS KMS:) 验证的某些服务的 FIPS 140-2 级别 3 (
  • AWS CloudHSM:已验证 FIPS 140-2 级别 3

注意:对于机密管理 (凭据、密码、API 密钥等 ) ,请使用 AWS 机密管理器。

AWS 实现和其他上下文


GCP 指南:使用云密钥管理服务 (云 KMS) 在兼容的 Google 云服务和工作负载应用程序中创建和管理加密密钥生命周期。 根据定义的计划以及密钥停用或泄露时轮换和撤销云 KMS 和服务中的密钥。

使用 Google 的云 HSM 服务向云 KMS (密钥管理服务提供硬件支持的密钥) 它使你能够管理和使用自己的加密密钥,同时受完全托管的硬件安全模块 (HSM) 的保护。

云 HSM 服务使用 HSM,HSM 已经过 FIPS 140-2 级别 3 验证,并且始终在 FIPS 模式下运行。 FIPS 140-2 级别 3 验证,并且始终在 FIPS 模式下运行。 FIPS 标准指定 HSM 使用的加密算法和随机数生成。

GCP 实现和其他上下文


客户安全利益干系人 (了解) 的详细信息

DP-7:使用安全证书管理流程

CIS 控制 v8 ID NIST SP 800-53 r4 ID PCI-DSS ID v3.2.1
空值 IA-5、SC-12、SC-17 3.6

安全原则:记录并实施企业证书管理标准、流程和过程,包括证书生命周期控制,以及 (证书策略(如果需要公钥基础结构) )。

使用自动化机制确保及时清查、跟踪、监视和续订组织中的关键服务使用的证书,以避免服务中断。


Azure 指南:使用 Azure 密钥保管库创建和控制证书生命周期,包括证书的创建/导入、轮换、吊销、存储和清除。 确保证书生成遵循定义的标准,而不使用任何不安全的属性,例如密钥大小不足、有效期过长、加密不安全等。 根据定义的计划和证书过期时间,在 Azure 密钥保管库和支持的 Azure 服务中设置证书的自动轮换。 如果前端应用程序中不支持自动轮换,请在 Azure 密钥保管库中使用手动轮换。

由于安全保证有限,避免在关键服务中使用自签名证书和通配符证书。 相反,可以在 Azure 密钥保管库 中创建公共签名证书。 以下证书颁发机构 (CA) 是目前与 Azure 密钥保管库 集成的合作伙伴提供商。

  • DigiCert:Azure Key Vault 提供 DigiCert 的 OV TLS/SSL 证书。
  • GlobalSign:Azure Key Vault 提供 GlobalSign 的 OV TLS/SSL 证书。

注意:仅使用批准的 CA,并确保禁用这些 CA 颁发的已知错误的根/中间证书。

Azure 实现和其他上下文


AWS 指南:使用 AWS 证书管理器 (ACM) 来创建和控制证书生命周期,包括创建/导入、轮换、吊销、存储和清除证书。 确保证书生成遵循定义的标准,而不使用任何不安全的属性,例如密钥大小不足、有效期过长、加密不安全等。 根据定义的计划和证书过期时间,在 ACM 和支持的 AWS 服务中设置证书的自动轮换。 如果前端应用程序中不支持自动轮换,请在 ACM 中使用手动轮换。 在此期间,应始终跟踪证书续订状态,以确保证书的有效性。

由于安全保证有限,避免在关键服务中使用自签名证书和通配符证书。 相反,在 ACM 中创建由 Amazon 证书颁发机构) 签名 (公共签名的证书,并将其以编程方式部署到 CloudFront、负载均衡器、API 网关等服务中。还可以使用 ACM 建立专用证书颁发机构, (CA) 对专用证书进行签名。

注意:仅使用已批准的 CA,并确保禁用这些 CA 颁发的已知错误的 CA 根/中间证书。

AWS 实现和其他上下文


GCP 指南:使用 Google Cloud Certificate Manager 创建和控制证书生命周期,包括证书的创建/导入、轮换、吊销、存储和清除。 确保证书生成遵循定义的标准,而不使用任何不安全的属性,例如密钥大小不足、有效期过长、加密不安全等。 根据定义的计划和证书过期的时间,在证书管理器和支持的 GCP 服务中设置证书的自动轮换。 如果前端应用程序中不支持自动轮换,请在证书管理器中使用手动轮换。 在此期间,应始终跟踪证书续订状态,以确保证书的有效性。

由于安全保证有限,避免在关键服务中使用自签名证书和通配符证书。 相反,可以在证书管理器中创建已签名的公共证书,并将其以编程方式部署在负载均衡器和云 DNS 等服务中。还可以使用证书颁发机构服务建立专用证书颁发机构, (CA) 对专用证书进行签名。

注意:还可以使用 Google Cloud Secret Manager 来存储 TLS 证书。

GCP 实现和其他上下文


客户安全利益干系人 (了解) 的详细信息

DP-8:确保密钥和证书存储库的安全性

CIS 控制 v8 ID NIST SP 800-53 r4 ID PCI-DSS ID v3.2.1
空值 IA-5、SC-12、SC-17 3.6

安全原则:确保用于加密密钥和证书生命周期管理的密钥保管库服务的安全性。 通过访问控制、网络安全、日志记录和监视以及备份强化 Key Vault 服务,以确保始终使用最大安全性保护密钥和证书。


Azure 指南:通过以下控件强化 Azure 密钥保管库服务来保护加密密钥和证书:

  • 在关键级别使用 Azure 密钥保管库托管 HSM 中的 RBAC 策略实现访问控制,以确保遵循最低特权和职责分离原则。 例如,确保管理加密密钥的用户的职责分离到位,以便他们无法访问加密数据,反之亦然。 对于 Azure 密钥保管库 标准和高级版,请为不同的应用程序创建唯一的保管库,以确保遵循最低特权和职责分离原则。
  • 启用 Azure 密钥保管库日志记录以确保记录关键管理平面和数据平面活动。
  • 使用专用链接和Azure 防火墙保护 Azure 密钥保管库,以确保服务暴露最少
  • 使用托管标识访问存储在 Azure 密钥保管库工作负载应用程序中的密钥。
  • 清除数据时,请确保在清除实际数据、备份和存档之前不会删除密钥。
  • 使用 Azure 密钥保管库 备份密钥和证书。 启用软删除和清除保护,以避免意外删除密钥。需要删除密钥时,请考虑禁用密钥而不是删除密钥,以避免意外删除密钥和加密擦除数据。
  • 若要自带密钥 (BYOK) 用例,请在本地 HSM 中生成密钥并导入它们,以最大程度地提高密钥的生存期和可移植性。
  • 切勿将密钥以纯文本格式存储在 Azure 密钥保管库之外。 默认情况下,所有密钥保管库服务中的密钥都不可导出。
  • (Azure 密钥保管库 Premium 和 Azure 托管 HSM 中的 RSA-HSM) 使用 HSM 支持的密钥类型,实现硬件保护和最强 FIPS 级别。

启用适用于 Key Vault 的 Microsoft Defender,以便为 Azure Key Vault 提供 Azure 原生高级威胁防护,从而提供额外的安全智能层。

Azure 实现和其他上下文


AWS 指南:为了保证加密密钥的安全性,请通过以下控件强化 AWS 密钥管理服务 (KMS) 服务来保护密钥:

  • 将密钥策略 (密钥级访问控制) 与 IAM 策略 (基于标识的访问控制) 结合使用来实现访问控制,以确保遵循最低特权和职责分离原则。 例如,确保管理加密密钥的用户的职责分离到位,以便他们无法访问加密数据,反之亦然。
  • 使用 CloudTrails 等检测控件记录和跟踪 KMS 中密钥的使用情况,并在关键操作时发出警报。
  • 切勿在 KMS 之外以纯文本格式存储密钥。
  • 当需要删除密钥时,请考虑在 KMS 中禁用密钥,而不是删除它们,以避免意外删除密钥和加密擦除数据。
  • 清除数据时,请确保在清除实际数据、备份和存档之前不会删除密钥。
  • 对于自带密钥 (BYOK) 用例,请在本地 HSM 中生成密钥并导入它们,以最大程度地提高密钥的生存期和可移植性。

为了保证证书安全,请通过以下控件强化 AWS 证书管理器 (ACM) 服务来保护证书:

  • 使用资源级策略与 IAM 策略 (基于标识的访问控制) 来实现访问控制,以确保遵循最低特权和职责分离原则。 例如,确保用户帐户的职责分离:生成证书的用户帐户与只需要证书只读访问权限的用户帐户是分开的。
  • 使用 CloudTrails 等检测控件记录和跟踪 ACM 中证书的使用情况,并在关键操作时发出警报。
  • 按照 KMS 安全指南,保护为证书请求生成的私钥 () 用于服务证书集成。

AWS 实现和其他上下文


GCP 指南:为了保证加密密钥的安全性,请通过以下控件强化密钥管理服务来保护密钥:

  • 使用 IAM 角色实现访问控制,以确保遵循最低特权和职责分离原则。 例如,确保管理加密密钥的用户的职责分离到位,以便他们无法访问加密数据,反之亦然。
  • 为每个项目创建一个单独的密钥环,使你能够按照最低特权最佳做法轻松管理和控制对密钥的访问。 此外,还可以更轻松地审核谁在何时有权访问哪些密钥。
  • 启用密钥的自动轮换,以确保定期更新和刷新密钥。 这有助于防范潜在的安全威胁,例如暴力攻击或试图访问敏感信息的恶意参与者。
  • 设置审核日志接收器以跟踪 GCP KMS 环境中发生的所有活动。

为了保证证书安全,请通过以下控件强化 GCP 证书管理器和证书颁发机构服务来保护证书:

  • 使用资源级策略与 IAM 策略 (基于标识的访问控制) 来实现访问控制,以确保遵循最低特权和职责分离原则。 例如,确保用户帐户的职责分离:生成证书的用户帐户与只需要证书只读访问权限的用户帐户是分开的。
  • 使用检测控件(如云审核日志)记录和跟踪证书管理器中的证书使用情况,并在关键操作时发出警报。
  • 机密管理器还支持 TLS 证书的存储。 需要遵循类似的安全做法,才能在机密管理器中实现安全控制。

GCP 实现和其他上下文


客户安全利益干系人 (详细了解)