ウェブ ACL のテスト - AWS WAF、 AWS Firewall Manager、および AWS Shield Advanced

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ウェブ ACL のテスト

警告

AWS WAF Classic へのサポートは 2025 年 9 月 30 日に終了します。

注記

これは AWS WAF Classic ドキュメントです。2019 年 11 月より前に AWS WAF でルールやウェブ ACL などの AWS WAF リソースを作成し、それらをまだ最新バージョンに移行していない場合にのみ、このバージョンを使用する必要があります。Web ACL を移行するには、AWS WAF Classic リソースを AWS WAF に移行する を参照してください。

最新バージョンの AWS WAF については、AWS WAF」を参照してください。

許可する必要のあるウェブリクエストをブロックするように、またはブロックする必要のあるリクエストを許可するように、誤って AWS WAF Classic を設定しないようにするには、ウェブ ACL をウェブサイトまたはウェブアプリケーションで使用する前に徹底的にテストすることをお勧めします。

ウェブ ACL のルールに一致するウェブリクエストのカウント

ルールをウェブ ACL に追加するときは、AWS WAF Classic で、そのルールのすべての条件に一致するウェブリクエストを許可するか、ブロックするか、カウントするかを指定します。次の設定から始めることをお勧めします。

  • ウェブリクエストをカウントするようにウェブ ACL のすべてのルールを設定する

  • リクエストを許可するウェブ ACL のデフォルトアクションを設定する

この設定では、AWS WAF Classic は最初のルールの条件に基づいて各ウェブリクエストを検査します。ウェブリクエストがそのルールのすべての条件に一致する場合、AWS WAF Classic はそのルールのカウンターをインクリメントします。その後、AWS WAF Classic は次のルールの条件に基づいてウェブリクエストを検査します。リクエストがそのルールのすべての条件に一致する場合、AWS WAF Classic はそのルールのカウンターをインクリメントします。これは、AWS WAF Classic がすべてのルールの条件に基づいてリクエストを検査するまで続きます。

リクエストをカウントするようにウェブ ACL のすべてのルールを設定し、ウェブ ACL を Amazon API Gateway、CloudFront ディストリビューション、または Application Load Balancer と関連付けたら、結果として生じるカウントを Amazon CloudWatch グラフで表示できます。ウェブ ACL の各ルール、および API Gateway、CloudFront、または Application Load Balancer がウェブ ACL のために AWS WAF Classic に転送するすべてのリクエストについて、CloudWatch では次のことができます。

  • 1 時間前または 3 時間前のデータを表示する

  • データポイント間の間隔を変更する

  • CloudWatch がデータに対して実行する計算 (最大、最小、平均、合計など) を変更する

注記

CloudFront を使用した AWS WAF Classic はグローバルサービスであり、メトリクスを使用できるのは、AWS Management Console で [US East (N. Virginia)] (米国東部 (バージニア北部)) リージョンを選択した場合のみです。別のリージョンを選択した場合、AWS WAF Classic メトリクスは CloudWatch コンソールに表示されません。

