Amazon S3 バケットのオブジェクトレベルのログ記録を有効にしました。CloudTrail イベント履歴のイベントはどこで確認できますか?

最終更新日: 2019 年 9 月 26 日

AWS CloudTrail データイベントを使用して S3 バケットのオブジェクトレベルのログ記録を有効にするの手順に従いました。Amazon Simple Storage Service (Amazon S3) バケットでオブジェクトレベルのログが見つかりました。ただし、CloudTrail イベント履歴でオブジェクトレベルの API アクションが見つかりません。

簡単な説明

CloudTrail は、デフォルトでバケットレベルのアクションを管理イベントとして記録します。また、Amazon S3 バケットのデータイベントをログに記録するように証跡を設定することもできます。CloudTrail は、CloudTrail イベント履歴にデータイベントを入力しません。さらに、すべてのバケットレベルのアクションが CloudTrail イベント履歴に入力されるわけではありません。

注意: 証跡と同じ S3 バケットに対して他のデータソースを設定している場合、ログは CloudTrail イベントと結合されます。

詳細については、AWS CloudTrail を使用した Amazon S3 API 呼び出しのログ記録を参照してください。

解決方法

Amazon CloudWatch ログのフィルタパターンと AWS Athena を使用して CloudTrail ログを照会します。

CloudWatch ログのフィルタパターンを使用してバケットレベルのアクティビティを表示する

1.    フィルタパターンを使用したログデータの検索の手順 1~4 に従います。

2.    [Filter] で、次の構文例を貼り付けてから、デバイスで Enter を選択します。

{$.eventName = “DeleteBucket”}

CloudTrail ログデータは、バケットレベルの API 呼び出し DeleteBucket をフィルタリングします。

Athena を使用して CloudTrail ログを照会する

1.    Athena コンソールを開き、[クエリエディタ] を選択します。

2.    [Run advanced queries in Amazon Athena] を選択します。

3.    次のようなクエリを入力し、[Run query] を選択します。

注意: example-cloudtrail-log を CloudTrail ログに置き換えます。

SELECT *
FROM example-cloudtrail-log
WHERE eventname = 'GetBucketAcl’;

このサンプルクエリは、S3 バケット API 呼び出し GetBucketAcl をフィルタリングします。

詳細については、AWS CloudTrail と Amazon Athena を使用してセキュリティ、コンプライアンス、運用アクティビティを分析するを参照してください。