問題
IAMの認証情報レポートをダウンロードして見たときに、アクセスキーを使用してS3にアクセスしている履歴を確認できたがCloudTrailのイベント履歴を検索しても一致するものがない。
原因
CloudTrailではGetObject、DeleteObject、PutObject等オブジェクトレベルのAPIオペレーションのログはデフォルトでは記録されない。
解決方法
CloudTrailで全てのS3のデータイベントを記録するために証跡を作成する。
※追加料金かかります。
- AWS CloudTrailにアクセス
- 証跡の作成
- 証跡名の入力 > ログファイルのSSE-KMS暗号化の有効チェックを外す(ここでは手順を簡易化する為)
- 次へ > イベントタイプ「データイベント」をチェック > 次へ > 証跡の作成
その他操作・機能
・逆に無効にしたい場合は、証跡またはデータイベントを削除してください。
・高度なデータイベントセレクターを用いることで、writeOnlyイベントのみ記録することも可能
参考
AWS CloudTrail データイベントで S3 バケットのオブジェクトレベルのログ記録を有効にする方法
AWS CloudTrail を使用した Amazon S3 API コールのログ記録