概要
AWS WAF は、一般的な Web エクスプロイトから Web アプリケーションを保護するために役立つ Web アプリケーションファイアウォールです。
このインテグレーションを有効にすると、WAF メトリクスを Datadog に表示できます。
セットアップ
インストール
Amazon Web Services インテグレーションをまだセットアップしていない場合は、最初にセットアップします。
メトリクスの収集
AWS インテグレーションページで、使用しているエンドポイントに応じて、Metric Collection
タブで WAF
または WAFV2
が有効になっていることを確認します。
Datadog - AWS WAF インテグレーションをインストールします。
ログ収集
Web Application Firewall 監査ログを有効にして、Web ACL で分析されたトラフィックに関する詳細情報を取得します。
WAF
aws-waf-logs-
から始まる名前で Amazon Data Firehose
を作成します。Amazon Data Firehose
の送信先で Amazon S3
を選択し、waf
をプレフィックスとして必ず追加してください。- 希望する Web ACL を選択し、それを構成して、新しく作成した Firehose にログを送信するようにします (詳細な手順はこちら)。
WAFV2
aws-waf-logs-
から始まる名前で S3 bucket
を作成します。- Amazon S3 バケットのログの宛先を構成します (詳細手順)。
WAF/WAFV2 ログが収集され、指定された S3 バケットに送信されます。
ログを Datadog に送信する方法
- Datadog Forwarder Lambda 関数をまだセットアップしていない場合は、セットアップします。
- Lambda 関数がインストールされたら、AWS コンソールで WAF ログを含む S3 バケットに手動でトリガーを追加します。Lambda で、トリガーリストから S3 をクリックします。
- トリガーを構成するには、WAF ログを含む S3 バケットを選択して、イベントタイプを
Object Created (All)
に変更します。 - Add をクリックします。
注:
- Datadog Lambda Forwarder は、WAF ログのネストされたオブジェクトの配列を、使いやすいように自動的に
key:value
形式に変換します。 - “Configurations on the same bucket cannot share a common event type” (同じバケットの構成で共通のイベントタイプを共有することはできない) というエラーメッセージが表示された場合は、該当バケットに他の Lambda Forwarder にリンクされた別のイベント通知が存在しないことを確認してください。S3 バケットは、
All object create events
の複数のインスタンスを持つことができません。
データ収集
メトリクス
aws.waf.allowed_requests (count) | The number of allowed web requests. Shown as request |
aws.waf.blocked_requests (count) | The number of blocked web requests. Shown as request |
aws.waf.counted_requests (count) | The number of counted web requests. Shown as request |
aws.waf.passed_requests (count) | The number of passed web requests. Shown as request |
aws.wafv2.allowed_requests (count) | The number of allowed web requests. Shown as request |
aws.wafv2.blocked_requests (count) | The number of blocked web requests. Shown as request |
aws.wafv2.counted_requests (count) | The number of counted web requests. Shown as request |
aws.wafv2.passed_requests (count) | The number of passed web requests. Shown as request |
waf.allowed_requests (count) | The number of allowed web requests. Shown as request |
waf.blocked_requests (count) | The number of blocked web requests. Shown as request |
waf.counted_requests (count) | The number of counted web requests. Shown as request |
waf.passed_requests (count) | The number of passed web requests. Shown as request |
注: WAF の CloudWatch メトリクス API の履歴形式により、aws.waf.*
と waf.*
の両メトリクスが報告されます。
AWS から取得される各メトリクスには、ホスト名やセキュリティ グループなど、AWS コンソールに表示されるのと同じタグが割り当てられます。
イベント
AWS WAF インテグレーションには、イベントは含まれません。
サービスチェック
AWS WAF インテグレーションには、サービスのチェック機能は含まれません。
トラブルシューティング
ご不明な点は、Datadog のサポートチームまでお問い合わせください。