目的
CloudTrailとCloudWatch Logsを連携しCloudWatchにてAWS管理イベントを監視する方法を記載する。
AWS管理イベントとしては、セキュリティグループの作成、削除を例とする。
想定読者
CloudTrailでモニタリングしたAWS管理イベントを監視してメールで通知させたい方
手順
手順としては以下を想定しております。
- 証跡の作成
- メトリクスの作成
- アラームの作成
1. 証跡の作成
S3バケットが必要になるため、新規作成または既存のS3バケットを利用します。
「ログファイルの SSE-KMS 暗号化」、「SNS通知の配信」は検証では不要ですのでチェックを外します。
「CloudWatch Logs - オプション」を有効にし、「ロググループ名」、「IAMロール」を新規作成または既存のものを利用し「次へ」を押下します。
管理イベントにチェックが入っていることを確認し「次へ」を押下します。
「証跡の作成」を押下します。
2. メトリクスの作成
CloudWatchを開き、「ロググループ」にて上記1にて作成したロググループを選択します。
メトリクスフィルターを選択し、「メトリクスフィルターを作成」を押下します。
今回は例としてセキュリティグループの作成、削除を監視したいため、以下の内容をフィルターパターンに入力し、「Next」を押下します。
{ ($.eventName = CreateSecurityGroup) || ($.eventName = DeleteSecurityGroup) }
フィルタ名、メトリクス名前空間を入力し、メトリクス値を「1」にし、「Next」を押下します。
「メトリクスフィルターを作成」を押下します。
3. アラームの作成
作成したメトリクスフィルターを選択し、「アラームを作成」を押下します。
しきい値の種類を「静的」にし、アラーム条件を「以上」にし、しきい値を「1」にします。
その他の設定にて、「アラームを実行するデータポイント」は「1 / 1」とします。
欠落データの処理を「欠落データを適正(しきい値を超えていない)として処理」にし、「次へ」を押下します。
「アラーム状態」にチェックを入れ、SNSトピックを選択し、「次へ」を押下します。
アラームが作成されます。
セキュリティグループを作成後にメールが届きます。
参考
以下のURLが参考になります。
https://docs.aws.amazon.com/ja_jp/awscloudtrail/latest/userguide/cloudwatch-alarms-for-cloudtrail.html#cloudwatch-alarms-for-cloudtrail-security-group
https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html