日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。
StorageGRIDがオブジェクトのS3 REST API操作を実装する方法
このセクションでは、 StorageGRID システムでオブジェクトの S3 REST API 処理を実装する方法について説明します。
すべてのオブジェクトの処理に次の条件が適用されます。
-
StorageGRID"整合性の値"次の例外を除き、オブジェクトに対するすべての操作でサポートされます。
-
同じキーに書き込む 2 つのクライアントなど、競合するクライアント要求は、「 latest-wins 」ベースで解決されます。「 latest-wins 」評価は、 S3 クライアントが処理を開始するタイミングではなく、 StorageGRID システムが特定の要求を完了したタイミングで行われます。
-
StorageGRID バケット内のオブジェクトは、匿名ユーザまたは別のアカウントが作成したオブジェクトも含めて、すべてバケット所有者によって所有されます。
次の表に、 StorageGRID での S3 REST API オブジェクト処理の実装方法を示します。
| 操作 |
インプリメンテーション |
|
DeleteObject要求を処理すると、StorageGRIDはすべての格納場所からオブジェクトのすべてのコピーをただちに削除しようとします。成功すると、 StorageGRID はただちにクライアントに応答を返します。30秒以内にすべてのコピーを削除できない場合(場所が一時的に使用できない場合など)、StorageGRID は削除対象のコピーをキューに登録し、クライアントに成功を通知します。
- 制限事項
-
-
多要素認証(MFA)と応答ヘッダー `x-amz-mfa`はサポートされていません。
-
`If-Match`および `If-None-Match`ヘッダーの動作は、StorageGRIDの構成によって異なります。これらのヘッダーを指定すると、エラーメッセージ(501 Not Implemented)が返される場合があります。 `If-Match`または `If-None-Match`ヘッダーが受け入れられても機能しない場合、より厳格な501 Not Implementedエラー動作を有効にする手順を含むアラートがトリガーされる可能性があります。
`x-amz-bypass-governance-retention`ヘッダーは、S3 Object Lockのないオブジェクトには影響を与えません。
- バージョン管理
-
特定のバージョンを削除するには、リクエスタがバケットの所有者であり、サブリソースを使用する必要があり 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 つのオブジェクトに複数の削除マーカーが存在することがあります。
|
(以前の名前はDELETE Multiple Objects)
|
多要素認証(MFA)と応答ヘッダー `x-amz-mfa`はサポートされていません。
同じ要求メッセージで複数のオブジェクトを削除できます。
`x-amz-bypass-governance-retention`ヘッダーは、S3 Object Lockのないオブジェクトには影響を与えません。
|
|
サブリソースを使用して、 `tagging`オブジェクトからすべてのタグを削除します。
- バージョン管理
-
要求にクエリパラメータが指定されていない場合、 `versionId`バージョン管理されたバケット内のオブジェクトの最新バージョンからすべてのタグが削除されます。オブジェクトの現在のバージョンが削除マーカーの場合は、「MethodNotAllowed」ステータスが返され、 `x-amz-delete-marker`応答ヘッダーがに設定され `true`ます。
|
|
|
|
アカウントに必要なアクセスクレデンシャルがある場合、オブジェクトの所有者にオブジェクトに対するフルアクセスがあることを示す応答が返され、所有者の ID 、表示名、および権限が表示されます。
|
|
|
|
|
|
サブリソースを使用して、 `tagging`オブジェクトのすべてのタグを返します。
- バージョン管理
-
要求にクエリパラメータが指定されていない場合、 `versionId`バージョン管理されたバケット内のオブジェクトの最新バージョンのすべてのタグが返されます。オブジェクトの現在のバージョンが削除マーカーの場合は、「MethodNotAllowed」ステータスが返され、 `x-amz-delete-marker`応答ヘッダーがに設定され `true`ます。
|
|
|
|
|
|
|
(以前の名前はPUT Object - Copy)
|
|
|
|
|
|
|
サブリソースを使用して、 `tagging`既存のオブジェクトに一連のタグを追加します。
- オブジェクトタグの制限
-
タグは、新しいオブジェクトをアップロードするときに追加することも、既存のオブジェクトに追加することもできます。StorageGRID と Amazon S3 はどちらも、オブジェクトごとに最大 10 個のタグをサポートします。オブジェクトに関連付けられたタグには、一意のタグキーが必要です。タグキーには Unicode 文字を 128 文字まで、タグ値には Unicode 文字を 256 文字まで使用できます。キーと値では大文字と小文字が区別されます。
- タグの更新と取り込み動作
-
PutObjectTaggingを使用してオブジェクトのタグを更新した場合、StorageGRIDはオブジェクトを再取り込みしません。これは、一致する ILM ルールで指定されている取り込み動作が使用されないことを意味します。更新によって発生したオブジェクト配置の変更は、通常のバックグラウンド ILM プロセスで ILM が再評価されるときに実施されます。
つまり、ILMルールの取り込み動作にStrictオプションが使用されている場合、必要なオブジェクト配置を実行できない場合(新たに必要な場所が使用できない場合など)は処理されません。更新されたオブジェクトは、必要な配置を実行可能になるまで現在の配置が維持されます。
- 競合の解決
-
同じキーに書き込む 2 つのクライアントなど、競合するクライアント要求は、「 latest-wins 」ベースで解決されます。「 latest-wins 」評価は、 S3 クライアントが処理を開始するタイミングではなく、 StorageGRID システムが特定の要求を完了したタイミングで行われます。
- バージョン管理
-
要求にクエリパラメータが指定されていない場合は versionId、バージョン管理されたバケット内のオブジェクトの最新バージョンにタグが追加されます。オブジェクトの現在のバージョンが削除マーカーの場合は、「MethodNotAllowed」ステータスが返され、 `x-amz-delete-marker`応答ヘッダーがに設定され `true`ます。
|
SelectObjectContent の順に選択します
|
|