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

オブジェクトの処理

共同作成者

このセクションでは、 StorageGRID システムでオブジェクトの S3 REST API 処理を実装する方法について説明します。

すべてのオブジェクトの処理に次の条件が適用されます。

  • StorageGRID "整合性制御" オブジェクトに対するすべての操作でサポートされます。ただし、次の操作はサポートされません。

    • GET Object ACL の場合

    • OPTIONS /

    • オブジェクトのリーガルホールドを適用します

    • PUT Object retention のことです

    • オブジェクトコンテンツを選択します

  • 同じキーに書き込む 2 つのクライアントなど、競合するクライアント要求は、「 latest-wins 」ベースで解決されます。「latest-wins」評価のタイミングは、S3クライアントが処理を開始するタイミングではなく、StorageGRID システムが特定の要求を完了したタイミングに基づいています。

  • StorageGRID バケット内のオブジェクトは、匿名ユーザまたは別のアカウントが作成したオブジェクトも含めて、すべてバケット所有者によって所有されます。

  • Swiftを使用してStorageGRID システムに取り込まれたデータオブジェクトにS3を使用してアクセスすることはできません。

次の表に、 StorageGRID での S3 REST API オブジェクト処理の実装方法を示します。

操作 実装

オブジェクトを削除します

多要素認証(MFA)と応答ヘッダー x-amz-mfa はサポートされていません。

StorageGRID は、 DELETE Object 要求を処理する際に、オブジェクトのすべてのコピーをすべての格納場所からただちに削除しようとします。成功すると、 StorageGRID はただちにクライアントに応答を返します。30秒以内にすべてのコピーを削除できない場合(場所が一時的に使用できない場合など)、StorageGRID は削除対象のコピーをキューに登録し、クライアントに成功を通知します。

バージョン管理

特定のバージョンを削除するには、バケットの所有者を要求元にしてを使用する必要があります versionId サブリソース:このサブリソースを使用すると、バージョンが完全に削除されます。状況に応じて versionId 削除マーカー、応答ヘッダーに対応します x-amz-delete-marker はに設定されています true

  • を使用せずにオブジェクトが削除された場合 versionId バージョンが有効になっているバケットのサブリソースが表示されると、削除マーカーが生成されます。。 versionId 削除マーカーの場合は、を使用して戻ります x-amz-version-id 応答ヘッダー、および x-amz-delete-marker 応答ヘッダーがに設定されて返されます true

  • を使用せずにオブジェクトが削除された場合 versionId バージョンが一時停止中のバケットについて、既存の「null」バージョンまたは「null」削除マーカーが完全に削除され、新しい「null」削除マーカーが生成されます。。 x-amz-delete-marker 応答ヘッダーがに設定されて返されます true

  • 注 * :特定の場合、 1 つのオブジェクトに複数の削除マーカーが存在することがあります。

を参照してください "S3 REST APIを使用してS3オブジェクトロックを設定します" ガバナンスモードでオブジェクトバージョンを削除する方法については、を参照してください。

複数のオブジェクトを削除します

(DeleteObjects)

多要素認証(MFA)と応答ヘッダー x-amz-mfa はサポートされていません。

同じ要求メッセージで複数のオブジェクトを削除できます。

を参照してください "S3 REST APIを使用してS3オブジェクトロックを設定します" ガバナンスモードでオブジェクトバージョンを削除する方法については、を参照してください。

オブジェクトのタグ付けを削除します

を使用します tagging サブリソース:オブジェクトからすべてのタグを削除します。

バージョン管理

状況に応じて versionId クエリパラメータが要求で指定されていない場合、バージョン管理されたバケット内のオブジェクトの最新バージョンからすべてのタグが削除されます。オブジェクトの現在のバージョンが削除マーカーの場合は、"MethodNotAllowed`"ステータスがとともに返されます x-amz-delete-marker 応答ヘッダーをに設定しました true

オブジェクトの取得

GET Object ACL の場合

アカウントに必要なアクセスクレデンシャルがある場合、オブジェクトの所有者にオブジェクトに対するフルアクセスがあることを示す応答が返され、所有者の ID 、表示名、および権限が表示されます。

オブジェクトのリーガルホールドを取得します

GET Object retention のことです

GET Object tagging

を使用します tagging サブリソース:オブジェクトのすべてのタグを返すために使用します。

バージョン管理

状況に応じて versionId クエリパラメータが要求で指定されていない場合、バージョン管理されたバケット内のオブジェクトの最新バージョンからすべてのタグが返されます。オブジェクトの現在のバージョンが削除マーカーの場合は、"MethodNotAllowed`"ステータスがとともに返されます x-amz-delete-marker 応答ヘッダーをに設定しました true

HEAD Object の実行

POST Object restore の実行

PUT Object の場合

PUT Object - Copy の各コマンドを実行します

オブジェクトのリーガルホールドを適用します

PUT Object retention のことです

PUT Object tagging

を使用します tagging サブリソース:既存のオブジェクトに一連のタグを追加します。

オブジェクトタグの制限

タグは、新しいオブジェクトをアップロードするときに追加することも、既存のオブジェクトに追加することもできます。StorageGRID と Amazon S3 はどちらも、オブジェクトごとに最大 10 個のタグをサポートします。オブジェクトに関連付けられたタグには、一意のタグキーが必要です。タグキーには Unicode 文字を 128 文字まで、タグ値には Unicode 文字を 256 文字まで使用できます。キーと値では大文字と小文字が区別されます。

タグの更新と取り込み動作

PUT Object tagging を使用してオブジェクトのタグを更新した場合、 StorageGRID はオブジェクトを再取り込みしません。これは、一致する ILM ルールで指定されている取り込み動作が使用されないことを意味します。更新によって発生したオブジェクト配置の変更は、通常のバックグラウンド ILM プロセスで ILM が再評価されるときに実施されます。

つまり、ILMルールの取り込み動作にStrictオプションが使用されている場合、必要なオブジェクト配置を実行できない場合(新たに必要な場所が使用できない場合など)は処理されません。更新されたオブジェクトは、必要な配置を実行可能になるまで現在の配置が維持されます。

競合の解決

同一キーに書き込む2つのクライアントなど'競合するクライアント要求は'最新のWINS形式で解決されます「latest-wins」評価のタイミングは、S3クライアントが処理を開始するタイミングではなく、StorageGRID システムが特定の要求を完了したタイミングに基づいています。

バージョン管理

状況に応じて versionId クエリパラメータが要求で指定されていません。処理は、バージョン管理されたバケット内のオブジェクトの最新バージョンにタグを追加します。オブジェクトの現在のバージョンが削除マーカーの場合は、"MethodNotAllowed`"ステータスがとともに返されます x-amz-delete-marker 応答ヘッダーをに設定しました true

SelectObjectContent の順に選択します