はじめに
2023年5月にUser Notificationsの一般提供が開始されました。
今回はGuardDutyのイベント通知をこのUser Notificationsで実装したかったけれどある理由から断念した話について書きたいと思います。
GuardDutyのイベント通知
GuardDutyのイベントを下記の構成でSlackに通知しています。
構成のポイントは下記のとおりです。
- GuardDutyメンバーアカウントの検出結果が集約されるGuardDuty委任管理アカウントに通知を実装
- EventBridge+SNS+ChatbotでSlackに通知
- リージョンごとに実装
Slackのメッセージ表記はこちらのようになり、見やすくて素敵です。
User Notificationsで構成がシンプルになる?
User NotificationsでGuardDutyの通知を行う場合、下記のような構成になります。
構成のポイントは下記のとおりです。
- EventBridgeルールを自作しなくて良い
- SNSトピックが不要
- 一か所で複数リージョンの設定ができる
EventBridge+SNS+Chatbotに比べて構成がシンプルになりそうです。
GuardDutyの通知をUser Notificationsに変えてみた
構成を変えて通知を確認してみました。
Slackメッセージの表記は少し変わりますが、まあ悪くなさそうです。
ただ1点気になったポイントがありました。
これまで図中のアカウント番号には「脅威が検出されたアカウントの番号」が表示されていました。
でもなぜかアカウント番号がいつも「GuardDuty委任管理アカウント」になっているような気が・・・
脅威が検出されたアカウントを知るためにAWSへログインしなければならないのは運用する上で少し手間であるように感じます。
調査結果
AWSサポートにも問い合わせてみましたが、想定していたとおり下記の仕様とのことでした。
User Notificationsによる通知メッセージでは、Slackメッセージのタイトル部分のアカウント番号が、脅威が検出されたアカウントではなく、GuardDuty委任管理アカウントになる
また、現在はこのメッセージをカスタマイズすることもできません。
通知をカスタマイズできますか? つまり、通知のタイトルまたは本文を変更できますか?
現在、このサービスはカスタマイズ機能をサポートしていません。
今後に期待
User Notificationsを利用することで通知構成がシンプルになることは間違いなさそうなため、AWSサポートに機能リクエストを行いました。
今後のアップデートに期待したいと思います。