すべてのプロダクト
Search
ドキュメントセンター

Web Application Firewall:マッチ条件フィールド

最終更新日:Apr 01, 2026

マッチ条件を使用すると、Web サイトのホワイトリストまたはカスタム保護ルールを設定する際に、特定の HTTP リクエスト属性を対象にできます。各条件では、論理演算子を用いて 1 つのフィールドと値を比較します。WAF は、保護ルール内のすべての条件が満たされた場合にのみ、そのルールを適用します。

マッチ条件の仕組み

マッチ条件は、以下の 3 つの要素で構成されます:

  • マッチフィールド — 検査対象の HTTP リクエスト属性(例:URL、IP アドレス、User-Agent)

  • 論理演算子 — フィールド値の比較方法(例:一致、含む、接頭辞一致)

  • マッチ内容 — 比較対象の値

各保護ルールでは、最大 5 つのマッチ条件を設定できます。条件間は AND 論理で結合されるため、WAF がルールの操作を実行するには、すべての条件を満たす必要があります。

ホワイトリストを設定する場合、バイパス対象モジュール パラメーターを設定して、該当リクエストがバイパスする WAF モジュールを指定します。カスタム保護ルールを設定する場合、操作 パラメーターを設定して、該当リクエストに対して WAF が実行する処理を指定します。詳細については、以下をご参照ください。

サポート対象のマッチフィールド

フィールドは、利用可能なエディションごとにグループ化されています。「Pro+」とマークされたフィールドは、Pro、Business、Enterprise、Exclusive エディションで利用可能です。「Business+」とマークされたフィールドは、Business、Enterprise、Exclusive エディションが必要です。

Pro、Business、Enterprise、Exclusive エディション

フィールドタイプ説明サポート対象の論理演算子
URL文字列リクエストの完全な URL。一致、不一致、複数値のいずれかと一致、複数値のいずれとも不一致;含む、含まない、複数値のいずれかを含む、複数値のいずれも含まない;長さが等しい、長さが大きい、長さが小さい;接頭辞一致、接尾辞一致;正規表現一致、正規表現不一致。
重要

Pro エディションでは「正規表現一致」はサポートされていません。

IPIPリクエストの送信元 IP アドレス。個別の IP アドレスまたは CIDR ブロック(例:47.100.XX.XX/24)を入力します。複数の値はカンマで区切ります。所属、非所属。
説明

保護ルール全体で、IP マッチ条件に設定できる IP アドレスまたは CIDR ブロックの合計は最大 50 個までです。

Referer文字列リクエストされたリソースへのリンクを含むページの URL(HTTP Referer ヘッダー)。一致、不一致、複数値のいずれかと一致、複数値のいずれとも不一致;含む、含まない、複数値のいずれかを含む、複数値のいずれも含まない;存在、不存在;空;長さが等しい、長さが大きい、長さが小さい;接頭辞一致、接尾辞一致;正規表現一致、正規表現不一致。
重要

Pro エディションでは「正規表現一致」はサポートされていません。

User-Agent文字列クライアントのブラウザ、レンダリングエンジン、およびバージョン(User-Agent ヘッダーで報告される情報)。一致、不一致、複数値のいずれかと一致、複数値のいずれとも不一致;含む、含まない、複数値のいずれかを含む、複数値のいずれも含まない;存在、不存在;空;長さが等しい、長さが大きい、長さが小さい;接頭辞一致、接尾辞一致;正規表現一致、正規表現不一致。
Params文字列リクエスト URL のクエリ文字列全体(? 以降のすべて)。たとえば、www.example.com/index.html?action=login の場合、Params の値は action=login です。一致、不一致、複数値のいずれかと一致、複数値のいずれとも不一致;含む、含まない、複数値のいずれかを含む、複数値のいずれも含まない;存在、不存在;長さが等しい、長さが大きい、長さが小さい;接頭辞一致、接尾辞一致;正規表現一致、正規表現不一致。
Query-Arg文字列リクエスト URL 内の個別のクエリ引数。たとえば、www.example.com/request_path?arg1=a&arg2=b の場合、クエリ引数は arg1=a および arg2=b です。
説明

