このページでは、オブジェクト保留の使用方法を説明します。新しいオブジェクトにデフォルトで保留を設定する方法や、個々のオブジェクトに保留を設定する方法を学習します。
必要な権限
Cloud Storage でこの機能を使用する前に、Cloud Storage でバケットとオブジェクトを表示して更新するため権限が必要です。
バケットを含むプロジェクトを所有している場合は、必要な権限があると考えられます。
IAM を使用する場合は、関連するバケットに対する
storage.buckets.update
、storage.buckets.get
、storage.objects.update
、storage.objects.get
権限が必要です。これらの権限を持つロール(ストレージ管理者など)を取得する手順については、IAM 権限の使用をご覧ください。ACL を使用する場合は、関連するバケットとそのオブジェクトに対する OWNER 権限が必要です。設定方法については、ACL の設定をご覧ください。
デフォルトのイベントベースの保留プロパティを使用する
以下のタスクでは、バケットでデフォルトのイベントベースの保留プロパティを設定し、表示する方法について説明します。このプロパティを有効にすると、バケットに追加された新しいオブジェクトにイベントベースの保留が自動的に設定されます。
デフォルトのイベントベースの保留プロパティを設定する
バケットでデフォルトのイベントベースの保留プロパティを有効または無効にするには:
コンソール
- Google Cloud コンソールで、Cloud Storage の [バケット] ページに移動します。
バケットのリストで、デフォルトのイベントベースの保留プロパティを設定するバケットの名前をクリックします。
ページ上部にある [保護] タブを選択します。
バケットの現在のステータスは、[デフォルトのイベントベースの保留オプション] セクションに表示されます。
[デフォルトのイベントベースの保留オプション] セクションで、現在のステータスをクリックして変更します。
ステータスは [有効] または [無効] と表示されます。
失敗した Cloud Storage オペレーションの詳細なエラー情報を Google Cloud コンソールで確認する方法については、トラブルシューティングをご覧ください。
コマンドライン
適切なフラグを指定して、gcloud storage buckets update
コマンドを使用します。
gcloud storage buckets update gs://BUCKET_NAME FLAG
ここで
BUCKET_NAME
は、関連するバケットの名前です。例:my-bucket
デフォルトのイベントベースのオブジェクト保留を有効にする場合、
FLAG
は--default-event-based-hold
、無効にする場合は--no-default-event-based-hold
です。
クライアント ライブラリ
C++
詳細については、Cloud Storage C++ API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
次のサンプルでは、バケットでデフォルトのイベントベースの保留を有効にしています。
次のサンプルでは、バケットでデフォルトのイベントベースの保留を無効にしています。
C#
詳細については、Cloud Storage C# API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
次のサンプルでは、バケットでデフォルトのイベントベースの保留を有効にしています。
次のサンプルでは、バケットでデフォルトのイベントベースの保留を無効にしています。
Go
詳細については、Cloud Storage Go API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
次のサンプルでは、バケットでデフォルトのイベントベースの保留を有効にしています。
次のサンプルでは、バケットでデフォルトのイベントベースの保留を無効にしています。
Java
詳細については、Cloud Storage Java API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
次のサンプルでは、バケットでデフォルトのイベントベースの保留を有効にしています。
次のサンプルでは、バケットでデフォルトのイベントベースの保留を無効にしています。
Node.js
詳細については、Cloud Storage Node.js API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
次のサンプルでは、バケットでデフォルトのイベントベースの保留を有効にしています。
次のサンプルでは、バケットでデフォルトのイベントベースの保留を無効にしています。
PHP
詳細については、Cloud Storage PHP API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
次のサンプルでは、バケットでデフォルトのイベントベースの保留を有効にしています。
次のサンプルでは、バケットでデフォルトのイベントベースの保留を無効にしています。
Python
詳細については、Cloud Storage Python API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
次のサンプルでは、バケットでデフォルトのイベントベースの保留を有効にしています。
次のサンプルでは、バケットでデフォルトのイベントベースの保留を無効にしています。
Ruby
詳細については、Cloud Storage Ruby API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
次のサンプルでは、バケットでデフォルトのイベントベースの保留を有効にしています。
次のサンプルでは、バケットでデフォルトのイベントベースの保留を無効にしています。
REST API
JSON API
- OAuth 2.0 Playground から認可アクセス トークンを取得します。固有の OAuth 認証情報を使用するように Playground を構成します。手順については、API 認証をご覧ください。
次の情報が含まれる JSON ファイルを作成します。
{ "defaultEventBasedHold": STATE }
ここで、STATE は
true
またはfalse
です。cURL
を使用して JSON API を呼び出し、PATCH
Bucket リクエストを行います。curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer OAUTH2_TOKEN" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=defaultEventBasedHold"
ここで
JSON_FILE_NAME
は、手順 2 で作成したファイルのパスです。OAUTH2_TOKEN
は、手順 1 で生成したアクセス トークンです。BUCKET_NAME
は、関連するバケットの名前です。例:my-bucket
XML API
XML API でオブジェクト保留を処理することはできません。代わりに、gcloud CLI などの他の Cloud Storage ツールを使用してください。
バケットのデフォルトの保留ステータスを取得する
バケットの新しいオブジェクトにイベントベースの保留がデフォルトで設定されるかどうかを確認するには:
コンソール
- Google Cloud コンソールで、Cloud Storage の [バケット] ページに移動します。
バケットのリストで、デフォルトのイベントベースのステータスを確認するバケットの名前をクリックします。
ページ上部にある [保護] タブを選択します。
ステータスが [デフォルトのイベントベースの保留オプション] セクションに表示されます。
失敗した Cloud Storage オペレーションの詳細なエラー情報を Google Cloud コンソールで確認する方法については、トラブルシューティングをご覧ください。
コマンドライン
gcloud storage buckets describe
コマンドを使用し、--format
フラグを指定します。
gcloud storage buckets describe gs://BUCKET_NAME --format="default(default_event_based_hold)"
ここで、BUCKET_NAME
はステータスを表示するバケットの名前です。例: my-bucket
。
正常に終了すると、レスポンスは次の例のようになります。
default_event_based_hold: true
クライアント ライブラリ
C++
詳細については、Cloud Storage C++ API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
C#
詳細については、Cloud Storage C# API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Go
詳細については、Cloud Storage Go API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Java
詳細については、Cloud Storage Java API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Node.js
詳細については、Cloud Storage Node.js API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
PHP
詳細については、Cloud Storage PHP API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Python
詳細については、Cloud Storage Python API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
Ruby
詳細については、Cloud Storage Ruby API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
REST API
JSON API
- OAuth 2.0 Playground から認可アクセス トークンを取得します。固有の OAuth 認証情報を使用するように Playground を構成します。手順については、API 認証をご覧ください。
cURL
を使用して、目的のfields
を含むGET
Bucket リクエストで JSON API を呼び出します。curl -X GET -H "Authorization: Bearer OAUTH2_TOKEN" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=defaultEventBasedHold"
ここで
OAUTH2_TOKEN
は、手順 1 で生成したアクセス トークンです。BUCKET_NAME
は、関連するバケットの名前です。例:my-bucket
。
バケットでデフォルトのイベントベースの保留が有効になっている場合、レスポンスは次のようになります。
{ "defaultEventBasedHold": true }
XML API
XML API でオブジェクト保留を処理することはできません。代わりに、gcloud CLI などの他の Cloud Storage ツールを使用してください。
個々のオブジェクト保留を管理する
以下では、個々のオブジェクトの保留の変更と表示を行う方法について説明します。
オブジェクト保留を設定または解除する
バケット内のオブジェクトに保留を設定または解除するには、次の操作を行います。
コンソール
- Google Cloud コンソールで、Cloud Storage の [バケット] ページに移動します。
バケットのリストで、保留を設定または解除するオブジェクトを含むバケットの名前をクリックします。
保留を設定または解除するオブジェクト名の横にあるチェックボックスをオンにします。
[保留を管理] ボタンをクリックします。
[保留を管理] ウィンドウが表示されます。
必要に応じて、保留の種類の各チェックボックスをオンにします。
[保留の設定を保存] をクリックします。
失敗した Cloud Storage オペレーションの詳細なエラー情報を Google Cloud コンソールで確認する方法については、トラブルシューティングをご覧ください。
コマンドライン
適切なフラグを指定して、gcloud storage objects update
コマンドを使用します。
gcloud storage objects update gs://BUCKET_NAME/OBJECT_NAME FLAG
ここで
BUCKET_NAME
は、関連するバケットの名前です。例:my-bucket
。OBJECT_NAME
は、該当するオブジェクトの名前です。例:pets/dog.png
FLAG
は、次のいずれかです。--event-based-hold
: オブジェクトでイベントベースの保留を有効にします。--no-event-based-hold
: オブジェクトでイベントベースの保留を無効にします。--temporary-hold
: オブジェクトで一時保留を有効にします。--no-temporary-hold
: オブジェクトで一時保留を無効にします。
保留の種類の詳細については、オブジェクト保留をご覧ください。
クライアント ライブラリ
C++
詳細については、Cloud Storage C++ API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
次のサンプルでは、オブジェクトにイベントベースの保留を設定しています。
次のサンプルでは、オブジェクトのイベントベースの保留を解除しています。
次のサンプルでは、オブジェクトに一時保留を設定しています。
次のサンプルでは、オブジェクトの一時保留を解除しています。
C#
詳細については、Cloud Storage C# API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
次のサンプルでは、オブジェクトにイベントベースの保留を設定しています。
次のサンプルでは、オブジェクトのイベントベースの保留を解除しています。
次のサンプルでは、オブジェクトに一時保留を設定しています。
次のサンプルでは、オブジェクトの一時保留を解除しています。
Go
詳細については、Cloud Storage Go API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
次のサンプルでは、オブジェクトにイベントベースの保留を設定しています。
次のサンプルでは、オブジェクトのイベントベースの保留を解除しています。
次のサンプルでは、オブジェクトに一時保留を設定しています。
次のサンプルでは、オブジェクトの一時保留を解除しています。
Java
詳細については、Cloud Storage Java API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
次のサンプルでは、オブジェクトにイベントベースの保留を設定しています。
次のサンプルでは、オブジェクトのイベントベースの保留を解除しています。
次のサンプルでは、オブジェクトに一時保留を設定しています。
次のサンプルでは、オブジェクトの一時保留を解除しています。
Node.js
詳細については、Cloud Storage Node.js API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
次のサンプルでは、オブジェクトにイベントベースの保留を設定しています。
次のサンプルでは、オブジェクトのイベントベースの保留を解除しています。
次のサンプルでは、オブジェクトに一時保留を設定しています。
次のサンプルでは、オブジェクトの一時保留を解除しています。
PHP
詳細については、Cloud Storage PHP API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
次のサンプルでは、オブジェクトにイベントベースの保留を設定しています。
次のサンプルでは、オブジェクトのイベントベースの保留を解除しています。
次のサンプルでは、オブジェクトに一時保留を設定しています。
次のサンプルでは、オブジェクトの一時保留を解除しています。
Python
詳細については、Cloud Storage Python API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
次のサンプルでは、オブジェクトにイベントベースの保留を設定しています。
次のサンプルでは、オブジェクトのイベントベースの保留を解除しています。
次のサンプルでは、オブジェクトに一時保留を設定しています。
次のサンプルでは、オブジェクトの一時保留を解除しています。
Ruby
詳細については、Cloud Storage Ruby API のリファレンス ドキュメントをご覧ください。
Cloud Storage に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
次のサンプルでは、オブジェクトにイベントベースの保留を設定しています。
次のサンプルでは、オブジェクトのイベントベースの保留を解除しています。
次のサンプルでは、オブジェクトに一時保留を設定しています。
次のサンプルでは、オブジェクトの一時保留を解除しています。
REST API
JSON API
- OAuth 2.0 Playground から認可アクセス トークンを取得します。固有の OAuth 認証情報を使用するように Playground を構成します。手順については、API 認証をご覧ください。
次の情報が含まれる JSON ファイルを作成します。
{ "HOLD_TYPE": STATE }
ここで
HOLD_TYPE
は、オブジェクトに設定または解除する保留の種類です。たとえば、temporaryHold
やeventBasedHold
です。保留の種類の詳細については、オブジェクト保留をご覧ください。- 保留を設定する場合、
STATE
はtrue
です。保留を解除する場合はfalse
です。
cURL
を使用して、PATCH
Object リクエストで JSON API を呼び出します。curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer OAUTH2_TOKEN" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME"
ここで
JSON_FILE_NAME
は、手順 2 で作成したファイルのパスです。OAUTH2_TOKEN
は、手順 1 で生成したアクセス トークンです。BUCKET_NAME
は、関連するバケットの名前です。例:my-bucket
OBJECT_NAME
は、関連するオブジェクトの URL エンコードされた名前です。例:pets%2Fdog.png
として URL エンコードされているpets/dog.png
XML API
XML API でオブジェクト保留を処理することはできません。代わりに、gcloud CLI などの他の Cloud Storage ツールを使用してください。
オブジェクト保留のステータスを取得する
オブジェクトに設定されている保留を確認するには、オブジェクト メタデータの表示にある一般的な手順を行います。
次のステップ
- オブジェクトに設定可能な保留の種類など、オブジェクト保留の詳細を学習する。
- 保持ポリシーの使用方法を学習する。
- リクエストの前提条件を満たして競合状態を防ぐ方法について学習する。