确定适当的数据安全控制

发布: (2026年2月3日 GMT+8 16:11)
15 min read
原文: Dev.to

I’m happy to translate the article for you, but I’ll need the text you’d like translated. Could you please paste the content (or the portion you want translated) here? I’ll keep the source link exactly as you provided and preserve all formatting, markdown, and technical terms.

🛡️ 域 1 – 设计安全架构

任务 1.3 – 确定适当的数据安全控制

目标: 在数据整个生命周期中提供保护。

控制领域需要解决的事项常见的 AWS 服务
访问• 谁可以读取/写入数据
• 治理与身份与访问管理(IAM)策略
IAM、IAM 角色、IAM 策略、AWS SSO
分类与保留• 数据分类(公开、内部、机密、受限)
• 保留期限、法律保全、归档规则
AWS Macie、AWS Glue Data Catalog、S3 Object Lock、S3 生命周期策略
加密• 静态加密
• 传输中加密
KMS、S3 SSE‑S3 / SSE‑KMS、EBS 加密、RDS 加密、TLS/HTTPS、AWS PrivateLink
密钥与证书管理• 密钥和证书的安全生成、存储、轮换和吊销AWS KMS、AWS Certificate Manager(ACM)、Secrets Manager、CloudHSM
备份、复制与恢复• 定期备份、跨区域复制、灾难恢复(DR)测试、时间点恢复AWS Backup、S3 跨区域复制、RDS 自动备份、DynamoDB 时间点恢复、AWS Elastic Disaster Recovery

快速检查清单

  • IAM – 强制最小权限,使用基于角色的访问,启用 MFA。
  • 分类 – 为资源打上敏感度标签;相应地应用生命周期策略。
  • 加密 – 为存储服务启用默认加密;对所有网络流量强制使用 TLS 1.2 以上。
  • 密钥管理 – 定期轮换 KMS 密钥(例如每年一次)或依据合规要求;使用 CloudTrail 审计密钥使用情况。
  • 备份/DR – 自动化备份,季度进行恢复测试,并将关键数据复制到至少一个额外的 AWS 区域。

您应该能够回答的安全数据设计问题

#问题
1数据分类是什么?(公开、内部、机密、受监管 – 例如,PII/PHI/PCI)
2它存放在哪里?(S3、EBS、RDS、DynamoDB、EFS、备份、日志、分析)
3谁可以访问它?哪些角色、账户或服务?访问如何审计?
4它在 静止状态 下如何受到保护?(加密、密钥策略、职责分离)
5它在 传输过程中 如何受到保护?(TLS、私有连接、证书管理)
6我们如何恢复它?(备份、复制、灾难恢复策略 – RPO/RTO)
7我们保留它多长时间?(保留计划、生命周期策略、法律保全、删除策略)

1 | 数据访问与治理

  • Data governance on AWS 通常意味着:
    • 强大的 IAM 控制(最小权限)
    • 资源策略(例如 S3 存储桶策略)
    • 集中式防护轨(Organizations + 多账户中的 SCP)
    • 可视化与审计(CloudTrail、S3 访问日志、AWS Config)

“防止意外的公开暴露” → 加强资源策略,阻止公共访问,实施最小权限。

2 | 数据恢复

  • Goal: 目标: 满足 RPO/RTO 要求并在故障中生存。
  • Key techniques: 关键技术:
    • Backups备份 – 时间点恢复,快照。
    • Replication复制 – 同一区域或跨区域复制。
    • DR patterns灾难恢复模式 – pilot light、warm standby、多站点。

“Need cross‑region recovery?”
“需要跨区域恢复吗?”
Enable replication plus cross‑region backups.
启用复制 plus 跨区域备份。

3 | 数据保留与分类

  • 仅在需要的时间内保留数据(合规 + 成本)。
  • 根据敏感性对数据进行分类并应用相应控制。

常用 AWS 工具与模式

  1. S3 生命周期策略 – 将对象转移到 IA/Glacier 并在到期后删除。
  2. S3 Object Lock – 用于合规的 WORM 保留。
  3. Amazon Macie – 在 S3 中发现 PII 并帮助分类。

4 | 加密与适当的密钥管理

