

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

# Secrets Manager 密钥中有什么？
<a name="whats-in-a-secret"></a>

在 Secrets Manager 中，*密钥*由密钥信息、*密钥值*和密钥元数据组成。密钥值可以是字符串或二进制值。

为了将多个字符串值存储在一个密钥中，我们建议您使用带有键值对的 JSON 文本字符串，例如：

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

对于数据库密钥，如果要启用自动轮换，密钥必须包含正确的 JSON 结构的数据库连接信息。有关更多信息，请参阅 [Amazon Secrets Manager 密钥的 JSON 结构](reference_secret_json_structure.md)。

## 元数据
<a name="whats-in-a-secret-metadata"></a>

密钥元数据包括：
+ 具有以下格式的 Amazon Resource Name (ARN)。

  ```
  arn:aws:secretsmanager:<Region>:<AccountId>:secret:SecretName-6RandomCharacters
  ```

  Secrets Manager 会在密钥名称末尾添加六个随机字符，以帮助确保密钥 ARN 的唯一性。如果删除了原始密钥，然后使用相同的名称创建了新密钥，则 ARNs 由于这些字符，这两个密钥会有所不同。有权访问旧密钥的用户不会自动获得对新密钥的访问权限，因为两 ARNs 者不同。
+ 密钥的名称、说明、资源策略和标签。
+ *加密密钥*的 ARN，Secrets Manager 使用它来加密和解密密密钥值。 Amazon KMS key Secrets Manager 始终以加密形式存储密钥文本，并在传输过程中加密密钥。请参阅[中的秘密加密和解密 Amazon Secrets Manager](security-encryption.md)。
+ 如果设置了轮转，有关如何轮转密钥的信息。请参阅[轮换 Amazon Secrets Manager 秘密](rotating-secrets.md)。

Secrets Manager 使用 IAM 权限策略来确保只有授权用户可以访问或修改密钥。请参阅[的身份验证和访问控制 Amazon Secrets Manager](auth-and-access.md)。

密钥有包含加密密钥值副本的*版本*。更改密钥值或轮换密钥时，Secrets Manager 会创建一个新版本。请参阅[密钥版本](#term_version)。

您可以通过*复制*多个密钥 Amazon Web Services 区域 来使用该密钥。复制密钥时，您可以创建原始或*主密钥*称为*副本密钥*。副本密钥保持链接到主密钥上。请参阅 [跨区域复制 Amazon Secrets Manager 密钥](replicate-secrets.md)。

请参阅 [使用管理密钥 Amazon Secrets Manager](managing-secrets.md)。

## 密钥版本
<a name="term_version"></a>

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

Secrets Manager 不会存储带有版本的线性密钥历史记录。而是通过标记来跟踪这三个特定版本：
+ 当前版本 – `AWSCURRENT`
+ 先前版本 – `AWSPREVIOUS`
+ 待处理版本（轮换期间）– `AWSPENDING`

密钥始终有一个标记为 `AWSCURRENT` 的版本，Secrets Manager 会在您检索密钥值时默认返回该版本。

您也可以通过调[https://docs.amazonaws.cn/cli/latest/reference/secretsmanager/update-secret-version-stage.html](https://docs.amazonaws.cn/cli/latest/reference/secretsmanager/update-secret-version-stage.html)用自己的标签来为版本添加标签 Amazon CLI。您最多可以为一个密钥附加 20 个版本标签。密钥的两个版本不能具有相同的暂存标注。版本可以有多个标签。

Secrets Manager 从不移除带标签的版本，但未标记的版本将被视为已弃用。如果版本超过 100 个，Secrets Manager 会移除已弃用的版本。Secrets Manager 不会移除 24 小时前创建的版本。

下图显示了一个 Amazon 标有版本和客户标签版本的密钥。无标签的版本将被视为已弃用，Secrets Manager 将在某个未来的时间将其移除。

 ![\[A secret that contains multiple secret versions, some with labels such as AWSCURRENT or MyLabelA, and some without labels.\]](http://docs.amazonaws.cn/secretsmanager/latest/userguide/images/SecretVersions.png) 