Skip to main content
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

バケットの処理

共同作成者

StorageGRID システムでは、 S3 テナントアカウントあたり最大 1 、 000 個のバケットがサポートされます。

バケット名にはAWS US Standardリージョンの制限事項が適用されますが、S3仮想ホスト形式の要求をサポートするためにDNSの命名規則にも制限する必要があります。

詳細については、次を参照してください。

ListObjects(GET Bucket)処理とListObjectVersions(GET Bucketオブジェクトバージョン)処理でStorageGRIDがサポートされるようになりました。 "整合性の値"

最終アクセス時間の更新が個々のバケットで有効になっているか無効になっているかを確認することができます。を参照してください "GET Bucket last access time の場合"

次の表に、 StorageGRID での S3 REST API バケット処理の実装方法を示します。これらの処理を実行するには、アカウントに必要なアクセスクレデンシャルが付与されている必要があります。

操作 実装

CreateBucketを選択します

新しいバケットを作成します。バケットを作成すると、そのバケットの所有者になります。

  • バケット名は次のルールを満たす必要があります。

    • StorageGRID システム全体で(テナントアカウント内だけではなく)一意である必要があります。

    • DNS に準拠している必要があります。

    • 3 文字以上 63 文字以下にする必要があります。

    • 1 つ以上のラベルを連続して指定できます。隣接するラベルはピリオドで区切ります。各ラベルの先頭と末尾の文字は小文字のアルファベットか数字にする必要があり、使用できる文字は小文字のアルファベット、数字、ハイフンのみです。

    • テキスト形式の IP アドレスのようにはできません。

    • 仮想ホスト形式の要求でピリオドを使用しないでください。ピリオドを使用すると、サーバワイルドカード証明書の検証で原因 の問題が発生します。

  • デフォルトでは、バケットはに作成されます us-east-1 リージョン。ただし、を使用することはできます LocationConstraint 別のリージョンを指定するように要求本文内の要求要素。を使用する場合 LocationConstraint 要素:Grid Managerまたはグリッド管理APIを使用して定義されているリージョンの正確な名前を指定する必要があります。使用するリージョン名がわからない場合は、システム管理者にお問い合わせください。

    :CreateBucket要求がStorageGRIDで定義されていないリージョンを使用すると、エラーが発生します。

  • を含めることができます x-amz-bucket-object-lock-enabled S3オブジェクトのロックを有効にしてバケットを作成する要求ヘッダー。を参照してください "S3 REST APIを使用してS3オブジェクトロックを設定します"

    バケットの作成時に S3 オブジェクトのロックを有効にする必要があります。バケットの作成後にS3オブジェクトロックを追加または無効にすることはできません。S3 オブジェクトロックにはバケットのバージョン管理が必要です。バケットの作成時に自動的に有効になります。

DeleteBucketの場合

バケットを削除します。

DeleteBucketCors

バケットのCORS設定を削除します。

DeleteBucketEncryption

バケットからデフォルトの暗号化を削除します。既存の暗号化オブジェクトは暗号化されたままですが、バケットに追加された新しいオブジェクトは暗号化されません。

DeleteBucketLifecycle

バケットからライフサイクル設定を削除します。を参照してください "S3 ライフサイクル設定を作成する"

DeleteBucketPolicyのようになります

バケットに関連付けられているポリシーを削除します。

DeleteBucketReplication

バケットに関連付けられているレプリケーション設定を削除します。

DeleteBucketTagging

を使用します tagging サブリソース:バケットからすべてのタグを削除します。

注意:このバケットにデフォルト以外のILMポリシータグが設定されている場合、 NTAP-SG-ILM-BUCKET-TAG 値が割り当てられたバケットタグ。DeleteBucketTagging要求がある場合は問題を実行しない NTAP-SG-ILM-BUCKET-TAG バケットタグ。代わりに、問題でPutBucketTagging要求を実行し、 NTAP-SG-ILM-BUCKET-TAG 他のすべてのタグをバケットから削除するには、タグとその割り当て値を使用します。を変更または削除しないでください。 NTAP-SG-ILM-BUCKET-TAG バケットタグ。

GetBucketAcl

バケットの所有者にバケットへのフルアクセスがあることを示す応答が返され、所有者のID、表示名、および権限が表示されます。

GetBucketCors

を返します。 cors バケットの設定。

GetBucketEncryptionの略

バケットのデフォルトの暗号化設定を返します。

GetBucketLifecycleConfiguration

(以前のGET Bucket lifecycle)

バケットのライフサイクル設定を返します。を参照してください "S3 ライフサイクル設定を作成する"

GetBucketLocation

を使用して設定されたリージョンを返します。 LocationConstraint CreateBucket要求の要素。バケットのリージョンがの場合 `us-east-1`を指定すると、リージョンに対して空の文字列が返されます。

GetBucketNotificationConfigurationを参照してください

(以前の名前のGET Bucket notification)

バケットに関連付けられている通知設定を返します。

GetBucketPolicyのようになります

バケットに関連付けられているポリシーを返します。

GetBucketReplicationの略

