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

将 Amazon Secrets Manager 密钥复制到其他 Amazon Web Services 区域

您可以在多个 Amazon Web Services 区域 中复制密钥,为跨这些区域的应用程序提供支持,以满足区域访问和低延迟要求。如果以后需要,您可以将副本密钥升级为独立密钥,然后将其设置为独立复制。Secrets Manager 可以跨指定区域复制加密密钥数据和元数据,例如标签和资源策略。

复制密钥的 ARN 将显示副本所在的区域,例如:

  • 主密钥:arn:aws::secretsmanager:Region1:123456789012:secret:MySecret-a1b2c3

  • 副本密钥:arn:aws::secretsmanager:Region2:123456789012:secret:MySecret-a1b2c3

当存储复制到其他区域的源数据库的数据库凭证时,密钥将包含源数据库的连接信息。然后复制密钥时,副本将是源密钥的副本,并且包含相同的连接信息。您可以在密钥中添加其他键值对以记录区域连接信息。

如果您为主密钥启用轮换,Secrets Manager 将在主区域中进行密钥轮换,新的密钥值会传播到所有关联的副本密钥。您无需单独管理所有副本密钥的轮换。

您可以在所有已启用的 Amazon 区域复制密钥。但是,如果在特殊的 Amazon 区域使用 Secrets Manager,如 Amazon GovCloud (US) 或中国地区,您只能配置在这些 Amazon 区域中的密钥和副本。您无法将已启用的 Amazon 区域的密钥复制到专门区域,或将专门区域的密钥复制到商业区域。

在将密钥复制到另一个区域之前,您必须启用该区域。有关更多信息,请参阅管理 Amazon 区域

通过调用存储密钥的区域中的 Secrets Manager 端点,则无需复制密钥即可在多个区域中使用密钥。有关端点列表,请参阅 Amazon Secrets Manager 端点

要将密钥复制到其他地区(控制台)

  1. 打开 Secrets Manager 控制台:https://console.aws.amazon.com/secretsmanager/

  2. 密钥列表页上,选择您的密钥。

  3. 在 Secret details(密钥详细信息)页面上,执行以下操作之一:

    • 如果未复制密钥,请选择 Replicate secret(复制密钥)。

    • 如果已复制密钥,请在 Replicate secret(复制密钥)部分,选择 Add Region(添加区域)。

  4. Add replica regions 对话框中,执行以下操作:

    1. 针对 Amazon 区域,请选择要将密钥复制粘贴的区域。

    2. (可选)对于加密密钥中,选择用来加密密钥的 KMS 密钥。密钥必须位于副本区域中,您可以选择与主密钥相同的密钥。

    3. (可选)要添加其他区域,请选择 Add more regions(添加更多区域)。

    4. 选择 Replicate(复制)。

    此时会返回到密钥详细信息页面。Replicate secret(复制密钥)部分会显示每个区域的 Replication status(复制状态)。以下是可能造成复制失败的原因及相应的解决办法:

    • 已失败 -选定区域中存在名称相同的密钥。其中一种解决办法是覆盖副本区域中的重复名称密钥。选择 Actions(操作)菜单,然后选择 Retry replication(重试复制)。在 Retry replication(重试复制)对话框中,选择 Overwrite(覆盖),然后选择 Retry replication(重试复制)。

    • 已失败 -KMS 密钥上没有可用的权限来完成复制。另一种解决办法是通过更新 KMS 密钥的权限策略获得 kms:Decrypt 权限。

    • 已失败-密钥复制因网络错误而失败。当网络可用时,选择 Actions(操作)菜单,然后选择 Retry replication(重试复制)。

    • Failed(已失败)- 您尚未启用要复制的区域。有关如何启用区域的更多信息,请参阅管理 Amazon 区域

Amazon CLI

要复制密钥,请使用 replicate-secret-to-regions 操作。在以下示例中,将密钥复制到美国东部(弗吉尼亚北部)。

$ aws secretsmanager replicate-secret-to-regions --secret-id production/DBWest --add-replica-regions region us-east-1

Amazon 开发工具包

要复制密钥,请使用 ReplicateSecretToRegions 命令。有关更多信息,请参阅Amazon 软件开发工具包