AWS WAF は、保護されたウェブアプリケーションがクライアントから受信する HTTP および HTTPS リクエストを監視して制御できるようにするウェブアプリケーションファイアウォールです。AWS WAF ウェブアクセスコントロールリスト (ACL) 内のルールを設定することにより、ウェブリクエストの処理方法を定義します。その後、ウェブアプリケーションにウェブ ACL を関連付けて保護します。AWS WAF で保護できるウェブアプリケーションリソースの例には、Amazon CloudFront ディストリビューション、Amazon API Gateway REST API、Application Load Balancers などがあります。AWS WAF の詳細については、「AWS WAF デベロッパーガイド」の「AWS WAF」を参照してください。
AWS WAF ログには、AWS WAF が AWS リソースからリクエストを受信した時間、このリクエストの詳細、各リクエストが適合したルールに対するアクションなど、ウェブ ACL によって分析されたトラフィックに関する情報が含まれます。
AWS WAF ウェブ ACL を設定して、複数の宛先のいずれかにログを発行し、そこでクエリを実行して表示できます。ウェブ ACL ログの設定および AWS WAF ログの内容の詳細については、「AWS WAF デベロッパーガイド」の「AWS WAF ウェブ ACL トラフィックのログ」を参照してください。
Athena を利用して脅威検出と潜在的なセキュリティ攻撃に関するインサイトを得るために AWS WAF ログを分析する方法については、AWS ネットワークとコンテンツ配信のブログ記事「How to use Amazon Athena queries to analyze AWS WAF logs and provide the visibility needed for threat detection
AWS WAF ログを中央データレイクリポジトリに集約して、それらを Athena でクエリする方法の例については、「AWS ビッグデータブログ」のブログ記事「OpenSearch Service、Amazon Athena、および Amazon QuickSight を使用して AWS WAF ログを分析する
このトピックでは、パーティショニングを使用するものと使用しないもの、2 つの CREATE TABLE
ステートメントの例を示します。
注記
このトピックの CREATE TABLE
ステートメントは、v1 および v2 AWS WAF ログの両方に使用できます。v1 では、webaclid
フィールドに ID が含まれます。v2 では、webaclid
フィールドに完全な ARN が含まれます。ここでの CREATE TABLE
ステートメントは、string
データ型を使用して、アグノスティックにこのコンテンツを取り扱います。