はじめに
監査ログを手軽にとれるサービスとして有名なCloudTrailですが、皆さん使っておりますでしょうか。
監査ログの中でも、データに関わる監査の重要性は高まっているように思います。
今回は、そんなデータに関わる監査の1つとして、S3に対する読み込み/書き込みオペレーションの監査ログをCloudTrailを用いて保存します。
やりたいこと
- S3バケット「target-bucket-qiita」に対する読み込み/書き込みのオペレーションを保存する
- 保存先は、S3バケット「20221026-s3-cloudtrail-test」内の「sample」ディレクトリ内とする
- s3://20221026-s3-cloudtrail-test/sample/xxxxx と保存される
方法
1.まずはCloudTrailの画面から、証跡の作成ボタンをクリック。
2.「ステップ1 証跡属性の選択」は各環境にあった設定項目を入れてください。
注意:この時、「ストレージの場所」で指定するバケットは、証跡を保存するバケットです。
今回はS3バケット「20221026-s3-cloudtrail-test」の「sample」ディレクトリ内に保存したいので、以下のように設定します。
3.「ステップ2 ログイベントの選択」で、イベントタイプのデータイベントにチェックを入れます。(デフォルトの管理イベントのチェックは外す)
4.同じく「ステップ2 ログイベントの選択」で、「基本的なイベントセレクターに切り替えます」をクリック
注意:高度なイベントセレクタでは、データイベントを、読み込み/書き込みよりも詳細なレベルで指定できます。今回はそこまでの制御は必要ないため、基本的なイベントセレクターを使います。
AWS Management Console では、高度なイベントセレクタが有効になっている場合は、選択したリソース (Amazon S3 バケットまたはアクセスポイント、Lambda 関数、AWS Outposts の S3 オブジェクト、Managed Blockchain ノード用の Ethereum、または S3 オブジェクト Lambda アクセスポイント) のすべてのデータイベントをログ記録する事前定義済みのテンプレートから選択できます。
5.データイベントの「現在および将来のすべてのS3バケット」の読み取り、書き込みのチェックを外します。
(このままだと、全てのS3バケットの証跡が記録されます)
6.「参照」ボタンをクリックして、証跡を取りたいtargetのバケットを選択します。
(この時、他にも証跡を取りたいtargetバケットがあれば、「バケットの追加」で追加できます)
7.次へ→証跡の作成をクリックすれば、完了です。
8.証跡の保管バケットを見ると、CloudTrailのフォルダが作成されていることが分かります。
以上、コンソールを利用した設定方法でした。
非常に簡単に監査ログの設定ができるので、ぜひ皆さん利用してみてください。