削除(復元可能)ポリシーを設定して管理する

概要 用途

このページでは、削除(復元可能)ポリシーを設定して管理する方法について説明します。バケットに新しいポリシーを設定して削除(復元可能)を有効にしたり、既存のポリシーのステータスを更新して確認したりできます。削除(復元可能)を無効にする方法については、削除(復元可能)を無効にするをご覧ください。

削除済み(復元可能)オブジェクトを一覧表示して復元する方法については、削除済み(復元可能)オブジェクトを使用するをご覧ください。削除済み(復元可能)バケットを一覧表示して復元する方法については、削除済み(復元可能)バケットを使用するをご覧ください。

必要なロール

削除(復元可能)ポリシーを有効化および管理するために必要な権限を取得するには、バケットまたはバケットを含むプロジェクトに対するストレージ管理者roles/storage.admin)IAM ロールを付与するように管理者に依頼してください。

この事前定義ロールには、削除(復元可能)ポリシーの有効化と管理に必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。

必要な権限

削除(復元可能)ポリシーの有効化と管理には、次の権限が必要です。

  • storage.buckets.get
  • storage.buckets.update
  • storage.buckets.list(この権限は、このページで説明する操作を Trusted Cloud コンソールを使用して行う場合にのみ必要です)

ロールの付与については、バケットで IAM を使用するまたはプロジェクトへのアクセスを管理するをご覧ください。

バケットの削除(復元可能)ポリシーを編集する

新しい削除(復元可能)の保持期間は、削除(復元可能)ポリシーが有効になった後に削除されたオブジェクトまたはバケットにのみ適用されます。既存の削除済み(復元可能)オブジェクトは、削除(復元可能)ポリシーの更新の影響を受けず、削除された時点で有効であった保持期間が適用されます。

バケットの削除(復元可能)ポリシーを編集する手順は次のとおりです。

コンソール

  1. Trusted Cloud コンソールで Cloud Storage の [バケット] ページに移動します。

    [バケット] に移動

  2. バケットのリストで、削除(復元可能)ポリシーを編集するバケットの名前をクリックします。

  3. [保護] タブをクリックします。

  4. [削除(復元可能)ポリシー(データ復旧用)] セクションで、次の手順に沿って新しい削除(復元可能)ポリシーを追加するか、既存のポリシーの保持期間を編集します。

    1. [編集] をクリックします。

    2. 表示された [削除(復元可能)ポリシーを設定] ダイアログで、時間の単位と期間を選択して削除(復元可能)保持期間を指定します。

    3. [保存] をクリックします。

失敗した Cloud Storage オペレーションの詳細なエラー情報を Trusted 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 には、削除(復元可能)の保持期間を指定します。

    • 単位 s は秒を表します。
    • 単位 d は日を表します。
    • 単位 m は月を表します。

    例:

    • 7d43200s は、保持期間を 7 日半(7 日と 43,200 秒)に設定します。

    • 2w1d は、保持期間を 2 週間と 1 日に設定します。

REST API

JSON API

  1. gcloud CLI のインストールと初期化を行います。これにより、Authorization ヘッダーのアクセス トークンを生成できます。

  2. 次の情報が含まれる JSON ファイルを作成します。

    {
      "softDeletePolicy": {
        "retentionDurationSeconds": "TIME_IN_SECONDS"
      }
    }

    ここで、TIME_IN_SECONDS は、削除(復元可能)保持期間として設定する期間(秒単位)です。たとえば、2,678,400 秒(31 日)の場合は 2678400 を指定します。

  3. 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.s3nsapis.fr/storage/v1/b/BUCKET_NAME"

    ここで

    • JSON_FILE_NAME は、手順 2 で作成した JSON ファイルのパスです。
    • BUCKET_NAME は、関連するバケットの名前です。例: my-bucket

バケットで削除(復元可能)ポリシーが有効になっているかどうかを確認する

コンソール

  1. Trusted Cloud コンソールで Cloud Storage の [バケット] ページに移動します。

    [バケット] に移動

  2. バケットのリストで、削除(復元可能)ポリシーを確認するバケットの名前をクリックします。

  3. [保護] タブをクリックします。

    [削除(復元可能)ポリシー(データ復旧用)] セクションにステータスが表示されます。

バケットに削除(復元可能)ポリシーがあるかどうかは、[保護] タブで確認することもできます。

失敗した Cloud Storage オペレーションの詳細なエラー情報を Trusted 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

  1. gcloud CLI のインストールと初期化を行います。これにより、Authorization ヘッダーのアクセス トークンを生成できます。

  2. cURL使用して、GET Bucket リクエストで JSON API を呼び出します。

    curl -X GET \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json" \
      "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME?fields=softDeletePolicy"

    BUCKET_NAME は、該当するバケットの名前です。例: my-bucket

次のステップ