如何立即删除 Secrets Manager 密钥以便可以使用相同的名称创建新密钥?

1 分钟阅读
0

我删除了一个 AWS Secrets Manager 密钥。然后我尝试使用相同的名称重新创建密钥。但是,我收到了与以下内容类似的错误消息: “You can't create this secret because a secret with this name is already scheduled for deletion(您无法创建此密钥,因为具有此名称的密钥已被计划删除)”

简短描述

当您删除密钥时,Secrets Manager 不会立即删除该密钥。Secrets Manager 将在至少七天的恢复期之后安排删除密钥。这意味着在恢复窗口结束前,您无法在 AWS 管理控制台中使用相同的名称重新创建密钥。您可以使用 AWS Command Line Interface(AWS CLI)永久删除密钥,且无需等待任何恢复期。有关更多信息,请参阅删除密钥

解决方法

使用 ForceDeleteWithoutRecovery 参数运行 DeleteSecret API 调用,以永久删除密钥。

备注:

使用 AWS Secrets Manager 控制台获取已删除的 Secrets Manager 密钥 ID

**注意:**如果您已经知道已删除密钥的 ID,则可以跳过此步骤。

  1. 打开 Secrets Manager 控制台
  2. 在导航窗格中,选择 Secrets(密钥)。
  3. 选择 settings(设置)图标,然后在 Preferences(首选项)中选择 Show secrets scheduled for deletion(显示计划删除的密钥)。
  4. Visible columns(可见列)中,打开 Deleted on(删除时间)切换开关,然后选择 Save(保存)。
  5. Secrets(密钥)窗格中,记下 Secret name(密钥名称)和 Deleted on(删除时间)字段以查找已删除密钥的 ID。
  6. Secret name(密钥名称)中,选择您的密钥。
  7. Secrets detail(密钥详细信息)中,复制 Secret name(密钥名称)。

使用 AWS CLI 永久删除密钥

在本示例中,将 your-secret-name 替换为您的 Secrets Manager 密钥 ID 或 ARN,并将 your-region 替换为您的 AWS 区域

aws secretsmanager delete-secret --secret-id your-secret-name --force-delete-without-recovery --region your-region

运行 DescribeSecret API 调用以验证密钥已永久删除。

**注意:**删除是一个异步过程。它可能会有短暂的延迟。

aws secretsmanager describe-secret --secret-id your-secret-name --region your-region

您将收到与以下类似的错误消息:

An error occurred (ResourceNotFoundException) when calling the DescribeSecret operation: Secrets Manager can't find the specified secret.

该错误消息表示密钥已成功删除。


相关信息

delete-secret

相关视频

AWS 官方
AWS 官方已更新 2 年前