选项描述
1AWS 拥有的密钥 – 由 AWS 完全管理;您只能进行有限的控制。
2AWS 管理的密钥 – 例如 aws/s3aws/rds
3客户管理的 KMS 密钥(CMK) – 完全控制(密钥策略、轮换、授权)。

注意: 加密不仅仅是“打开它”;关键在于谁控制密钥以及谁可以使用它们

典型的合规驱动控制

  • 加密 在静止时和传输时均需实现。
  • 强大的保留不可变性(WORM)。
  • 可审计性和访问日志记录。
  • 密钥职责分离 – 安全团队管理密钥,应用团队使用密钥。

受监管的数据 → 使用客户管理的 KMS 密钥,强制严格的密钥策略,启用全面日志记录,并实施保留控制。

B | Encrypt Data at Rest

AWS Key Management Service (KMS)

常见的“静态加密”映射

Service加密选项
S3SSE‑KMS(客户管理)或 SSE‑S3(AWS 管理)
EBS加密卷 + 快照加密
RDS / Aurora创建时启用加密(KMS)
DynamoDB默认静态加密;可使用 CMK
EFS使用 KMS 的静态加密

需要对密钥使用/审计/轮换进行控制吗?
使用 SSE‑KMS 与客户管理的密钥

ACM (AWS Certificate Manager) & TLS

  • 对所有客户端到服务以及服务间的流量使用 TLS。
  • ACM 为以下对象提供并管理证书:
    • ALB / NLB(TLS 监听器)
    • CloudFront
    • API Gateway(自定义域名)

自动管理和续订证书 → 使用 ACM

KMS Access Control

  1. Key policies – 主要控制平面。
  2. IAM policies – 补充控制。
  3. KMS grants – 通常由 AWS 服务代表您使用。

设计建议

  • 最小特权:仅授予所需的 kms:Encryptkms:Decryptkms:GenerateDataKey 操作。
  • 职责分离:管理员管理密钥;应用程序可以使用但不能修改它。

只有特定角色可以解密?
创建一个 KMS 密钥策略,允许该角色 Decrypt,并拒绝其他所有人

常见的 AWS 备份与复制模式

PatternDescription
AWS Backup在支持的服务中实现集中式备份策略。
EBS snapshots创建快照并可选跨区域复制。
RDS automated backups自动化备份以及只读副本/跨区域副本(在支持的情况下)。
S3 replication跨区域复制(CRR)或同区域复制(SRR)。
DynamoDB PITR时间点恢复(PITR)以及用于多区域主动‑主动工作负载的全局表。

提示: 使用 AWS Backup + AWS Organizations 在多个账户之间强制执行集中式备份策略。

示例配置

  1. S3 存储桶策略 – 限制对特定 IAM 角色或 VPC 端点的访问,并要求使用 TLS。
  2. S3 阻止公共访问 – 防止存储桶内容意外公开。
  3. 生命周期策略 – 将较旧的对象转移到更低成本的存储层,并在保留期结束时删除。
  4. 对象锁定 – 对合规归档实施 WORM(一次写入,多次读取)保留。

使用场景: “必须防止在 X 年内删除” → S3 对象锁定

  1. KMS 密钥轮换 – 为客户管理的 CMK 启用自动轮换(在适用情况下)。
  2. Secrets 轮换 – 配置 Secrets Manager 自动轮换数据库密码、API 密钥等。
  3. 证书续订 – 让 ACM 自动续订符合条件的 TLS/SSL 证书。

使用场景: “在不更改应用的情况下自动轮换密钥” → KMS 自动轮换(客户管理的 CMK)结合信封加密模式(由 AWS 服务处理)。

基于场景的决策矩阵

场景推荐方案
在本地加密并完全控制客户管理的 KMS CMK
简单加密,最少管理AWS 管理的服务密钥(默认)
加密传输数据 / 管理 TLS 证书ACM 与 TLS 监听器(ALB、NLB、CloudFront)
仅特定角色可解密严格的 KMS 密钥策略 + 最小权限 IAM
防止意外公开的 S3 暴露S3 阻止公共访问 + 桶策略
保留数据 7 年,不删除S3 对象锁(治理或合规模式)
跨多个服务/账户的备份AWS Backup 与备份计划
S3 对象的跨区域恢复S3 跨区域复制(CRR)
“恢复到某个时间点”RDS 自动备份 / DynamoDB PITR

