このページでは、オブジェクト保留について説明します。オブジェクト保留とは、個々のオブジェクトに設定するメタデータ フラグのことです。オブジェクトに保留が設定されている場合、そのオブジェクトの削除や置換はできません。ただし、オブジェクトのメタデータを編集することはできます。
保留の種類
Cloud Storage では、次のような保留を使用できます。
- イベントベースの保留
- 一時的な保留
1 つのオブジェクトにどちらか 1 つのタイプの保留、もしくは両方のタイプの保留を設定することもできます。また、保留を設定しなくてもかまいません。オブジェクトに保持構成が設定されておらず、保持ポリシーのないバケットに保存されている場合、どちらの保留タイプもまったく同じように動作します。次の表に、オブジェクトに保持構成が設定されている場合、または保持ポリシーが設定されたバケットに保存されている場合の保留タイプの動作を示します。
オブジェクトにイベントベースの保留が設定されている | オブジェクトに一時保留が設定されている | |
---|---|---|
オブジェクトに保持構成が設定されている | 該当なし: オブジェクトにイベントベースの保留と保持構成を同時に適用することはできません。 | 一時保留を解除しても、オブジェクトの保持時間には影響しません。 |
オブジェクトは保持ポリシーが設定されたバケットに保存されている | イベントベースの保留を解除すると、保持期間を維持するため、バケット内のオブジェクトの経過時間がリセットされます。 | 一時保留を解除した場合、このような目的でバケット内でオブジェクトの経過時間が変更されることはありません。 |
イベントベースの保留の例
保持ポリシーで 1 年間の保持期間が設定されているバケットに 2 つのオブジェクト(オブジェクト A と B)があるとします。オブジェクトをバケットに追加したときに、オブジェクト A にイベントベースの保留が設定され、オブジェクト B に一時保留が設定されています。保留が設定されていなければ、これらのオブジェクトは 1 年後に削除可能になりますが、この場合は保留が設定されているため、オブジェクトを削除できません。
この時点で、両方のオブジェクトの保留を解除します。イベントベースの保留を使用していたオブジェクト A では、バケットの保持期間が再開します。つまり、もう 1 年経過しないと、オブジェクトの削除や置換はできません。一時保留を使用していたオブジェクト B は、一時保留がオブジェクトの保持期間の満了時期に影響を及ぼさないため、すぐに削除または置換できます。
この動作により、イベントベースの保留を保持ポリシーと組み合わせて使用することで、イベントの発生に基づいて保持を制御できます。たとえば、ローンの支払い後、ローンの関係文書を一定期間保持する場合に使用します。一時的な保留は、規制や法的調査の目的で使用されます。たとえば、法的調査で取引関連の書類を保持する場合に使用します。
デフォルトのイベントベースの保留プロパティ
個々のオブジェクトに保留を設定するだけでなく、バケットでデフォルトのイベントベースのプロパティを有効にすることもできます。この場合、バケットに新しいオブジェクトを追加するたびに、これらのオブジェクトにイベントベースの保留が自動的に設定されます。
これは、特定のイベントが発生した後に一定期間オブジェクトをバケット内に残したい場合に便利です。たとえば、ローンの支払いが完了した後にローン関連の文書を数年間保管しなければならない場合に使用します。バケットに適切な保持ポリシーが設定され、デフォルトのイベントベースの保留プロパティが有効になっている場合、ローン関連文書をバケットにアップロードすると、イベントベースの保留が設定されます。ローンを完済したときに保留を解除できます。この時点で、保持ポリシーにより、保持期間が完了するまでローン関連文書が変更されずに保管されます。
制限事項
既存の保持構成を持つオブジェクトにイベントベースの保留を適用しようとするリクエストは失敗します。
- オブジェクトにイベントベースの保留を設定し、オブジェクトの保持構成を設定するリクエストも同様に失敗します。
XML API でオブジェクト保留を管理することはできません。XML API を使用してオブジェクト メタデータを取得する場合、オブジェクトの保留ステータスは含まれません。
ただし、オブジェクトを保留しているときに XML API でオブジェクトの削除または置換を行うと失敗します。
XML API マルチパート アップロードの場合、アップロードを開始してパートをアップロードできますが、保留中のオブジェクトが上書きされた場合、アップロードの完了リクエストが失敗します。
次のステップ
- デフォルトでイベントベースの保留を有効にする方法と、個々のオブジェクト保留を設定する方法を確認する。
- 指定した期間データを削除から保護する保持ポリシーについて学習する。
- バケットのライフサイクル構成で、保留解除時にオブジェクトを自動的に削除する方法について学習する。