アクセスログとは
アクセスログとは、サービアに対してどのようなリクエストあったのかを記録する機能のこと。
ログの内容は、
- バケットの所有者
- バケット名
- リクエスタ
- 時刻
- レスポンス時間
- アクション
- レスポンスのステータス
- エラーコード
が記録される。
S3の機能として、アクセスログの記録が提供されているので料金はかからない。
ログを書き込んだファイルは対象となるバケットと同じリージョンのバケットに保存されるので、その保存には料金がかかる。
主なログ記録
項目 | 内容 |
---|---|
Remote IP | リクエスト要求元のIPアドレス |
リクエスタ | アクセスしてきたユーザー |
リクエスト ID | 識別のためにAmazon S3で生成されるID |
オペレーション | リクエストされた操作の種類 |
キー | リクエストのあったオブジェクトキー |
Request-URI | リクエストされたURI |
エラーコード | エラーコード |
Bytes Sent | 送信されてレスポンスのバイト数 |
Object Size | リクエストされたオブジェクトの全サイズ |
Total Time | サーバーがリクエストされた内容の送信にかかった時間 |
Turn-Around Time | リクエストの返信にかかった時間 |
Referrer | HTTP Referrerヘッダーの値 |
User-Agent | HTTP User-Agentヘッダーの値 |
Version Id | リクエストのバージョンID |
ホストヘッダー | S3への接続に使用するエンドポイント |
その他のアクセス管理方法
ストレージクラス分析
ストレージクラス分析はオブジェクトへのアクセス頻度を分析する機能。
アクセス頻度の低いデータは低頻度アクセスのストレージに移すなどの判断材料として使える。オブジェクトは、設置された日付である程度グループ化され、それぞれのグループの平均転送バイト数が監視されている。
対象のオブジェクトはフィルタリングして監視することができる。
このフィルターごとに最大1000個設置できる。
オブジェクトロック
オブジェクトロックはオブジェクトを保護する機能。
オブジェクトに関する変更を許さないので、オブジェクトの削除や上書き、改ざんなどを防ぐ。ロックには有効期限を設定できる。
また、リーガルホールド(訴訟などにかかわる情報を保全すること)も有効期間に関係なく行える。ロックで保護されているバケットはクロスリージョンレプリケーション(CRR)でコピーできない。
オブジェクトロックにおける2つのモード
ロックのモード | 内容 |
---|---|
ガバナンスモード | 特定のユーザーにのみオブジェクトに対する変更を許可するモード。 |
コンプライアンスモード | 全てのユーザーがオブジェクトに対して変更できなくなるモード。AWSのルートユーザーも変更できない。また、モードや期間の変更もできなくなる。 |
S3インベントリ
インベントリはバケットに入っているオブジェクトのメタデータを毎日もしくは毎週一覧にして生成する機能。
CSVやORCなどのファイルにできる。S3インベントリはAmazon AthenaやAmazon Redshift Spectrumなどのビックデータを処理するツールを組み合わせると便利。
余談
S3バッチオペレーション
Amazon S3バッチオペレーションを使用すると、オブジェクトのコピー、Amazon S3 Glacierからオブジェクトの復元など、様々なオペレーションを対象のオブジェクトに対し、実行できる。