Amazon Key Management Service 中的基础设施安全性 - Amazon Key Management Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

Amazon Key Management Service 中的基础设施安全性

作为一项托管服务,Amazon Key Management Service (Amazon KMS) 由 Amazon Web Services:安全流程概述中所述的 Amazon 全球网络安全程序提供保护。

要通过网络访问 Amazon KMS,您可以调用《Amazon Key Management Service API Reference》https://docs.amazonaws.cn/kms/latest/APIReference/中描述的 Amazon KMS API 操作。Amazon KMS 在所有区域使用 TLS 1.2,但建议使用 TLS 1.3。Amazon KMS 还支持所有区域(中国区域除外)的 Amazon KMS 服务端点的混合后量子 TLS。Amazon KMS 不支持 Amazon GovCloud (US) 中的 FIPS 端点的混合后量子 TLS。要使用标准 Amazon KMS 端点Amazon KMS FIPS 端点,客户端必须支持 TLS 1.2 或更高版本。客户端还必须支持具有完全向前保密 (PFS) 的密码套件,例如 Ephemeral Diffie-Hellman (DHE) 或 Elliptic Curve Ephemeral Diffie-Hellman (ECDHE)。大多数现代系统(如 Java 7 及更高版本)都支持这些模式。

此外,必须使用访问密钥 ID 和与 IAM 主体关联的秘密访问密钥来对请求进行签名。或者,您可以使用 Amazon Security Token Service(Amazon STS)生成临时安全凭证来对请求进行签名。

您可以从任何网络位置调用这些 API 操作,但 Amazon KMS 支持全局策略条件,该条件允许您根据源 IP 地址、VPC 和 VPC 终端节点控制对 KMS 密钥的访问。您可以在密钥策略和 IAM policy 中使用这些条件键。然而,这些条件可以防止 Amazon 代表您使用 KMS 密钥。有关更多信息,请参阅 Amazon 全局条件键

例如,以下密钥策略语句允许代入 KMSTestRole 角色的用户将此 Amazon KMS key 用于指定的加密操作,除非源 IP 地址是策略中指定的 IP 地址之一。

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:role/KMSTestRole"}, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*", "Condition": { "NotIpAddress": { "aws:SourceIp": [ "192.0.2.0/24", "203.0.113.0/24" ] } } } }

物理主机的隔离

Amazon KMS 使用的物理基础设施的安全性受 Amazon Web Services:安全流程概述物理和环境安全部分中所述的控制措施约束。您可以在上一节中列出的合规性报告和第三方审计结果中找到更多详细信息。

Amazon KMS 由专用的硬化硬件安全模块 (HSM) 提供支持,该模块采用特定控件设计,可抵御物理攻击。HSM 是不具有虚拟化层(如虚拟机管理程序)的物理设备,可在多个逻辑租户之间共享物理设备。Amazon KMS keys 的密钥材料仅存储在 HSM 上的易失存储器中,并且仅在 KMS 密钥正在使用时才存储。当 HSM 退出操作状态(包括预期和意外关机和重置)时,此内存将被擦除。有关 Amazon KMS HSM 的操作的详细信息,请参阅 Amazon Key Management Service 加密详细信息