ウェブ ACL でルールのデータを表示するには
  1. AWS Management Console にサインインして、CloudWatch コンソール (https://console.aws.amazon.com/cloudwatch/) を開きます。

  2. ナビゲーションペインの [Metrics] (メトリクス) で、[WAF] を選択します。

  3. データを表示するウェブ ACL のチェックボックスをオンにします。

  4. 該当する設定を変更します。

    [Statistic] (統計)

    CloudWatch がデータに対して実行する計算内容を選択します。

    [Time range] (時間範囲)

    前の 1 時間のデータを表示するか、前の 3 時間のデータを表示するかを選択します。

    [Period] (期間)

    グラフでのデータポイント間の間隔を変更します。

    [Rules] (ルール)

    データを表示するルールを選択します。

    次の点に注意してください。

    • ウェブ ACL を API Gateway API、CloudFront ディストリビューション、または Application Load Balancer に関連付けただけの場合は、グラフにデータが表示され、使用可能なメトリクスのリストにウェブ ACL のメトリクスが表示されるまでに数分かかることがあります。

    • 複数の API Gateway API、CloudFront ディストリビューション、または Application Load Balancer をウェブ ACL に関連付ける場合、CloudWatch データには、ウェブ ACL に関連付けられるすべてのディストリビューションに対するすべてのリクエストが含まれます。

    • データポイントの上にマウスカーソルを置くと、詳細情報が表示されます。

    • グラフは自動的には更新されません。表示を更新するには、更新 ( Icon to refresh the Amazon CloudWatch graph ) アイコンを選択します。

  5. (オプション) API Gateway CloudFront または Application Load Balancer が AWS WAF Classic に転送した個々のリクエストに関する詳細情報を表示します。詳細については、「API Gateway CloudFront または Application Load Balancer が AWS WAF Classic に転送したウェブリクエストのサンプルを表示する」を参照してください。

  6. ルールにより、傍受する必要のないリクエストが傍受されていると判断した場合は、該当する設定を変更します。詳細については、「ウェブアクセスコントロールリスト (ウェブ ACL) の作成と設定」を参照してください。

    すべてのルールにより、正しいリクエストのみが傍受されていることを確認したら、各ルールのアクションを [Allow] (許可) または [Block] (ブロック) に変更します。詳細については、「ウェブ ACL の編集」を参照してください。

API Gateway CloudFront または Application Load Balancer が AWS WAF Classic に転送したウェブリクエストのサンプルを表示する

AWS WAF Classic コンソールでは、API Gateway CloudFront または Application Load Balancer が検査のために AWS WAF Classic に転送したリクエストのサンプルを表示できます。サンプリングされたリクエストごとに、発生元の IP アドレスやリクエストに含まれるヘッダーなど、リクエストに関する詳細なデータを表示できます。また、リクエストが一致したルールを表示したり、ルールがリクエストを許可するように設定されているかブロックするように設定されているかを確認したりもできます。

リクエストのサンプルには、各ルールのすべての条件に一致した最大 100 件のリクエストと、デフォルトアクションが適用された別の 100 件のリクエストが含まれます。デフォルトアクションは、すべてのルールのすべての条件に一致しなかったリクエストに適用されます。サンプルのリクエストは、過去 15 分間にコンテンツに対するリクエストを受信したすべての API Gateway API、CloudFront エッジロケーション、または Application Load Balancer からのものです。

API Gateway、CloudFront、または Application Load Balancer が AWS WAF Classic に転送したウェブリクエストのサンプルを表示するには
  1. AWS Management Console にサインインして AWS WAF コンソール (https://console.aws.amazon.com/wafv2/) を開きます。

    ナビゲーションペインに、[Switch to AWS WAF Classic] ( Classic に切り替える) が表示されたら、それを選択します。

  2. ナビゲーションペインで、リクエストを表示するウェブ ACL を選択します。

  3. 右ペインで、[Requests] (リクエスト) タブを選択します。

    [Sampled requests] (サンプリングされたリクエスト) テーブルには、リクエストごとに次の値が表示されます。

    [Source IP] (送信元 IP)

    リクエストの発生元の IP アドレス (ビューワーが HTTP プロキシまたは Application Load Balancer を使用してリクエストを送信した場合は、そのプロキシまたは Application Load Balancer の IP アドレス)。

    [URI]

    リクエストの URI パス。リソースを識別します (例: /images/daily-ad.jpg)。これには、URI のクエリ文字列またはフラグメントコンポーネントは含まれません。詳細については、「Uniform Resource Identifier (URI): 一般的な構文」を参照してください。

    [Matches rule] (一致ルール)

    ウェブリクエストがすべての条件に一致したウェブ ACL の最初のルールを識別します。ウェブリクエストがウェブ ACL のすべてのルールのすべての条件に一致しない場合、[Matches rule] (ルールに一致) の値は [Default] (デフォルト) です。

    ウェブリクエストがルールのすべての条件に一致し、そのルールのアクションが [Count] (カウント) である場合、AWS WAF Classic によってウェブ ACL の後続のルールに基づいてウェブリクエストが引き続き検査されます。この場合、ウェブリクエストはサンプリングされたリクエストのリストに 2 回表示されることがあります。1 回は、アクションが [Count] (カウント) のルールに対応し、もう 1 回は、後続のルールまたはデフォルトアクションに対応します。

    [Action] (アクション)

    対応するルールのアクションが [Allow] (許可)、[Block] (ブロック)、[Count] (カウント) のいずれかであるかを示します。

    [Time] (時間)

    API Gateway、CloudFront、または Application Load Balancer から AWS WAF Classic がリクエストを受信した時刻。

  4. リクエストに関する追加情報を表示するには、そのリクエストの IP アドレスの左側にある矢印を選択します。AWS WAFClassic では、次の情報が表示されます。

    [Source IP] (送信元 IP)

    テーブルの [Source IP] (ソース IP) 列の値と同じ IP アドレス。

    [Country] (国)

    リクエスト送信元の国の 2 文字の国コード。ビューワーが HTTP プロキシまたは Application Load Balancer を使用してリクエストを送信する場合、これは HTTP プロキシまたは Application Load Balancer が存在する国の 2 文字の国コードです。

    2 文字の国コードと対応する国名のリストについては、Wikipedia の「ISO 3166-1 alpha-2」記事を参照してください。

    [Method] (メソッド)

    リクエストの HTTP リクエストメソッド: GETHEADOPTIONSPUTPOSTPATCHDELETE

    [URI]

    テーブルの [URI] 列の値と同じ URI。

    [Request headers] (リクエストヘッダー)

    リクエストのヘッダーとヘッダー値。

  5. サンプルのリクエストのリストを更新するには、[Get new samples] (新しいサンプルを取得) を選択します。