シークレット バージョンの破棄

このページでは、シークレット バージョンを破棄する方法について説明します。破棄された状態では、シークレット バージョンの内容は破棄されます。シークレット バージョンを破棄すると、元に戻すことはできません。バージョンが破棄されると、シークレット データにアクセスしたり、バージョンを別の状態に復元したりすることはできません。

シークレット バージョンを破棄する前に、まず無効にしてからアプリケーションの動作を確認してください。予期しない問題が発生した場合は、シークレット バージョンを再度有効にできます。

シークレットやシークレット バージョンを無効化または破棄する際、変更がシステム全体に反映されるまでに時間がかかります。必要に応じて、シークレットへの アクセス権を取り消すことができます。IAM 権限の変更の整合性は、数秒以内に確保されます。

必要なロール

シークレット バージョンを破棄するために必要な権限を取得するには、シークレットに対する Secret Manager のシークレット バージョン マネージャー roles/secretmanager.secretVersionManager)の IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。

必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。

シークレット バージョンの破棄

シークレット バージョンを破棄するには、次のいずれかの方法を使用します。

コンソール

  1. Google Cloud コンソールで、[Secret Manager] ページに移動します。

    Secret Manager に移動

  2. [Secret Manager] ページで、シークレットをクリックしてそのバージョンにアクセスします。

  3. [シークレットの詳細] ページの [バージョン] タブで、破棄するシークレット バージョンを選択します。

  4. [アクション] をクリックしてから、[破棄] をクリックします。

  5. 表示される確認ダイアログで、シークレット ID を入力して確定し、[選択したバージョンを破棄する] をクリックします。

gcloud

後述のコマンドデータを使用する前に、次のように置き換えます。

  • VERSION_ID: シークレット バージョンのリソース名
  • SECRET_ID: シークレットの ID

次のコマンドを実行します。

Linux、macOS、Cloud Shell

gcloud secrets versions destroy VERSION_ID --secret=SECRET_ID

Windows(PowerShell)

gcloud secrets versions destroy VERSION_ID --secret=SECRET_ID

Windows(cmd.exe)

gcloud secrets versions destroy VERSION_ID --secret=SECRET_ID

REST

リクエストのデータを使用する前に、次のように置き換えます。

  • PROJECT_ID: Google Cloud プロジェクト ID
  • SECRET_ID: シークレットの ID
  • VERSION_ID: シークレット バージョンの ID

HTTP メソッドと URL:

POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID:destroy

リクエストの本文(JSON):

{}

リクエストを送信するには、次のいずれかのオプションを選択します。

curl

リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID:destroy"

PowerShell