0
0

More than 3 years have passed since last update.

【AWS】S3バケットへのアクションのロギング手段

Posted at

サマリ

S3バケットに対するアクションログの保存方法としてS3サーバーアクセスログ と CloudTrailログ の2種類があります。
基本的にCloudTrailの方が多機能ですが、一部のユースケースではS3サーバーアクセスログを使います。
それぞれの特徴を大まかに整理します。

「S3バケットに対するアクション」とは?

ユーザー、ロール、またはその他AWSサービスによって実行されたAPIコールのこと。
いずれかの手段で記録可能。

先におさえておくポイント

・「CloudTrailログ」の手段は単純にCloudTrailのログをS3に配信するというイメージなので「S3バケットの基本機能」が使える。なので多機能に見える。
・「S3サーバーアクセスログ」はS3の持つ1機能に過ぎないので、できることは限られている。
・実際にコンソールから確認してみるとわかりやすい。

2種類のロギング手段

各手段の主要な特徴をメモします。
「→」で筆者コメント入れました。
網羅的な情報はマニュアルを参照ください。

CloudTrailログ

・CloudWatch LogsやCloudWatch Eventsに転送可能
・ログを異なる複数の宛先に配信する
・異なるAWSアカウントが所有するバケットに配信可能
 →これは便利かな。ログ集約用アカウントに配信するとか。
・ログファイルの暗号化
・ログを検索できるUI
 →これはCloudTrailダッシュボードのことかな
・配信はデータイベントは5分ごと、管理イベントは15分ごと
・ログの形式はJSON
 →JSONの方が色々ハンドリングはしやすい?

S3サーバーアクセスログ

・ログレコードのフィールド(Object Size, Total Time, Turn-Around Time, HTTP Referer)
 →「Object Size」とか見れるのは便利そう?
・認証の失敗をロギング
・ライフサイクル設定(移行、失効、リストア)
 →
・ログは数時間以内の配信
・スペースで区切られ、改行で分割されたレコードを持つログファイル

共通事項

・S3 APIを使用可能(オブジェクト操作、バケット操作)

コンソールで確認してみる

S3サーバーアクセスログ

設定できるのは有効・無効のみ。
image.png

CloudTrailログ

以下はCloudTrailの設定画面。
KMSによる暗号化やログファイルの検証設定を行えることがわかる。
これらに加えて、配信先のS3バケットでライフサイクルルール等を設定することももちろん可能。
image.png

参考

Amazon S3 でのログ記録
https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/dev/logging-with-S3.html

AWS CloudTrail を使用した Amazon S3 API コールのログ記録
https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/dev/cloudtrail-logging.html

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0