このページでは、バケットの削除(復元可能)ポリシーの有効化、無効化、更新、ステータスの確認を行う方法について説明します。削除済み(復元可能)オブジェクトを一覧表示して復元する方法については、削除済み(復元可能)オブジェクトを使用するをご覧ください。
始める前に
バケットに削除(復元可能)ポリシーを作成して管理するには、バケットまたはバケットを含むプロジェクトに対するストレージ管理者(roles/storage.admin
)の IAM ロールが必要です。この事前定義ロールには、バケットで削除(復元可能)を作成して管理するために必要な権限が含まれています。
必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。
必要な権限
storage.buckets.get
storage.buckets.update
storage.buckets.list
- この権限は、このページで説明する操作を Google Cloud コンソールで行う場合に必要です。
バケットに対するロールの付与については、バケットで IAM を使用するをご覧ください。プロジェクトに対するロールの付与については、プロジェクトへのアクセス権を管理するをご覧ください。
バケットの削除(復元可能)ポリシーを管理する
バケットの削除(復元可能)ポリシーを追加、削除、変更するには:
コンソール
- Google Cloud コンソールで、Cloud Storage の [バケット] ページに移動します。
バケットのリストで、削除(復元可能)ポリシーを管理するバケットの名前をクリックします。
[保護] タブをクリックします。
[削除(復元可能)ポリシー] セクションで、次のいずれかの操作を行います。
バケットに削除(復元可能)ポリシーがない場合は、[削除(復元可能)ポリシーを設定] をクリックして、保持期間の単位と保持期間を選択し、[保存] をクリックします。
バケットに削除(復元可能)ポリシーがある場合は、[編集] をクリックして保持期間を変更するか、[削除] をクリックしてバケットの削除(復元可能)ポリシーを削除します。
失敗した Cloud Storage オペレーションの詳細なエラー情報を Google Cloud コンソールで確認する方法については、トラブルシューティングをご覧ください。
コマンドライン
バケットで削除(復元可能)ポリシーを追加または変更するには、--soft-delete-duration
フラグを指定して gcloud storage buckets update
コマンドを使用します。
gcloud storage buckets update gs://BUCKET_NAME --soft-delete-duration=SOFT_DELETE_DURATION
ここで
BUCKET_NAME
はバケットの名前です。例:my-bucket
。SOFT_DELETE_DURATION
には、削除済み(復元可能)オブジェクトを保持する期間を指定します。たとえば、2w1d
は 2 週間と 1 日です。詳細については、削除(復元可能)の保持期間をご覧ください。
バケットから削除(復元可能)ポリシーを削除するには、gcloud storage buckets update
コマンドを使用して、--clear-soft-delete
フラグを指定します。
gcloud storage buckets update gs://BUCKET_NAME --clear-soft-delete
ここで
BUCKET_NAME
はバケットの名前です。例:my-bucket
。
REST API
JSON API
Authorization
ヘッダーのアクセス トークンを生成するには、gcloud CLI のインストールと初期化を行います。OAuth 2.0 Playground を使用してアクセス トークンを作成し、
Authorization
ヘッダーに含めることもできます。次の情報が含まれる JSON ファイルを作成します。
{ "softDeletePolicy": { "retentionDurationSeconds": "RETENTION_DURATION" } }
ここで、
RETENTION_DURATION
は、削除済み(復元可能)オブジェクトを保持する期間です。たとえば、2w1d
は、削除済み(復元可能)オブジェクトを 2 週間と 1 日間保持します。詳細については、削除(復元可能)の保持期間をご覧ください。バケットの削除(復元可能)ポリシーを無効にするには、
RETENTION_DURATION
に値0
を使用します。cURL
を使用して JSON API を呼び出し、PATCH
Bucket リクエストを行います。curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME"
ここで
JSON_FILE_NAME
は、手順 2 で作成した JSON ファイルのパスです。BUCKET_NAME
は、関連するバケットの名前です。例:my-bucket
。
バケットで削除(復元可能)ポリシーが有効になっているかどうかを確認する
コンソール
- Google Cloud コンソールで、Cloud Storage の [バケット] ページに移動します。
バケットのリストで、削除(復元可能)ポリシーを確認するバケットの名前をクリックします。
[保護] タブをクリックします。
[削除(復元可能)ポリシー(データ復旧用)] セクションにステータスが表示されます。
失敗した Cloud Storage オペレーションの詳細なエラー情報を Google Cloud コンソールで確認する方法については、トラブルシューティングをご覧ください。
コマンドライン
バケットの削除(復元可能)ポリシーのステータスを確認するには、gcloud storage buckets describe
コマンドを使用します。
gcloud storage buckets describe gs://BUCKET_NAME \ --format="default(soft_delete_policy)"
ここで
BUCKET_NAME
はバケットの名前です。例:my-bucket
。
REST API
JSON API
Authorization
ヘッダーのアクセス トークンを生成するには、gcloud CLI のインストールと初期化を行います。OAuth 2.0 Playground を使用してアクセス トークンを作成し、
Authorization
ヘッダーに含めることもできます。cURL
を使用して JSON API を呼び出し、GET
Bucket リクエストを行います。curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=softDeletePolicy"
BUCKET_NAME
は、該当するバケットの名前です。例:my-bucket
次のステップ
- 削除(復元可能)の詳細を確認する。
- 削除済み(復元可能)オブジェクトの使用方法を確認する。