バケットに関連付けられているレプリケーション設定を返します。

GetBucketTagging

を使用します tagging サブリソース:バケットのすべてのタグを返す

注意:このバケットにデフォルト以外のILMポリシータグが設定されている場合、 NTAP-SG-ILM-BUCKET-TAG 値が割り当てられたバケットタグ。このタグを変更または削除しないでください。

GetBucketVersioningの各ノードの設定

この実装ではを使用します versioning サブリソース:バケットのバージョン管理の状態を返します。

  • blank:バージョン管理が一度も有効になっていない(バケットは「バージョン管理されていない」)

  • 有効:バージョン管理が有効になっています

  • 中断:バージョン管理は以前有効になっていて、中断されています

GetObjectLockConfigurationの略

バケットのデフォルトの保持モードとデフォルトの保持期間(設定されている場合)を返します。

ヘッドバケット

バケットが存在し、そのバケットにアクセスする権限があるかどうかを確認します。

この処理から返される情報は次の

  • x-ntap-sg-bucket-id:バケットのUUID(UUID形式)。

  • x-ntap-sg-trace-id:関連付けられた要求の一意のトレースID。

listObjectsおよびListObjectsV2

(以前の名前はGET Bucket)

バケット内のオブジェクトの一部またはすべて(最大1、000)を返します。を使用してオブジェクトを取り込んだ場合でも、オブジェクトのストレージクラスには2つの値が設定されます REDUCED_REDUNDANCY ストレージクラスのオプション:

  • `STANDARD`を指定します。このオブジェクトは、ストレージノードで構成されるストレージプールに格納されます。

  • `GLACIER`を指定します。このオブジェクトは、クラウドストレージプールで指定された外部バケットに移動されています。

バケットに同じプレフィックスを持つ削除済みキーが多数含まれている場合、応答に一部のキーが含まれることがあります CommonPrefixes 鍵が入っていないものです

ListObjectVersions

(以前のGET Bucket Object versions)

バケットに対する読み取りアクセスが許可されている場合、 versions サブリソースには、バケット内のオブジェクトのすべてのバージョンのメタデータが表示されます。

PutBucketCorsの略

クロスオリジン要求を処理できるように、バケットのCORS設定を設定します。Cross-Origin Resource Sharing ( CORS )は、あるドメインのクライアント Web アプリケーションが別のドメインのリソースにアクセスできるようにするセキュリティ機能です。たとえば、というS3バケットを使用するとします images グラフィックを保存します。のCORS設定を指定します images バケットを使用すると、そのバケット内の画像をWebサイトに表示できます http://www.example.com

PutBucketEncryptionの略

既存のバケットのデフォルトの暗号化状態を設定します。バケットレベルの暗号化が有効な場合は、バケットに追加されたすべての新しいオブジェクトが暗号化されます。 StorageGRID では、 StorageGRID で管理されるキーによるサーバ側の暗号化がサポートされます。サーバ側の暗号化設定ルールを指定する場合は、を設定します SSEAlgorithm パラメータの値 AES256`を使用しないでください `KMSMasterKeyID パラメータ

バケットのデフォルトの暗号化設定は、オブジェクトのアップロード要求ですでに暗号化が指定されている場合(要求にが含まれている場合)は無視されます x-amz-server-side-encryption-* 要求ヘッダー)。

PutBucketLifecycleConfigurationの略

(以前のPUT Bucket lifecycle)

バケットの新しいライフサイクル設定を作成するか、既存のライフサイクル設定と置き換えます。StorageGRID では、 1 つのライフサイクル設定で最大 1 、 000 個のライフサイクルルールがサポートされます。各ルールには、次の XML 要素を含めることができます。

  • 有効期限(日数、日付、ExpiredObjectDeleteMarker)

  • NoncurrentVersionExpiration(NewerNoncurrentVersions、NoncurrentDays)

  • フィルタ(プレフィックス、タグ)

  • ステータス

  • ID

StorageGRID では、次のアクションはサポートされません。

  • AbortIncompleteMultipartUpload の略

  • 移行

を参照してください "S3 ライフサイクル設定を作成する"。バケットライフサイクルのExpirationアクションとILMの配置手順の相互作用については、を参照してください "オブジェクトのライフサイクル全体にわたる ILM の動作"

  • 注:バケットライフサイクル設定は S3 オブジェクトロックが有効なバケットで使用できますが、従来の準拠バケットではバケットライフサイクル設定がサポートされません。

PutBucketNotificationConfigurationの略

(以前の名前のPUT Bucket通知)

