あめがえるのITブログ

頑張りすぎない。ほどほどに頑張るブログ。

AWS SecretManagerで同じ名前のシークレットが作成できない

terraformでSecretManagerの検証している際に下記エラーが発生してシークレットが再作成できない事象が発生したので調べてみた。

│ Error: creating Secrets Manager Secret: InvalidRequestException: You can't create this secret because a secret with this name is already scheduled for deletion.


Secrets Manager は、復旧期間が 7 日以上経過した後、シークレットを削除するようにスケジュールします。 つまり、リカバリウィンドウが終了するまで、AWS マネジメントコンソールで同じ名前を使用してシークレットを再作成することはできません。 repost.aws

※なるほど

◆調べてみた

1.コマンドラインで調べてみた。

$ aws secretsmanager delete-secret --secret-id mysecret
{
    "ARN": "arn:aws:secretsmanager:ap-northeast-1:xxxxxxxxxxxx:secret:mysecret-vqHjwa",
    "Name": "mysecret",
    "DeletionDate": "2023-12-23T08:49:04.550000+00:00"
}

※確かに存在する。

2.GUIでも確認
※隠れているので設定で見れるようにする。
2-1.[SecretManager] - 設定

2-2.[削除予定のシークレットを表示する]にチェックし、[保存]を押下

2-3.表示されたことを確認


3.下記コマンドで強制的に削除できるもよう。

$ aws secretsmanager delete-secret --secret-id mysecret --force-delete-without-recovery
{
    "ARN": "arn:aws:secretsmanager:ap-northeast-1:xxxxxxxxxxxx:secret:mysecret-vqHjwa",
    "Name": "mysecret",
    "DeletionDate": "2023-11-23T08:51:44.386000+00:00"
}


※消えた!


感想

確かECRのリポジトリは削除した場合、表に表示されなくなるが、アクションから表示できた記憶。表示する方法くらい統一しろよと思う今日この頃。