Amazon S3 インベントリ
重要
Amazon S3 では、Amazon S3 のすべてのバケットに対する基本レベルの暗号化として、Amazon S3 マネージドキーによるサーバー側の暗号化 (SSE-S3) が適用されるようになりました。2023 年 1 月 5 日以降、Amazon S3 にアップロードされるすべての新しいオブジェクトは、追加費用なしで、パフォーマンスに影響を与えずに自動的に暗号化されます。S3 バケットのデフォルト暗号化設定と新しいオブジェクトのアップロードのための自動暗号化ステータスは、AWS CloudTrail ログ、S3 インベントリ、S3 ストレージレンズ、Amazon S3 コンソール、および AWS Command Line Interface と AWS SDK の追加の Amazon S3 API レスポンスヘッダーとして利用できるようになりました。詳細については、「デフォルトの暗号化のよくある質問」を参照してください。
Amazon S3 インベントリは、ストレージ管理に役立つ Amazon S3 が提供するツールの 1 つです。これは、ビジネス、コンプライアンス、および規制上のニーズに対応して、オブジェクトのレプリケーションと暗号化のステータスを監査し、レポートするために使用できます。また、Amazon S3 インベントリを使用して、ビジネスワークフローとビッグデータジョブを簡素化、高速化できます。このインベントリは、Amazon S3 同期 List
API オペレーションへ代替スケジュールを提供します。Amazon S3 インベントリでは、List
APIを使用してオブジェクトを監査しないので、バケットのリクエストレートには影響しません。
Amazon S3 インベントリは、カンマ区切り値 (CSV)、Apache optimized row columnar (ORC)
1 つのバケットに対して複数のインベントリリストを設定できます。インベントリに含めるオブジェクトメタデータ、すべてのオブジェクトバージョンと現在のバージョンだけのどちらをリストするか、インベントリリストのファイル出力を保存する場所、インベントリを毎日または毎週のどちらで生成するか、を設定できます。インベントリリストファイルを暗号化するように指定することもできます。
Amazon Athena、Amazon Redshift Spectrum、およびその他のツール (Presto
ソースバケットと保存先バケット
インベントリによってオブジェクトがリストされるバケットは、ソースバケットと呼ばれます。インベントリリストのファイルが保存されるバケットは、保存先バケットと呼ばれます。
ソースバケット
インベントリは、ソースバケットに格納されているオブジェクトをリストします。バケット全体のインベントリリストを取得することも、(オブジェクトキー名の) プレフィックスによってフィルタされたリストを取得することもできます。
ソースバケット:
-
インベントリにリストされているオブジェクトが含まれます。
-
インベントリの設定が含まれます。
保存先バケット
Amazon S3 インベントリリストのファイルは、保存先バケットに書き込まれます。すべてのインベントリリストファイルを保存先バケットの共通の場所にグループ化するには、インベントリの設定で保存先のプレフィックス (オブジェクトキー名) を指定します。
保存先バケット:
-
インベントリのファイルリストが含まれます。
-
保存先バケットに保存されているすべてのファイルインベントリリストをリストしたマニフェストファイルが含まれます。詳細については、「インベントリマニフェスト」を参照してください。
-
バケットの所有権を検証するためのアクセス許可と、バケットにファイルを書き込むためのアクセス許可を Amazon S3 に付与する、バケットポリシーが必要です。
-
ソースバケットと同じ AWS リージョン に存在する必要があります。
-
ソースバケットと同じでもかまいません。
-
ソースバケットを所有するアカウントとは別の AWS アカウント によって所有されていてもかまいません。
Amazon S3 インベントリのリスト
インベントリリストファイルには、ソースバケット内のオブジェクトのリストと、各オブジェクトのメタデータが含まれます。インベントリリストは、GZIP で圧縮された CSV ファイル、ZLIB で圧縮された Apache 最適化行列 (ORC) ファイル、または Snappy で圧縮された Apache Parquet ファイルとして保存先バケットに保存されます。Amazon S3 インベントリレポートのオブジェクトのソートは保証されません。
インベントリリストには、S3 バケット内のオブジェクトのリストと、リストされている各オブジェクトの次のメタデータが含まれます。
-
バケット名 – インベントリ対象のバケットの名前。
-
キー名 – バケット内のオブジェクトを一意に識別するオブジェクトのキー名 (またはキー)。CSV ファイル形式を使用すると、キー名は URL エンコードされるため、これをデコードしてから使用する必要があります。
-
バージョン ID – オブジェクトのバージョン ID。バケットのバージョニングを有効にすると、Amazon S3 はバケットに追加されたオブジェクトにバージョン番号を割り当てます。詳細については、「S3 バケットでのバージョニングの使用」を参照してください。このフィールドは、リストが現在のバージョンのオブジェクトだけである場合は含まれません。
-
IsLatest – オブジェクトが現在のバージョンのオブジェクトである場合は、
True
に設定されます このフィールドは、リストが現在のバージョンのオブジェクトだけである場合は含まれません。 -
削除マーカー – オブジェクトが削除マーカーである場合は、
True
に設定されます。詳細については、「S3 バケットでのバージョニングの使用」を参照してください。(オブジェクトのすべてのバージョンを含めるようにレポートを設定している場合、このフィールドはレポートに自動的に追加されます)。 -
サイズ - バイト単位のオブジェクトサイズ。不完全なマルチパートアップロード、オブジェクトメタデータ、削除マーカーのサイズは含まれません。
-
最終更新日 – オブジェクトの作成日または最終更新日のどちらか新しい方。
-
ETag – エンティティタグは、オブジェクトのハッシュです。ETag は、オブジェクトのコンテンツに加えた変更のみを反映し、メタデータに加えた変更は反映しません。ETag は、オブジェクトデータの MD5 ダイジェストである場合があります。どちらであるかは、オブジェクトの作成方法と暗号化方法によって決まります。
-
ストレージクラス – オブジェクトの保存に使用されるストレージクラス。詳細については、「Amazon S3 ストレージクラスを使用する」を参照してください。
-
マルチパートアップロードフラグ – オブジェクトがマルチパートアップロードとしてアップロードされた場合は、
True
に設定されます。詳細については、「マルチパートアップロードを使用したオブジェクトのアップロードとコピー」を参照してください。 -
レプリケーションステータス —
PENDING
、COMPLETED
、FAILED
またはREPLICA
に設定します。詳細については、「レプリケーションステータス情報の取得」を参照してください。 -
暗号化ステータス –
SSE-S3
、SSE-C
、SSE-KMS
、またはNOT-SSE
に設定します。SSE-S3、SSE-KMS、および顧客提供キー付き SSE (SSE-C) のサーバー側暗号化ステータス。ステータスがNOT-SSE
の場合、オブジェクトはサーバー側の暗号化を使用して暗号化されません。詳細については、「暗号化を使用したデータの保護」を参照してください。 -
S3 オブジェクトロックリテンション期日 – ロックされたオブジェクトを削除できなくなる日付です。詳細については、「S3 オブジェクトロックの使用」を参照してください。
-
S3 オブジェクトロックモード – ロックされたオブジェクトを
Governance
またはCompliance
に設定します。詳細については、「S3 オブジェクトロックの使用」を参照してください。 -
S3 オブジェクトロックのリーガルホールドの状態 – リーガルホールドがオブジェクトに適用されている場合は
On
に設定されます。それ以外の場合は、Off
に設定されます。詳細については、「S3 オブジェクトロックの使用」を参照してください。 -
S3 Intelligent-Tiering アクセス層 – S3 Intelligent-Tiering に保存されている場合の、オブジェクトのアクセス層 (高頻度または低頻度)。詳細については、「アクセスパターンが変化する、またはアクセスパターンが不明なデータを、自動的に最適化するためのストレージクラス」を参照してください。
-
S3 バケットキーステータス —
ENABLED
またはDISABLED
に設定します。オブジェクトがサーバー側の暗号化に S3 バケットキーを使用するかどうかを示します。詳細については、「Amazon S3 バケットキーの使用」を参照してください。 -
チェックサムアルゴリズム - オブジェクトのチェックサムを作成するために使用されるアルゴリズムを示します。
注記
ライフサイクル設定に基づいて、オブジェクトが有効期限に達すると、存続期間が終了したオブジェクトは自動的に Amazon S3 削除キューに追加され、非同期的に削除されます。そのため、有効期限が切れる日と Amazon S3 がオブジェクトを削除する日との間に遅延が生じることがあります。インベントリレポートには、有効期限が切れていてもまだ削除されていないオブジェクトが含まれます。S3 ライフサイクルの有効期限アクションの詳細については、「オブジェクトの有効期限」を参照してください。
古いインベントリリストを削除するライフサイクル設定を作成することをお勧めします。詳細については、「ストレージのライフサイクルの管理」を参照してください。
s3:PutInventoryConfiguration
アクセス許可により、ユーザーは、インベントリリストを設定するとき、各オブジェクトについて以前にリストされたすべてのメタデータフィールドを選択することと、インベントリを保存する保存先バケットを指定することの両方ができるようになります。保存先バケット内のオブジェクトへの読み取りアクセス権を持つユーザーは、インベントリリストで利用可能なすべてのオブジェクトメタデータフィールドにアクセスできます。インベントリレポートへのアクセスを制限するには、「S3 インベントリおよび S3 分析に対するアクセス許可の付与」を参照してください。
インベントリ整合性
すべてのオブジェクトが各インベントリリストに表示されない場合があります。インベントリリストは、新しいオブジェクトと上書きの両方に対する PUT
リクエストおよび DELETE
リクエストの結果整合性を提供します。インベントリリストはバケット項目のローリングスナップショットであり、結果的に整合します (つまり、最近追加されたオブジェクトまたは削除されたオブジェクトはリストに含まれない可能性があります)。
オブジェクトに対してアクションを実行する前に、オブジェクトの状態を検証するため、HEAD Object
REST API リクエストを実行してオブジェクトのメタデータを取得するか、Amazon S3 コンソールでオブジェクトのプロパティを確認することをお勧めします。AWS CLI または AWS SDK でオブジェクトのメタデータを確認することもできます。詳細については、「Amazon Simple Storage Service API リファレンス」の「HEAD Object
」を参照してください。
Amazon S3インベントリの使用のさらなる詳細については、以下のトピックを参照してください。