要求の本文に含まれる通知設定XMLを使用してバケットの通知を設定します。実装に関する次の詳細事項に注意してください。

  • StorageGRIDでは、Amazon Simple Notification Service(Amazon SNS)またはKafkaトピックがデスティネーションとしてサポートされます。Simple Queue Service(SQS)またはAmazon Lambdaエンドポイントはサポートされていません。

  • 通知のデスティネーションは、 StorageGRID エンドポイントの URN として指定する必要があります。エンドポイントは、 Tenant Manager またはテナント管理 API を使用して作成できます。

    通知設定が機能するためには、エンドポイントが存在している必要があります。エンドポイントが存在しない場合は、 400 Bad Request エラーがコードとともに返されます InvalidArgument

  • 次のイベントタイプに対して通知を設定することはできません。これらのイベントタイプは * サポートされていません。

    • s3:ReducedRedundancyLostObject

    • s3:ObjectRestore:Completed

  • StorageGRID から送信されるイベント通知は標準のJSON形式を使用しますが、次のリストに示すように、一部のキーが含まれず、他のキーには特定の値が使用されます。

    • * eventSource*

      sgws:s3

    • * awsRegion *

      含まれません

    • * x-amz-id-2 *

      含まれません

    • * arn *

      urn:sgws:s3:::bucket_name

PutBucketPolicyのように指定します

バケットに関連付けられたポリシーを設定します。を参照してください "バケットとグループのアクセスポリシーを使用"

PutBucketReplicationの略

構成 "StorageGRID CloudMirrorレプリケーション" (バケット用)。要求の本文に含まれるレプリケーション設定XMLを使用します。CloudMirror レプリケーションについては、実装に関する次の詳細事項に注意してください。

  • StorageGRID では、 V1 のレプリケーション設定のみがサポートされます。つまり、StorageGRID では、の使用はサポートされていません Filter ルールのエレメント。V1の規則に従ってオブジェクトバージョンを削除します。詳細については、を参照してください "Amazon Simple Storage Serviceユーザガイド:レプリケーションの設定"

  • バケットレプリケーションは、バージョン管理されているバケットでもバージョン管理されていないバケットでも設定でき

  • レプリケーション設定 XML の各ルールで異なるデスティネーションバケットを指定できます。1 つのソースバケットを複数のデスティネーションバケットにレプリケートできます。

  • デスティネーションバケットは、テナントマネージャまたはテナント管理 API で指定された StorageGRID エンドポイントの URN として指定する必要があります。を参照してください "CloudMirror レプリケーションを設定します"

    レプリケーション設定が機能するためには、エンドポイントが存在している必要があります。エンドポイントが存在しない場合は、として要求が失敗します 400 Bad Request。エラーメッセージ: Unable to save the replication policy. The specified endpoint URN does not exist: URN.

  • を指定する必要はありません Role 設定XMLを使用します。この値は StorageGRID では使用されず、送信されても無視されます。

  • 設定XMLでストレージクラスを省略した場合、StorageGRID ではを使用します STANDARD デフォルトのストレージクラス。

  • ソースバケットからオブジェクトを削除する場合、またはソースバケット自体を削除する場合、クロスリージョンレプリケーションは次のように動作します。

    • レプリケートの前にオブジェクトまたはバケットを削除した場合、オブジェクトまたはバケットはレプリケートされず、通知も送信されません。

    • レプリケートのあとにオブジェクトまたはバケットを削除すると、 StorageGRID は、 V1 のクロスリージョンレプリケーションに対する Amazon S3 の通常の削除動作に従います。

PutBucketTaggingの略

を使用します tagging サブリソース:バケットの一連のタグを追加または更新できます。バケットタグを追加する場合は、次の制限事項に注意してください。

  • StorageGRID と Amazon S3 はどちらもバケットごとに最大 50 個のタグをサポートします。

  • バケットに関連付けられているタグには、一意のタグキーが必要です。タグキーには Unicode 文字を 128 文字まで使用できます。

  • タグ値には、 Unicode 文字を 256 文字以内で指定します。

  • キーと値では大文字と小文字が区別されます。

注意:このバケットにデフォルト以外のILMポリシータグが設定されている場合、 NTAP-SG-ILM-BUCKET-TAG 値が割り当てられたバケットタグ。次のことを確認します。 NTAP-SG-ILM-BUCKET-TAG バケットタグは、すべてのPutBucketTagging要求で割り当てられた値に含まれます。このタグを変更または削除しないでください。

:この処理を実行すると、バケットにすでに設定されている現在のタグが上書きされます。セットから既存のタグを省略すると、それらのタグはバケットから削除されます。

PutBucketVersioningの各ノードの設定

を使用します versioning サブリソース:既存のバケットのバージョン管理の状態を設定できます。バージョン管理の状態は、次のいずれかの値に設定できます。

  • Enabled :バケット内のオブジェクトに対してバージョン管理を有効にします。バケットに追加されるすべてのオブジェクトに、一意のバージョン ID が割り当てられます。

  • Suspended :バケット内のオブジェクトに対してバージョン管理を無効にします。バケットに追加されるすべてのオブジェクトに、バージョンIDが割り当てられます null

PutObjectLockConfigurationの略

バケットのデフォルトの保持モードとデフォルトの保持期間を設定または削除します。

デフォルトの保持期間を変更した場合、既存のオブジェクトバージョンの retain-until はそのまま残り、新しいデフォルトの保持期間を使用して再計算されることはありません。

を参照してください "S3 REST APIを使用してS3オブジェクトロックを設定します" を参照してください。