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

轮换策略

Secrets Manager 提供了两种轮换策略:

单用户轮换策略

单用户策略在一个密码中更新一个用户的凭据。

这是最简单的轮换策略,适用于大多数用例。您可以使用单用户轮换来实现:

  • 访问数据库。密钥轮换时不会删除数据库连接,轮换后的新连接使用新凭据。

  • 访问允许用户创建一个用户帐户的服务,例如以电子邮件地址作为用户名。服务通常允许用户根据需要经常更改密码,但用户无法创建其他用户或更改用户名。

  • 根据需要创建的用户,称为临时用户

  • 以交互方式输入密码的用户,而不是让应用程序以编程方式从 Secret Manager 中检索密码。这种类型的用户不需要更改他们的用户名和密码。

有关详细说明,请参阅为 Amazon Secrets Manager 设置单用户轮换

在进行这种类型的轮换时,数据库中的密码更改和相应的密码更新之间有很短的时间。此时,数据库拒绝使用轮换凭据的调用的风险较低。您可以使用适当的重试策略来降低风险。

要使用此策略,您密钥中的用户必须有权更新密码。

要使用单个用户轮换策略

  1. 使用数据库或服务凭证创建密钥。

  2. 为您的密钥打开自动轮换,并针对选择将用于执行轮换的密钥,选择使用这个秘密/单用户轮换

交替用户轮换策略

交替用户策略在一个密钥中更新两个用户的凭据。您创建第一个用户,然后轮换将其克隆以创建第二个用户。轮换将以交替方式更新原始凭证和克隆凭证。例如,假设第一个版本为 user/password1,则第二个版本将为 user_clone/password2。第三个版本有 user/password3,第四个版本有 user_clone/password4。在通过轮换创建新版本时,从 Secrets Manager 中检索密钥的应用程序将获取凭证的现有版本。一旦新版本准备就绪,轮换会切换暂存标签,以便应用程序使用新版本。借助此策略,您在任何给定时间都将有两组有效凭据:useruser_clone 凭证都有效。

由于大多数用户无权克隆自己,Secrets Manager 会使用 superuser 来进行克隆。您在另一个密钥中提供了 superuser 的凭证。

有关详细说明,请参阅为 Amazon Secrets Manager 设置交替用户轮换

此策略适用于:

  • 具有权限模型的应用程序和数据库,其中一个角色拥有数据库表,而应用程序的另一个角色有权访问表。

  • 需要高可用性的应用程序。与单个用户轮换相比,应用程序在此类轮换期间获得拒绝的可能性小。

如果数据库或服务托管在服务器场中,密码更改需要时间传播到所有成员服务器,则存在数据库拒绝使用轮换凭证的调用的风险。您可以使用适当的重试策略来降低风险。

使用交替用户策略

  1. 为数据库或服务创建一个具有提升凭证的 superuser。此用户必须能够创建新用户并更改其凭据。

  2. superuser 凭证创建一个密钥。

  3. 创建一个将访问数据库或服务的 user

  4. user 凭证创建一个密钥。

  5. user 密钥启用自动轮换。对于 Use separate credentials(使用单独的凭证),选择 Yes(是),然后在 Secrets(秘密)下,选择 superuser 密钥。