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

创建 Amazon Secrets Manager 密钥

要在 Secrets Manager 中存储 API 密钥、访问令牌、非用于数据库的凭证以及其他密钥,请按照以下步骤操作。对于 Amazon ElastiCache 密钥,如果您想要开启轮换,则必须将密钥存储在预期的 JSON 结构中。

要创建密钥,您需要 SecretsManagerReadWrite Amazon 托管式策略授予的权限。

创建密钥(控制台)
  1. 通过 https://console.aws.amazon.com/secretsmanager/ 打开 Secrets Manager 控制台。

  2. 选择 Store a new secret (存储新密钥)

  3. Choose secret type(选择密钥类型)页面上,执行以下操作:

    1. 对于 Secret type(密钥类型),请选择 Other type of secret(其他密钥类型)。

    2. Key/value pairs(键值对)中,请以 Key/value(键值)对输入您的密钥,或者选择 Plaintext(明文)选项卡,然后以任何格式输入密钥。我们建议使用 JSON。您可以在密钥中存储最多 65536 个字节。

    3. 对于 Encryption key(加密密钥),选择 Secrets Manager 用于加密密钥值的 Amazon KMS key:

      • 在大多数情况下,请选择 aws/secretsmanager 以将 Amazon 托管式密钥 用于 Secrets Manager。使用此密钥不产生任何费用。

      • 如果您需要从另一个 Amazon Web Services 账户 处访问密钥,或者如果您想使用自己的 KMS 密钥,以便轮换密钥或对其应用密钥策略,请从列表中选择客户托管密钥,或者选择 Add New Key(添加新密钥)以创建密钥。有关使用客户托管密钥的成本的信息,请参阅 定价

        您必须具有该密钥的以下权限:kms:Encryptkms:Decryptkms:GenerateDataKey。有关跨账户访问的更多信息,请参阅不同账户中用户对 Amazon Secrets Manager 密钥的访问权限

    4. 选择 Next(下一步)。

  4. Configure secret(配置密钥)页面上,执行以下操作:

    1. 输入一个描述性的 Secret name(密钥名称)和 Description(说明)。密钥名称必须包含 1-512 个 Unicode 字符。

    2. (可选)在标签部分中,在您的密钥中添加一个或多个标签。有关标记策略,请参阅 标记 Amazon Secrets Manager 密钥。请不要将敏感信息存储在标签中,因为它们未加密。

    3. (可选)在资源权限,要将资源策略添加到您的密钥中,请选择编辑权限。有关更多信息,请参阅将权限策略附加到 Amazon Secrets Manager 密钥

    4. (可选)在 Replicate secret(复制密钥)中,要将密钥复制到另一个 Amazon Web Services 区域 中,请选择 Replicate secret(复制密钥)。您可以现在复制密钥,也可以回头再复制。有关更多信息,请参阅将密钥复制到其他区域

    5. 选择 Next(下一步)。

  5. (可选)在 Configure rotation(配置轮换)页面上,您可以启用自动轮换。您也可以现在保持关闭轮换,然后稍后将其打开。有关更多信息,请参阅轮换 密钥。选择 Next(下一步)。

  6. Review (审核) 页上,审核您的密钥详细信息,然后选择 Store (存储)

    Secrets Manager 将返回到密钥列表。如果您的新密钥未显示,请选择 Refresh(刷新)按钮。

Amazon CLI

当您在命令 shell 中输入命令时,存在访问命令历史记录或实用程序可以访问您命令参数的风险。请参阅降低使用 Amazon CLI 存储 Amazon Secrets Manager 密钥的风险

例 创建密钥

以下 create-secret 示例将创建包含两个键值对的密钥。

aws secretsmanager create-secret \ --name MyTestSecret \ --description "My test secret created with the CLI." \ --secret-string "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}"
例 根据 JSON 文件中的凭证创建密钥

以下 create-secret 示例将根据文件中的凭证创建密钥。有关更多信息,请参阅《Amazon CLI 用户指南》中的从文件加载 Amazon CLI 参数

aws secretsmanager create-secret \ --name MyTestSecret \ --secret-string file://mycreds.json

mycreds.json 的内容:

{ "username": "diegor", "password": "EXAMPLE-PASSWORD" }

Amazon SDK

要通过使用其中一个 Amazon 软件开发工具包创建密钥,请使用 CreateSecret 操作。有关更多信息,请参阅Amazon 软件开发工具包