同じ名前の新しいシークレットを作成するために、Secrets Manager のシークレットを直ちに削除する方法を教えてください。

最終更新日: 2020 年 4 月 28 日

AWS Secrets Manager のシークレットを削除しました。次に、同じ名前を使用してシークレットを再作成しようとしました。しかし、「この名前のシークレットはすでに削除が予定されているため、このシークレットを作成できません」というエラーが表示されました。

簡単な説明

シークレットを削除すると、Secrets Manager は、7 日間の復旧期間を経て、それを廃止します。つまり、7 日間が経過するまで、AWS マネジメントコンソールで同じ名前を使用してシークレットを再作成することはできません。AWS コマンドラインインターフェイス (AWS CLI) を使用して、復旧期間を設けずにシークレットを完全に削除できます。詳細については、「シークレットの削除と復元」を参照してください。

解決方法

ForceDeleteWithoutRecovery パラメータを指定して Delete Secret API 呼び出しを実行し、シークレットを完全に削除します。

注意:

  • 開始する前に、AWS CLI のインストール設定が完了していることを確認してください。
  • ForceDeleteWithoutRecovery パラメータを使用して削除されたシークレットは、復旧または復元することはできません。

この例では、your-secret を Secrets Manager のシークレット ID に置き換え、your-regionAWS リージョンに置き換えます。

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

DescribeSecret API 呼び出しを実行して、シークレットが完全に削除されていることを確認します。

注意: 削除は非同期プロセスです。少し時間がかかることがあります。 

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

以下のようなエラーが表示されます。

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

このエラーは、シークレットが正常に削除されたことを意味します。 


この記事はお役に立ちましたか?

改善できることはありますか?


さらにサポートが必要な場合