任务 1.3 快速检查清单

  • 对数据进行分类 – 公开、内部、机密或合规;确保控制措施与敏感度相匹配。
  • 对静态数据进行加密 – 通常使用 AWS KMS;当需要更严格的控制时使用客户管理密钥(CMK)。
  • 保护传输中的数据 – 使用 ACM 管理的证书的 TLS(或等效方案)。
  • 实施最小特权密钥管理 – 分离职责并限制密钥使用。
  • 备份与灾难恢复 – 使用 AWS Backup、快照或跨区域复制满足 RPO/RTO 要求。
  • 执行保留策略 – 使用 S3 生命周期规则、对象锁定或法律保留以满足所需的生命周期。

AWS 数据‑Security 控制清单(Task Statement 1.3)

#控制状态
1Data at rest 已加密(SSE‑S3、SSE‑KMS 或客户端加密)[ ]
2Encryption keys 存储在 AWS KMS 中并通过最小权限策略进行保护[ ]
3Data in transit 使用 TLS,必要时由 ACM 管理证书[ ]
4KMS key access 遵循最小权限(key policy + IAM)并强制职责分离[ ]
5Backups 满足 RPO/RTO 要求(snapshots、PITR、AWS Backup)并定期测试[ ]
6Replication 在需要多区域恢复或弹性时已启用[ ]
7Retention & lifecycle 策略已制定(适当归档/过期)[ ]
8已执行 Key rotationcertificate renewal(KMS rotation / ACM renewal)[ ]

这些是 Task Statement 1.3 背后的主要 AWS 文档。您 不必 记住它们;请使用它们来了解 AWS 数据‑security 控制为何如此运作。

核心参考材料

1. AWS 密钥管理服务 (KMS) – 开发者指南

  • 介绍 KMS 密钥、信封加密、密钥策略、授权和轮换。
  • 解答 “谁可以加密/解密?” 的主要来源。

2. KMS 密钥策略

  • 控制密钥使用的核心机制。
  • 实现 “仅此角色可以解密” 与职责分离的场景。

3. AWS 证书管理器 (ACM)

  • TLS 证书的配置与续订。
  • 与 ALB、CloudFront 和 API Gateway 自定义域加密配合使用。

4. 按服务划分的数据保护

  • 各 AWS 服务的加密选项概览及最佳实践配置。

5. Amazon S3 加密选项

  • SSE‑S3 – 使用 S3 管理的密钥进行服务器端加密。
  • SSE‑KMS – 使用 KMS 管理的密钥进行服务器端加密。
  • 客户端加密 – 在数据到达 S3 之前完成加密。
  • 帮助决定 “我们应该选择哪种加密方式?”。

6. S3 阻止公共访问

  • 阻止通过 ACL 或存储桶策略意外公开数据。
  • 当场景侧重防止数据泄露时的理想控制手段。

7. S3 对象锁 (WORM 保留)

  • 提供合规级别的不可变性和法律保留。
  • 用于满足保留或不可变性要求的测试。

8. Amazon RDS 加密

  • RDS/Aurora 的静态加密,包括对快照和副本的影响。

9. 备份、恢复与保留

  • 设计满足 RPO/RTO 目标的备份策略指南。

10. AWS Backup

  • 集中式备份策略、保险库、生命周期规则以及跨账户模式。
  • 在 “大规模备份” 考试问题中经常被引用。

11. AWS 上的灾难恢复(概念与模式)

  • 解释 RPO/RTO 与 DR 策略:备份/恢复、灯塔(pilot light)、温备、跨站点。
  • 帮助将 DR 方法匹配到特定需求。

12. 合规与安全思维

  • AWS 良好架构框架 – 安全支柱 – 最小权限、数据保护和治理决策背后的原理。
  • AWS 共享责任模型 – 阐明 AWS 提供的控制与客户自行管理的配置之间的界限(尤其是加密和访问)。

🚀 提示: 在设计或审查 AWS 数据安全解决方案时,可将此清单作为快速参考指南。

Back to Blog

相关文章

阅读更多 »