Posted at

AWS WAFのログをKinesis Firehoseを使ってS3に保存するときの注意点

AWS WAFのブロックしたログは、直近のものであればAWSのコンソール上からでも確認できるが、直近のログしか表示されない上に件数も限られているため、何らか調査の必要がある場合等には向かない。

全件のログを取得するには、あらかじめロギングの設定をしておく必要がある。

これには、Kinesis Firehoseを利用してS3バケットにログを貯めておくのが一般的。

この時にいくつかハマったポイント。


Firehoseのストリーム名は"aws-waf-logs-"で始まっている必要がある

ロギングの設定は、AWS WAFの設定画面の"Logging"のタブから行えるが、設定するFirehoseを選択する画面にはストリーム名が"aws-waf-logs-"から始まるものしか選択肢に出てこない。設定画面にも注意書きがある。


FirehoseはWAFが設定されているリージョンと同一のリージョンで設定する

WAFをグローバルで設定している場合は、Firehoseはバージニア北部のリージョンで設定すること。東京リージョン等でFirehoseを設定してもWAFの設定画面で選択肢に現れない。