S3 バケットとオブジェクトの CloudTrail イベントログ記録の有効化
CloudTrail データイベントを使用して、Amazon S3 のバケットおよびオブジェクトレベルのリクエストに関する情報を取得できます。すべてのバケットまたは特定のバケットのリストの CloudTrail データイベントを有効にするには、CloudTrail で手動で証跡を作成する必要があります。
注記
-
CloudTrail のデフォルト設定では、管理イベントのみが検出されます。アカウントに対してデータイベントを有効にしていることをチェックして確認します。
-
高いワークロードを生成している S3 バケットがある場合、短期間で数千のログを生成する可能性があります。ビジーなバケットでは、CloudTrail データイベントを有効にする期間にご注意ください。
CloudTrail は、選択した S3 バケットに Amazon S3 データイベントを保存します。クエリと分析を簡素化するには、所有する複数のバケットのイベントを適切にまとめられるように別の AWS アカウント のバケットの使用を検討することをお勧めします。AWS Organizations では、モニタリングしているバケットを所有しているアカウントにリンクされた AWS アカウント を簡単に作成することができます。詳細については、『AWS Organizations ユーザーガイド』の「What is AWS Organizations? ( とは?)」 を参照してください。
CloudTrail で証跡のデータイベントをログに記録する場合、汎用バケットに保存されたオブジェクトのデータイベントを記録するために、高度なイベントセレクタとベーシックイベントセレクタのどちらを使用するかを選択できます。ディレクトリバケットに保存されているオブジェクトのデータイベントをログに記録するには、高度なイベントセレクタを使用する必要があります。詳細については、「S3 Express One Zone の AWS CloudTrail によるログ記録」を参照してください。
アドバンストイベントセレクタを使用して CloudTrail コンソールで証跡を作成する場合、データイベントセクションで、[ログセレクタテンプレート] の [すべてのイベントをログに記録する] を選択して、すべてのオブジェクトレベルのイベントをログ記録できます。ベーシックイベントセレクタを使用して CloudTrail コンソールで証跡を作成する場合、データイベントセクションで、[アカウントのすべての S3 バケットを選択する] チェックボックスを選択して、すべてのオブジェクトレベルイベントをログ記録できます。
注記
-
ベストプラクティスとして、AWS CloudTrail データイベントバケットに対してライフサイクル設定を作成することをお勧めします。ログファイルを監査する必要があると考える期間が経過したらログファイルを定期的に削除するように、ライフサイクル設定を設定します。これにより、各クエリで Athena が分析するデータの量が減ります。詳細については、バケットに S3 ライフサイクル設定を設定する を参照してください。
-
ロギング形式の詳細については、AWS CloudTrail を使用した Amazon S3 API コールのログ記録 を参照してください。
-
CloudTrail ログをクエリする方法の例については、AWS ビッグデータブログの記事 Analyze Security, Compliance, and Operational Activity Using AWS CloudTrail and Amazon Athena
を参照してください。
コンソールを使用してバケット内のオブジェクトのログ記録を有効にする
Amazon S3 コンソールを使用し、AWS CloudTrail 証跡を設定して、S3 バケット内のオブジェクトのデータイベントをログに記録できます。CloudTrail では、GetObject
、DeleteObject
、PutObject
など、Amazon S3 オブジェクトレベルの API オペレーションのログ記録がサポートされます。これらのイベントは、データイベントと呼ばれます。
デフォルトでは CloudTrail 証跡はデータイベントを記録しませんが、証跡を設定して、指定した S3 バケットのデータイベントを記録するか、AWS アカウントですべての Amazon S3 バケットのデータイベントを記録するようにできます。詳細については、AWS CloudTrail を使用した Amazon S3 API コールのログ記録 を参照してください。
CloudTrail では、CloudTrail イベント履歴にデータイベントが設定されません。さらに、すべてのバケットレベルのアクションが CloudTrail イベント履歴に入力されるわけではありません。CloudTrail のログ記録によって追跡される Amazon S3 バケットレベルの API アクションの詳細については、「CloudTrail ログ記録によって追跡される Amazon S3 バケットレベルのアクション」を参照してください。CloudTrail ログのクエリ方法の詳細については、Amazon CloudWatch Logs のフィルタパターンと Amazon Athena を使用した CloudTrail ログのクエリ
S3 バケットのデータイベントをログに記録するように証跡を設定する場合、AWS CloudTrail コンソールまたは Amazon S3 コンソールのいずれかを使用できます。AWS アカウント内のすべての Amazon S3 バケットのデータイベントを記録するように証跡を設定する場合は、CloudTrail コンソールを使用する方が簡単です。CloudTrail コンソールを使用して S3 データイベントを記録するように証跡を設定する方法については、AWS CloudTrail ユーザーガイドのデータイベントを参照してください。
重要
追加の変更がイベントデータに適用されます。詳細については、AWS CloudTrail 料金表
以下の手順では、Amazon S3 コンソールを使用して、CloudTrail の証跡で S3 バケットのデータイベントの記録を設定する方法を示します。
S3 汎用バケットまたは S3 ディレクトリバケットでオブジェクトの CloudTrail データイベントの記録を有効にするには
AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/
) を開きます。 -
[バケット名] リストで、バケットの名前を選択します。
-
[プロパティ] を選択します。
-
AWS CloudTrailデータイベントで、CloudTrail の設定を選択します。
新しい CloudTrail の証跡を作成するか、既存の証跡を再利用して、証跡に記録するように Amazon S3 データイベントを設定できます。CloudTrail コンソールで証跡を作成する方法については、AWS CloudTrail ユーザーガイドのコンソールで証跡を作成および更新するを参照してください。CloudTrail コンソールで Amazon S3 データイベントロギングを設定する方法については、AWS CloudTrail ユーザーガイドの Amazon S3 オブジェクトのデータイベントをログに記録するを参照してください。
注記
S3 バケットのデータイベントをログに記録するための証跡の設定に CloudTrail コンソールまたは Amazon S3 コンソールを使用する場合、そのバケットに対してオブジェクトレベルのロギングが有効化されていることが Amazon S3 コンソールに表示されます。
S3 バケットでオブジェクトの CloudTrail データイベントの記録を無効にするには
AWS Management Console にサインインし、https://console.aws.amazon.com/cloudtrail/
で CloudTrail コンソールを開きます。 -
左のナビゲーションペインで、[証跡] を選択します。
-
バケットのイベントを記録するために作成した証跡の名前を選択します。
-
証跡の詳細ページで、右上隅にある [ログインを停止] を選択します。
-
表示されたダイアログボックスで [ログインを停止] を選択します。
S3 バケットを作成するときにオブジェクトレベルのログ記録を有効にする方法の詳細については、バケットの作成 を参照してください。
S3 バケットを使用した CloudTrail ログ記録の詳細については、以下のトピックを参照してください。
-
AWS CloudTrail ユーザーガイドの CloudTrail ログファイルの操作