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

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

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

要通过网络访问 Amazon KMS,您可以调用 Amazon Key Management Service API 参考中描述的 Amazon KMS API 操作。要使用标准的 Amazon KMS 终端节点,客户端必须支持传输层安全性 (TLS) 1.0 或更高版本。要使用 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 策略中使用这些条件键。然而,这些条件可以防止 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 加密详细信息