マッチフィールドを Query-Arg に、論理演算子を含むに設定した場合、WAF は引数名に対して部分文字列マッチを行います。マッチ内容を arg に設定すると、arg1arg2 を含むリクエストが該当します。引数の正確な一致を実現するには、代わりにマッチ内容を arg1arg2 に設定してください。

一致、不一致、複数値のいずれかと一致、複数値のいずれとも不一致;含む、含まない、複数値のいずれかを含む、複数値のいずれも含まない;存在、不存在;空;長さが等しい、長さが大きい、長さが小さい;接頭辞一致、接尾辞一致;正規表現一致。
URLPath文字列クエリ文字列を除いたリクエスト URL のパスコンポーネント。一致、不一致、複数値のいずれかと一致、複数値のいずれとも不一致;含む、含まない、複数値のいずれかを含む、複数値のいずれも含まない;長さが等しい、長さが大きい、長さが小さい;接頭辞一致、接尾辞一致;正規表現一致、正規表現不一致。

Business、Enterprise、Exclusive エディションのみ

フィールドタイプ説明サポート対象の論理演算子
Cookie文字列リクエスト内の Cookie データ。一致、不一致、複数値のいずれかと一致、複数値のいずれとも不一致;含む、含まない、複数値のいずれかを含む、複数値のいずれも含まない;存在、不存在;長さが等しい、長さが大きい、長さが小さい;正規表現一致、正規表現不一致。
Content-Type文字列応答に指定された HTTP コンテンツタイプ(MIME タイプとも呼ばれます)。一致、不一致、複数値のいずれかと一致、複数値のいずれとも不一致;含む、含まない、複数値のいずれかを含む、複数値のいずれも含まない;長さが等しい、長さが大きい、長さが小さい;正規表現一致、正規表現不一致。
Content-Length番号応答で許可されるバイト数。値が小さい、値が等しい、値が大きい。
X-Forwarded-For文字列HTTP プロキシまたは Server Load Balancer (SLB) インスタンスによって転送されたリクエストのクライアントの送信元 IP アドレス。X-Forwarded-For(XFF)ヘッダーは、転送されたリクエストでのみ存在します。一致、不一致、複数値のいずれかと一致、複数値のいずれとも不一致;含む、含まない;不存在;長さが等しい、長さが大きい、長さが小さい。
Post-Body文字列リクエストの本文コンテンツ。等しい、等しくない;含む、含まない;不存在;接頭辞一致、接尾辞一致;正規表現一致。
Server-Port文字列オリジンサーバーのポート番号。たとえば、www.example.com:9999 の場合、サーバーポートは 9999 です。一致、不一致、複数値のいずれかと一致、複数値のいずれとも不一致。
Http-Method文字列リクエストの HTTP メソッド。有効な値: GETPOSTDELETEPUTOPTIONS一致、不一致、複数値のいずれかと一致、複数値のいずれとも不一致。
Header文字列カスタム HTTP リクエストヘッダー。標準外またはアプリケーション固有のヘッダーとのマッチに使用します。一致、不一致、複数値のいずれかと一致、複数値のいずれとも不一致;含む、含まない、複数値のいずれかを含む、複数値のいずれも含まない;存在、不存在;長さが等しい、長さが大きい、長さが小さい;正規表現一致、正規表現不一致。

Params と Query-Arg の違い

ParamsQuery-Arg は、どちらもクエリ文字列を検査しますが、粒度が異なります。

ParamsQuery-Arg
範囲クエリ文字列全体を 1 つの値として扱うクエリ文字列内の個別の引数
action=login&user=aliceaction=login または user=alice
推奨用途クエリ文字列全体のパターンに一致させる場合特定の引数名または値に一致させる場合

たとえば、arg1 が特定の値に設定されているリクエストをブロックする場合は、「一致」演算子を用いた Query-Arg を使用します。一方、クエリ文字列に特定の部分文字列を含むすべてのリクエストに一致させる場合は、「含む」演算子を用いた Params を使用します。