开始使用 Amazon Secrets Manager - Amazon Secrets Manager
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

开始使用 Amazon Secrets Manager

您的企业可能有许多不同类型的密钥。以下是其中一些密钥,以及您可能会在 Amazon 中存储它们的位置:

Secrets Manager 的概念

以下概念对了解 Secrets Manager 的工作原理来说很重要。

密钥

在 Secrets Manager 中,密钥由密钥信息、密钥值和密钥元数据组成。密钥值可以是字符串或二进制值。为了将多个字符串值存储在一个密钥中,我们建议您使用带有键/值对的 JSON 文本字符串,例如:

{ "host" : "ProdServer-01.databases.example.com", "port" : "8888", "username" : "administrator", "password" : "EXAMPLE-PASSWORD", "dbname" : "MyDatabase", "engine" : "mysql" }

密钥元数据包括:

  • 具有以下格式的 Amazon Resource Name (ARN)。

    arn:aws:secretsmanager:<Region>:<AccountId>:secret:SecretName-6RandomCharacters
  • 密钥的名称、说明、资源策略和标签。

  • 加密密钥的 ARN,一个 Secrets Manager 用来加密和解密密钥值的 Amazon KMS key。Secrets Manager 始终以加密形式存储密钥文本,并在传输过程中加密密钥。请参阅 密钥加密和解密

  • 如果设置了轮转,有关如何轮转密钥的信息。请参阅 轮换

Secrets Manager 使用 IAM 权限策略来确保只有授权用户可以访问或修改密钥。请参阅 Amazon Secrets Manager 的身份验证和访问控制

密钥有包含加密密钥值副本的版本。更改密钥值或轮换密钥时,Secrets Manager 会创建一个新版本。请参阅 版本

您可以通过复制在多个 Amazon Web Services 区域 上使用一个密钥。复制密钥时,您可以创建原始或主密钥称为副本密钥。副本密钥保持链接到主密钥上。请参阅 将 Amazon Secrets Manager 密钥复制到其他 Amazon Web Services 区域

请参阅 创建密钥

轮换

轮换是指您定期升级密钥以使攻击者更难访问凭据的过程。在 Secrets Manager 中,您可以为密钥设置自动轮换。当 Secrets Manager 轮换密钥时,会同时更新密钥和数据库或服务中的凭据。请参阅 轮换 Amazon Secrets Manager 密钥

版本

密钥有包含加密密钥值副本的版本。更改密钥值或轮换密钥时,Secrets Manager 会创建一个新版本。密钥始终具有带有暂存标注的版本 AWSCURRENT,这是当前的密钥值。

在转换过程中,Secrets Manager 用暂存标签标识密钥的不同版本。

  • AWSCURRENT 表示客户端主动使用的版本。密钥总是有 AWSCURRENT 版本。

  • AWSPENDING 表示转换完成时,将成为 AWSCURRENT 的版本。

  • AWSPREVIOUS 表示上次已知良好的版本。换言之,是以前的 AWSCURRENT 版本。

Secrets Manager 会取消没有暂存标签的版本,在超过 100 个时将其删除。Secrets Manager 不会移除 24 小时前创建的版本。

使用 Amazon CLI 或 Amazon SDK 获取密钥值时,您可以指定密钥版本。如果未通过版本 ID 或暂存标注指定版本,则 Secrets Manager 默认使用附加了 AWSCURRENT 暂存标注的版本。

您还可以将自己的暂存标注附加到版本,例如以指示开发版或生产版本。您最多可以将 20 个暂存标注附加到密钥。密钥的两个版本不能具有相同的暂存标注。