View a markdown version of this page

使用 Amazon DocumentDB 进行密码管理和 AWS Secrets Manager - Amazon DocumentDB

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

使用 Amazon DocumentDB 进行密码管理和 AWS Secrets Manager

Amazon DocumentDB 与 Secrets Manager 集成,可以管理集群的主用户密码。

Secrets Manager 与 Amazon DocumentDB 集成的限制

以下功能不支持使用 Secrets Manager 管理主用户密码:

  • 属于 Amazon DocumentDB 全局数据库的集群。

  • Amazon DocumentDB 跨区域只读副本

使用以下方法管理主用户密码的概述 AWS Secrets Manager

使用 AWS Secrets Manager,您可以将代码中的硬编码凭据(包括数据库密码)替换为对 Secrets Manager 的 API 调用,以编程方式检索密钥。有关 Secrets Manager 的更多信息,请参阅《AWS Secrets Manager 用户指南》https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html

当您在密钥管理器中存储数据库密钥时,您的 AWS 账户会产生费用。有关定价的信息,请参阅 AWS Secrets Manager 定价

在执行以下操作之一时,您可以指定 Amazon DocumentDB 在 Secrets Manager 中管理 Amazon DocumentDB 集群的主用户密码:

  • 创建集群

  • 修改集群

当您指定 Amazon DocumentDB 在 Secrets Manager 中管理主用户密码时,Amazon DocumentDB 会生成密码并将其存储在 Secrets Manager 中。您可以直接与密钥交互以检索主用户的凭证。您还可以指定客户管理的密钥来加密密钥,或者使用 Secrets Manager 提供的 KMS 密钥。

Amazon DocumentDB 管理密钥的设置,默认情况下每七天轮换一次密钥。您可以修改某些设置,例如轮换计划。如果您删除在 Secrets Manager 中管理密钥的集群,则该密钥及其关联的元数据也会被删除。

要使用密钥中的凭证连接到集群,您可以从 Secrets Manager 检索密钥。有关更多信息,请参见AWS Secrets Manager 用户指南中的使用带有密钥中的凭据的 JDBC 从 SQL 数据库获取 AWS Secrets Manager 密钥 AWS Secrets Manager连接到 SQL 数据库。

在中强制执行 Amazon DocumentDB 对主用户密码的管理 AWS Secrets Manager

您可以使用 IAM 条件密钥强制 Amazon DocumentDB 在 AWS Secrets Manager中管理主用户密码。除非主用户密码由 Amazon DocumentDB 在 Secrets Manager 中进行管理,否则以下策略不允许用户创建或恢复实例或集群。

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "rds:CreateDBCluster" ], "Resource": "*", "Condition": { "Bool": { "rds:ManageMasterUserPassword": false } } } ] }

使用 Secrets Manager 管理集群的主用户密码

执行以下操作时,可以配置 Amazon DocumentDB 在 Secrets Manager 中管理主用户密码:

您可以使用亚马逊 DocumentDB 控制台或 AWS CLI 来执行这些操作。