AWS CloudTrail
AWS アカウントの API アクティビティを記録・監視するサービス
何ができるか
AWS CloudTrail は、AWS アカウント内で行われたすべての API コール (操作) を記録するサービスです。誰が、いつ、どの IP アドレスから、どのリソースに対して、何の操作を行ったかを詳細に記録します。記録されたログは S3 バケットに保存され、セキュリティ監査、コンプライアンス対応、トラブルシューティングに活用できます。
どのような場面で使うか
セキュリティインシデントの調査で「誰がいつセキュリティグループを変更したか」を特定する場面や、コンプライアンス監査で「過去 90 日間の IAM ポリシー変更履歴」を提出する場面で活用されています。また、意図しないリソース削除の原因調査や、不正アクセスの検知にも利用されます。 この分野について体系的に学びたい方は、関連書籍 (Amazon) も参考になります。
身近な例え
ビルの防犯カメラに例えるとわかりやすいでしょう。防犯カメラは、誰がいつビルに入退館し、どの部屋にアクセスしたかを 24 時間記録しています。CloudTrail は AWS アカウントの防犯カメラで、すべての操作を記録しています。何か問題が起きたときに録画を巻き戻して確認するように、CloudTrail のログを調べて原因を特定できます。
CloudTrail とは
AWS CloudTrail は、AWS アカウント内のアクティビティを記録する監査ログサービスです。AWS マネジメントコンソールでの操作、AWS CLI からのコマンド実行、SDK を使った API コールなど、あらゆる操作がイベントとして記録されます。CloudTrail はデフォルトで有効になっており、過去 90 日間のイベント履歴を無料で確認できます。
イベントの種類
CloudTrail は 3 種類のイベントを記録します。管理イベントは、リソースの作成・変更・削除などの操作 (EC2 インスタンスの起動、IAM ポリシーの変更など) を記録します。データイベントは、リソース上で実行されるデータ操作 (S3 オブジェクトの読み書き、Lambda 関数の呼び出しなど) を記録します。インサイトイベントは、通常と異なる異常なアクティビティパターンを自動検出して記録します。
証跡の作成と長期保存
デフォルトのイベント履歴は 90 日間しか保持されません。長期保存が必要な場合は「証跡 (Trail)」を作成し、ログを S3 バケットに継続的に配信します。証跡を作成すると、管理イベントが自動的に S3 に保存されます。データイベントやインサイトイベントは、証跡の設定で明示的に有効にする必要があります。CloudWatch Logs にもログを送信でき、リアルタイムのアラート設定が可能です。
はじめかた
CloudTrail はすべての AWS アカウントでデフォルトで有効になっています。CloudTrail コンソールの「イベント履歴」から、過去 90 日間の操作履歴をすぐに確認できます。長期保存やデータイベントの記録が必要な場合は、「証跡の作成」から S3 バケットを指定して証跡を設定します。組織全体のログを一元管理する場合は、AWS Organizations と連携した組織証跡を作成します。
注意点
- デフォルトのイベント履歴は 90 日間のみ。コンプライアンス要件で長期保存が必要な場合は証跡を作成して S3 に保存すること
- データイベント (S3 オブジェクト操作、Lambda 呼び出しなど) は証跡で明示的に有効にしないと記録されない。大量のデータイベントを記録するとコストが増加するため、対象リソースを絞ること
- CloudTrail ログの改ざん防止には、ログファイルの整合性検証を有効にし、S3 バケットの MFA Delete を設定すること
さらに詳しく知りたい方は、関連書籍 (Amazon) で理解を深められます。