本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AWS Certificate Manager 中的数据保护
AWS 责任共担模式
出于数据保护目的,我们建议您保护 AWS 账户 凭证并使用 AWS IAM Identity Center 或 AWS Identity and Access Management(IAM)设置单个用户。这样,每个用户只获得履行其工作职责所需的权限。我们还建议您通过以下方式保护数据:
-
对每个账户使用多重身份验证(MFA)。
-
使用 SSL/TLS 与 AWS 资源进行通信。我们要求使用 TLS 1.2,建议使用 TLS 1.3。
-
使用 AWS CloudTrail 设置 API 和用户活动日记账记录。有关使用 CloudTrail 跟踪来捕获 AWS 活动的信息,请参阅《AWS CloudTrail 用户指南》中的 Working with CloudTrail trails。
-
使用 AWS 加密解决方案以及 AWS 服务 中的所有默认安全控制。
-
使用高级托管安全服务(例如 Amazon Macie),它有助于发现和保护存储在 Amazon S3 中的敏感数据。
-
如果在通过命令行界面或 API 访问 AWS 时需要经过 FIPS 140-3 验证的加密模块,请使用 FIPS 端点。有关可用的 FIPS 端点的更多信息,请参阅美国联邦信息处理标准(FIPS)140-3
。
我们强烈建议您切勿将机密信息或敏感信息(如您客户的电子邮件地址)放入标签或自由格式文本字段(如名称字段)。这包括使用控制台、API、AWS CLI 或 AWS SDK 处理 ACM 或其他 AWS 服务 时。在用于名称的标签或自由格式文本字段中输入的任何数据都可能会用于计费或诊断日志。如果您向外部服务器提供网址,强烈建议您不要在网址中包含凭证信息来验证对该服务器的请求。
证书私有密钥的安全性
当您请求公有证书时,AWS Certificate Manager (ACM) 会生成一个公有/私有密钥对。对于导入的证书,您可生成密钥对。公有密钥将成为证书的一部分。ACM 将存储证书及其相应的私有密钥,并使用 AWS Key Management Service (AWS KMS) 来帮助保护私有密钥。该过程的工作方式如下所示:
-
首次在 AWS 区域中请求或导入证书时,ACM 会创建一个别名为 aws/acm 的托管 AWS KMS key。此 KMS 密钥在每个 AWS 账户和每个 AWS 区域中都是唯一的。
-
ACM 使用此 KMS 加密证书的私有密钥。ACM 仅存储加密版的私有密钥,而不会以纯文本格式存储私有密钥。ACM 使用同一 KMS 密钥在特定的 AWS 账户和特定的 AWS 区域中加密所有证书的私有密钥。
-
将证书关联到与 AWS Certificate Manager 集成的服务时,ACM 会将证书和加密的私有密钥发送给服务。还会在 AWS KMS 中创建授权,从而允许该服务使用 KMS 密钥来解密该证书的私有密钥。有关授权的更多信息,请参阅 AWS Key Management Service 开发人员指南中的使用授权。有关 ACM 支持的服务的更多信息,请参阅 与 ACM 集成的服务。
注意
您可以控制自动创建的 AWS KMS 授权。如果由于任何原因删除此授权,则会失去集成服务的 ACM 功能。
-
集成服务使用 KMS 密钥来解密私有密钥。然后,该服务使用证书和解密的 (纯文本) 私有密钥建立与其客户端之间的安全通信通道 (SSL/TLS 会话)。
-
当证书与集成服务取消关联时,在步骤 3 中创建的授权将被停用。这意味着,该服务不再可以使用 KMS 密钥来解密证书的私有密钥。