AWS Secrets Manager シークレットを削除する - AWS Secrets Manager

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS Secrets Manager シークレットを削除する

シークレットが持つ重要な特性から、AWS Secrets Manager では、シークレットの削除を故意に困難にしています。Secrets Manager は、シークレットをすぐには削除しません。Secrets Manager は、シークレットをすぐにアクセス不能にし、最短で 7 日間の復旧期間が経過した後に削除されるようスケジュールを設定します。ウインドウの復旧期間が終了するまで、以前に削除したシークレットを復旧することができます。削除対象としてマークしたシークレットに対しては料金は発生しません。

プライマリシークレットが他のリージョンにレプリケートされている場合、プライマリシークレットを削除することはできません。最初にレプリカを削除してから、プライマリシークレットを削除します。レプリカを削除すると、すぐに削除されます。

シークレットのバージョンを直接削除することはできません。代わりに、AWS CLI または AWS SDK を使ってそのバージョンからすべてのステージングラベルを削除します。これにより、そのバージョンは非推奨とマークされ、Secrets Manager はバックグラウンドでバージョンを自動的に削除できるようになります。

アプリケーションでシークレットがまだ使用されているかどうかがわからない場合は、復旧期間中にシークレットにアクセスしようとしたときに警告する Amazon CloudWatch アラームを作成します。詳しくは、「削除が予定されている AWS Secrets Manager シークレットへのアクセスを監視する」を参照してください。

シークレットを削除するには、secretsmanager:ListSecretssecretsmanager:DeleteSecret のアクセス許可が必要です。

Secrets Manager では、シークレットを削除すると CloudTrail ログエントリが生成されます。詳細については、「AWS CloudTrail による AWS Secrets Manager イベントのログ記録」を参照してください。

シークレットを削除するには (コンソール)
  1. Secrets Manager のコンソール (https://console.aws.amazon.com/secretsmanager/) を開きます。

  2. シークレットのリストで、削除するシークレットを選択します。

  3. [Secrets details] (シークレットの詳細) セクションで、[Actions] (アクション) を選択し、[Delete secret] (シークレットの削除) を選択します。

  4. [Disable secret and schedule deletion] (シークレットの無効化と削除のスケジュール) ダイアログボックスの、[Waiting period] (待機期間) に、永続的に削除するまでの待機日数を入力します。Secrets Manager は DeletionDate というフィールドをアタッチし、現在の日付と時刻に、復旧期間として指定した日数を加えたものを設定します。

  5. [Schedule deletion] (削除をスケジュールする) を選択します。

削除済みのシークレットを表示するには
  1. Secrets Manager のコンソール (https://console.aws.amazon.com/secretsmanager/) を開きます。

  2. [Secrets] (シークレット) ページで、[Preferences] (設定) ( Gear icon representing settings or configuration options. ) を選択します。

  3. [設定] ダイアログボックスで、[削除予定のシークレットを表示] を選択し、[保存] を選択します。

レプリカシークレットを削除する
  1. Secrets Manager コンソール (https://console.aws.amazon.com/secretsmanager/を開く。

  2. プライマリシークレットを選択します。

  3. [Replicate Secret] (シークレットのレプリケーション) セクションで、レプリカのシークレットを選択します。

  4. [Actions] (アクション) メニューから [Delete Replica] (レプリカの削除) を選択します。

AWS CLI

例 シークレットの削除

次の delete-secret の例では、シークレットの削除を行います。DeletionDate レスポンスフィールドで示される日時までは、restore-secret により、このシークレットを回復できます。他のリージョンにレプリカが作成されているシークレットを削除する場合は、まずそのレプリカを remove-regions-from-replication で削除してから、delete-secret を呼び出します。

aws secretsmanager delete-secret \ --secret-id MyTestSecret \ --recovery-window-in-days 7
例 シークレットを直ちに削除する

次の delete-secret の例では、復旧期間なしでシークレットを直ちに削除します。この場合のシークレットは復元できません。

aws secretsmanager delete-secret \ --secret-id MyTestSecret \ --force-delete-without-recovery
例 レプリカシークレットを削除する

次の remove-regions-from-replication の例では、eu-west-3 にあるレプリカシークレットを削除しています。他のリージョンにレプリカが作成されているプライマリシークレットを削除するには、まずそのレプリカを削除してから delete-secret を呼び出します。

aws secretsmanager remove-regions-from-replication \ --secret-id MyTestSecret \ --remove-replica-regions eu-west-3

AWS SDK

シークレットを削除するには、DeleteSecret コマンドを使用します。シークレットのバージョンを削除するには、UpdateSecretVersionStage コマンドを使用します。レプリカを削除するには、StopReplicationToReplica コマンドを使用します。詳しくは、「AWS SDKs」を参照してください。