PUT Bucket compliance要求

PUT Bucket compliance要求では、作成した既存の準拠バケットの準拠設定を変更できます。たとえば、バケットをリーガル ホールドの対象にしたり、バケットの保持期間を長くしたりできます。バケットの保持期間を短縮することはできません

準拠バケットを作成するには、PUT Bucket要求とカスタムのSGCompliance XML要求要素を併用するか、Tenant Manager、またはテナント管理APIを使用する必要があります。

注:準拠の設定方法と、準拠設定がILMルールとポリシーに与える影響の詳細については、StorageGRID Webscaleの管理に関する情報を参照してください。

この処理を完了するには、s3:PutBucketCompliance権限またはrootアカウントが必要です。

PUT Bucket compliance要求を発行する際は、準拠設定のすべてのフィールドに値を指定する必要があります。

要求例

次の要求例では、mybucketという名前のバケットの準拠設定を変更しています。この例では、mybucket内のオブジェクトが、グリッドに取り込まれてから1年間ではなく2年間(1,051,200分)保持されます。このバケットにリーガル ホールドはありません。各オブジェクトは2年後に自動的に削除されます。

PUT /mybucket/?x-ntap-sg-compliance HTTP/1.1
Date: date
Authorization: authorization name
Host: host
Content-Length: 152

<SGCompliance>
  <RetentionPeriodMinutes>1051200</RetentionPeriodMinutes>
  <LegalHold>false</LegalHold>
  <AutoDelete>true</AutoDelete>
</SGCompliance>
名前 説明
RetentionPeriodMinutes このバケットに追加されたオブジェクトの保持期間(分)です。保持期間は、オブジェクトがグリッドに取り込まれたときからの期間です。
注意:RetentionPeriodMinutesに新しい値を指定する場合は、バケットの現在の保持期間の値以上の数字を指定する必要があります。設定したバケットの保持期間は、増やすことはできますが減らすことはできません。
LegalHold
  • True:このバケットは、現在リーガル ホールドの対象です。このバケット内のオブジェクトは、保持期間が過ぎたあとでも、リーガル ホールドが解除されるまで削除できません。
  • False:このバケットは、現在リーガル ホールドの対象ではありません。このバケット内のオブジェクトは、保持期間が過ぎたら削除できます。
AutoDelete
  • True:このバケット内のオブジェクトは、バケットがリーガル ホールドの対象である場合を除き、保持期間が過ぎると自動的に削除されます。
  • False:このバケット内のオブジェクトは、保持期間が過ぎても自動的には削除されません。これらのオブジェクトを削除する場合は、手動で行う必要があります。

準拠設定の整合性レベル

PUT Bucket compliance要求によってS3バケットの準拠設定を更新すると、StorageGRID Webscaleは、グリッド全体のバケットのメタデータを更新しようとします。デフォルトでは、StorageGRID Webscalestrong-global整合性レベルを使用し、バケットのメタデータを含むすべてのデータ センター サイトおよびストレージ ノードで、変更された準拠設定のリードアフターライト整合性を保証します。

データ センター サイトまたはサイトの複数のストレージ ノードが利用できないために、StorageGRID Webscalestrong-global整合性レベルを保証できない場合は、応答のHTTPステータス コードが503 Service Unavailable.になります。

この応答を受け取った場合は、必要なストレージ サービスをできるだけ早く利用可能にするために、グリッド管理者に問い合わせる必要があります。グリッド管理者が各サイトで十分な数のストレージ ノードを利用可能にできない場合は、テクニカル サポートから、strong-site整合性レベルを強制的に適用することで、失敗した要求を再試行するよう指示される場合があります。

注意:テクニカル サポートから指示され、お客様自身がこのレベルを使用する影響を把握している場合を除き、PUT Bucket complianceでstrong-site整合性レベルを強制的に適用することは避けてください。

整合性レベルをstrong-siteに下げると、StorageGRID Webscaleは、サイト内のクライアント要求に対してのみ、更新された準拠設定のリードアフターライト整合性を保証します。そのため、すべてのサイトおよびストレージ ノードが利用可能になるまでの間、StorageGRID Webscaleシステムにはこのバケットに対して複数の異なる設定が一時的に存在することになる場合があります。整合性のない設定があると、想定外の望ましくない動作が生じる場合があります。たとえば、あるバケットをリーガル ホールドの対象にして、低い整合性レベルを強制的に適用すると、一部のデータ センター サイトでバケットの以前の準拠設定(つまり、リーガル ホールドの対象外の状態)が引き続き適用される場合があります。これにより、本来ならリーガル ホールドの対象であるオブジェクトが、保持期間の終了後にユーザまたはAutoDelete(有効な場合)によって削除されてしまう場合があります。

strong-site整合性レベルを強制的に適用するには、PUT Bucket compliance要求を再発行し、以下のようにConsistency-Control HTTP要求ヘッダーに含めてください。

PUT /mybucket/?x-ntap-sg-compliance HTTP/1.1
Consistency-Control: strong-site

エラー応答

  • バケットが準拠バケットとして作成されていない場合は、応答のHTTPステータス コードが404 Not Foundになります。
  • 要求のRetentionPeriodMinutesがバケットの現在の保持期間よりも短い場合は、HTTPステータス コードが400 Bad Requestになります。