AWS Systems Manager 中的数据保护 - AWS Systems Manager
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

AWS Systems Manager 中的数据保护

数据保护是指,在数据传输(传入和传出 Systems Manager 时)和处于静态(存储在 AWS 数据中心时)期间保护数据。

AWS 责任共担模式适用于 AWS Systems Manager 中的数据保护。如该模式中所述,AWS 负责保护运行所有 AWS 云的全球基础设施。您负责维护对托管在此基础设施上的内容的控制。此内容包括您所使用的 AWS 服务的安全配置和管理任务。有关数据隐私的更多信息,请参阅数据隐私常见问题

出于数据保护目的,我们建议您保护 AWS 账户凭证并使用 AWS Identity and Access Management (IAM) 设置单独的用户账户。这仅向每个用户授予履行其工作职责所需的权限。我们还建议您通过以下方式保护您的数据:

  • 对每个账户使用 Multi-Factor Authentication (MFA)。

  • 使用 SSL/TLS 与 AWS 资源进行通信。建议使用 TLS 1.2 或更高版本。

  • 使用 AWS CloudTrail 设置 API 和用户活动日志记录。

  • 使用 AWS 加密解决方案以及 AWS 服务中的所有默认安全控制。

  • 使用高级托管安全服务(例如 Amazon Macie),它有助于发现和保护存储在 Amazon S3 中的个人数据。

  • 如果在通过命令行界面或 API 访问 AWS 时需要经过 FIPS 140-2 验证的加密模块,请使用 FIPS 终端节点。有关可用的 FIPS 终端节点的更多信息,请参阅美国联邦信息处理标准 (FIPS) 第 140-2 版

我们强烈建议您切勿将敏感的可识别信息(例如您客户的账号)放入自由格式字段(例如 Name (名称) 字段)。这包括使用控制台、API、AWS CLI 或 AWS 开发工具包处理 Systems Manager 或其他 AWS 服务时。您输入到 Systems Manager 或其他服务中的任何数据都可能被选取以包含在诊断日志中。当您向外部服务器提供 URL 时,请勿在 URL 中包含凭证信息来验证您对该服务器的请求。

数据加密

静态加密

Parameter Store 参数

您可以在 Parameter Store 中创建的参数类型包括 StringStringListSecureString

为加密 SecureString 参数值,Parameter Store 使用 AWS Key Management Service (AWS KMS) 客户主密钥 (CMK)。AWS KMS 使用客户托管 CMK 或 AWS 托管 CMK 来加密 AWS 托管数据库中的参数值。

重要

请勿将敏感数据存储在 StringStringList 参数中。对于必须保持加密状态的所有敏感数据,请仅使用 SecureString 参数类型。

有关更多信息,请参阅 什么是参数?使用 IAM 策略限制对 Systems Manager 参数的访问

Amazon S3 存储桶中的内容

作为 Systems Manager 操作的一部分,您可以选择上传或存储数据到一个或多个 Amazon Simple Storage Service (Amazon S3) 存储桶中。

有关 S3 存储桶加密的信息,请参阅 中的使用加密保护数据Amazon S3 中的数据保护。Amazon Simple Storage Service 开发人员指南

以下是在 Systems Manager 活动中,您可以上传或存储在 S3 存储桶中的数据类型。

  • Run Command 命令的输出

  • Distributor软件包

  • Patch Manager 修补操作日志

  • Patch Manager 补丁覆盖列表

  • 在 Automation 文档工作流中运行的脚本或 Ansible Playbooks

  • 用于合规性扫描的 Chef InSpec 配置文件

  • AWS CloudTrail 日志

  • Session Manager 会话历史记录日志

  • 从 Explorer 报告或从 OpsData 的 OpsCenter 报告

  • 用于 Automation 工作流的 AWS CloudFormation 模板

  • 来自资源数据同步扫描的合规性数据

  • 在托管实例上创建或编辑 State Manager 关联的请求的输出

  • 您可以使用 AWS 托管 AWS-RunDocument 文档运行的自定义 SSM 文档

CloudWatch Logs 日志组

作为 Systems Manager 操作的一部分,您可以选择将数据流式传输到一个或多个 Amazon CloudWatch Logs 日志组。

有关 CloudWatch Logs 日志组加密的信息,请参阅 中的CloudWatch Logs加密 中的日志数据。Amazon CloudWatch Logs User Guide

以下是在 Systems Manager 活动中,您可以流式传输到 CloudWatch Logs 日志组中的数据类型。

  • Run Command 命令的输出

  • 在 Automation 文档中使用 aws:executeScript 操作的脚本运行的输出

  • Session Manager 会话历史记录日志

  • 来自托管实例上 SSM 代理的日志

传输中加密

建议您使用传输层安全性 (TLS) 等加密协议加密在客户端和实例之间传输的敏感数据。

Systems Manager 为传输中的数据加密提供以下支持。

与 Systems Manager API 终端节点的连接

Systems Manager API 终端节点仅支持基于 HTTPS 的安全连接。使用 AWS 管理控制台、AWS 开发工具包或 Systems Manager API 管理 Systems Manager 资源时,所有通信都使用传输层安全性 (TLS) 进行加密。有关 API 终端节点的完整列表,请参阅 https://docs.amazonaws.cn/general/latest/gr/rande.html 中的区域和终端节点Amazon Web Services 一般参考。

托管实例

AWS 在 EC2 实例之间提供安全的私有连接。此外,我们使用带有 256 位加密的 AEAD 算法,自动对同一 VPC 或对等的 VPCs 中支持实例之间的传输中流量进行加密。此加密功能将使用基础硬件的分载功能,对网络性能不会造成影响。支持的实例包括:C5n、G4、I3en、M5dn、M5n、P3dn、R5dn 和 R5n。

Session Manager 会话

默认情况下,Session Manager 使用 TLS 1.2 来加密您的账户中用户的本地计算机与您的 EC2 实例之间传输的会话数据。您还可以选择使用 AWS Key Management Service 中已创建的客户主密钥 (CMK) 进一步加密传输中的数据。

Run Command 访问

默认情况下,使用 Run Command 对实例的远程访问是使用 TLS 1.2 加密的,创建连接的请求是使用 SigV4 签名的。

互联网络流量隐私

您可以使用 Amazon Virtual Private Cloud (Amazon VPC) 在托管实例中的资源之间创建边界,并控制它们、本地网络和 Internet 之间的流量。有关详细信息,请参阅 (可选)创建 Virtual Private Cloud 终端节点

有关 Amazon Virtual Private Cloud 安全性的更多信息,请参阅 中的安全性。Amazon VPC 用户指南