継続は力なり

タイトル通り定期的な更新を心掛けるブログです。

Aurora の特定ユーザー接続検知をするために CloudWatch Logs サブスクリプションフィルターを使う

タダです.

Aurora への接続ユーザーとして管理者ユーザーを使わないように運用していることが多いと思いますが,そんな中で管理者ユーザーで接続された場合ちゃんと検知しておきたいといった要件から検証した内容をこの記事にまとめます.

Aurora のログについて

普段 Aurora MySQL を使っていて接続ユーザーのログは監査ログに残っています.そのため,監査ログを CloudWartch Logs に出力できているのが前提です.

aws.amazon.com

CloudWatch Logs サブスクリプションフィルタ

監査ログは /aws/rds/cluster/cluster-name/audit で出力されています.このログから検知したいユーザーの接続ログをフィルタリングします.フィルタリングには CloudWatch Logs のサブスクリプションフィルタを使います.

docs.aws.amazon.com

フィルタパターンで管理者ユーザーの接続を絞りたいのですが,例えば admin ユーザーであればフィルタパターンでは admin CONNECT などで絞っていきました.加えて rdsadmin というデフォルトで作成されるユーザーのログも記録されるためこのユーザーのログは除外するために admin CONNECT - rdsadmin としました.これで必要な接続ログを送ることができました.

まとめ

簡単ですが,Aurora の接続ユーザーをログから検知するためにやった検証をまとめました.