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

:マッチ条件

最終更新日:Aug 09, 2024

ホワイトリストルールまたはカスタムルールを設定する場合、ルールの一致条件を設定し、一致条件でWeb Application Firewall (WAF) が検出するリクエストの特性を指定する必要があります。 このトピックでは、一致条件で使用できるフィールドについて説明します。

マッチ条件とは何ですか?

一致条件は、WAFに一致させるリクエストの特性を指定します。 カスタム保護ポリシー、ホワイトリスト、またはIPアドレスブラックリストを設定するときは、一致条件を設定する必要があります。 詳細については、「カスタム保護ポリシーの設定」、「ホワイトリストの設定」、および「IPアドレスブラックリストの設定」をご参照ください。 リクエストが保護ルールで指定された一致条件と一致する場合、リクエストは保護ルールと一致します。 次に、WAFは、リクエストに対してルールで指定されたアクション (Block、JavaScript Validation、Monitorなど) を実行します。

サポートされている一致フィールド

次の表に、一致条件でサポートされている一致フィールドを示します。

マッチフィールド

サポートされる論理演算子

説明

URI

  • 等しいと等しくない

  • 複数の値の1つに等しく、任意の値に等しくない

  • 含まれ、含まない

  • 複数の値の1つを含み、値を含まない

  • に等しい長さ、より大きい長さおよび長さより少しより

  • プレフィックスマッチとサフィックスマッチ

  • 正規表現の一致と正規表現の不一致

リクエストのURI (Uniform Resource Identifier) 。 URIは、要求されたリソースのパスを示す。 一致するコンテンツは、スラッシュ (/) で始まる必要があります。 一致コンテンツにドメイン名を含めることはできません。 例: /login.php

IP

  • に属し、属していない

  • リスト内とリスト内ではない

リクエストを送信するクライアントのIPアドレス。

指定するIPアドレスは、次の要件を満たす必要があります。

  • 10.10.10.10などのIPv4アドレスまたは10.10.10.10/16などのCIDRブロックを入力できます。

  • POPへの接続に使用されるIPアドレスは、DCDNアクセスログのremote_ipの値です。 詳細は、「ログフィールド」をご参照ください。

  • 最大50個のIPアドレスとCIDRブロックを入力できます。 複数ある場合、コンマ (,) で区切ります。

  • 設定したIPアドレスグループを参照できます。 詳細については、「WAF IPアドレスグループの設定」をご参照ください。

リファラー

  • 等しいと等しくない

  • 複数の値の1つに等しく、任意の値に等しくない

  • 含まれ、含まない

  • 複数の値の1つを含み、値を含まない

  • 存在し、存在しない

  • Empty

  • に等しい長さ、より大きい長さおよび長さより少しより

  • プレフィックスマッチとサフィックスマッチ

  • 正規表現の一致と正規表現の不一致

アクセス要求のリダイレクト元のソースページのURL。

ユーザーエージェント

  • 等しいと等しくない

  • 複数の値の1つに等しく、任意の値に等しくない

  • 含まれ、含まない

  • 複数の値の1つを含み、値を含まない

  • 存在し、存在しない

  • Empty

  • に等しい長さ、より大きい長さおよび長さより少しより

  • プレフィックスマッチとサフィックスマッチ

  • 正規表現の一致と正規表現の不一致

リクエストを送信するクライアントに関するブラウザ情報。 情報には、ブラウザ、レンダリングエンジン、およびバージョンが含まれます。

クエリ文字列

  • 等しいと等しくない

  • 複数の値の1つに等しく、任意の値に等しくない

  • 含まれ、含まない

  • 複数の値の1つを含み、値を含まない

  • 存在し、存在しない

  • に等しい長さ、より大きい長さおよび長さより少しより

  • プレフィックスマッチとサフィックスマッチ

  • 正規表現の一致と正規表現の不一致

リクエスト内の照会文字列。 クエリ文字列は、URLの疑問符 (?) に続く部分です。

クッキー

  • 等しいと等しくない

  • 複数の値の1つに等しく、任意の値に等しくない

  • 含まれ、含まない

  • 複数の値の1つを含み、値を含まない

  • 存在し、存在しない

  • に等しい長さ、より大きい長さおよび長さより少しより

  • 正規表現の一致と正規表現の不一致

アクセスリクエスト内のcookie情報。

コンテンツタイプ

  • 等しいと等しくない

  • 複数の値の1つに等しく、任意の値に等しくない

  • 含まれ、含まない

  • 複数の値の1つを含み、値を含まない

  • に等しい長さ、より大きい長さおよび長さより少しより

  • 正規表現の一致と正規表現の不一致

レスポンスに指定されたHTTPコンテンツタイプ。 HTTPコンテンツタイプは、多目的インターネットメール拡張 (MIME) タイプとして知られている。

コンテンツ長

より少ない値、等しい値、およびより大きい値

レスポンスのバイト数。 有効な値: 0 ~ 8192

X-Forwarded-For

  • 等しいと等しくない

  • 複数の値の1つに等しく、任意の値に等しくない

  • 含まれ、含まない

  • 存在しない

  • に等しい長さ、より大きい長さおよび長さより少しより

アクセス要求を開始するクライアントの送信元IPアドレス。 HTTP X-Forwarded-For (XFF) ヘッダーは、HTTPプロキシまたはServer Load Balancer (SLB) インスタンスによって転送されるリクエストの送信元IPアドレスを識別するために使用されます。 XFFヘッダーは、HTTPプロキシまたはSLBインスタンスによって転送されるリクエストにのみ含まれます。

ボディ

  • 等しいと等しくない

  • 含まれ、含まない

  • 存在しない

  • 前方一致

  • 接尾辞マッチ

  • 正規表現一致

リクエスト本文。 ボディが8 KBを超えるリクエストはブロックされなくなります。

Http-メソッド

  • 等しいと等しくない

  • 複数の値の1つに等しく、任意の値に等しくない

リクエスト方式。 有効な値: GET、POST、DELETE、PUT、OPTIONS、CONNECT、HEAD、TRACE、およびPATCH。

ヘッダー

  • 等しいと等しくない

  • 複数の値の1つに等しく、任意の値に等しくない

  • 含まれ、含まない

  • 複数の値の1つを含み、値を含まない

  • 存在し、存在しない

  • に等しい長さ、より大きい長さおよび長さより少しより

  • 正規表現の一致と正規表現の不一致

リクエストヘッダー。 カスタムヘッダーがサポートされています。

URIパス

  • 等しいと等しくない

  • 複数の値の1つに等しく、任意の値に等しくない

  • 含まれ、含まない

  • 複数の値の1つを含み、値を含まない

  • に等しい長さ、より大きい長さおよび長さより少しより

  • プレフィックスマッチとサフィックスマッチ

  • 正規表現の一致と正規表現の不一致

リクエストのURIパス。

クエリ文字列パラメーター

  • 等しいと等しくない

  • 複数の値の1つに等しく、任意の値に等しくない

  • 含まれ、含まない

  • 複数の値の1つを含み、値を含まない

  • に等しい長さ、より大きい長さおよび長さより少しより

  • プレフィックスマッチとサフィックスマッチ

  • 正規表現一致

リクエストURLのリクエストパラメーター。 リクエストパラメーターは、URLの疑問符 (?) に続く部分です。 たとえば、www.abc.com/index.html?action=loginaction=loginはクエリ文字列です。

ホスト

  • 等しいと等しくない

  • 複数の値の1つに等しく、任意の値に等しくない

  • 含まれ、含まない

  • 複数の値の1つを含み、値を含まない

  • 存在する

  • に等しい長さ、より大きい長さおよび長さより少しより

  • プレフィックスマッチとサフィックスマッチ

  • 正規表現の一致と正規表現の不一致

リクエストされたドメイン名。

CookieName

  • 等しいと等しくない

  • 複数の値の1つに等しく、任意の値に等しくない

  • 含まれ、含まない

  • 複数の値の1つを含み、値を含まない

  • 存在する

  • に等しい長さ、より大きい長さおよび長さより少しより

  • プレフィックスマッチとサフィックスマッチ

  • 正規表現一致

cookieのキー。 たとえば、acw_tc:111awc_tcはcookieのキーです。

BodyParameter

  • 等しいと等しくない

  • 複数の値の1つに等しく、任意の値に等しくない

  • 含まれ、含まない

  • 複数の値の1つを含み、値を含まない

  • 存在する

  • に等しい長さ、より大きい長さおよび長さより少しより

  • プレフィックスマッチとサフィックスマッチ

  • 正規表現一致

リクエストボディ内のパラメーターの名前。 たとえば、リクエスト本文にa=1&b=2が含まれている場合、abはパラメーター名です。

ファイル名

  • 等しいと等しくない

  • 複数の値の1つに等しく、任意の値に等しくない

  • 含まれ、含まない

  • 複数の値の1つを含み、値を含まない

  • 存在し、存在しない

  • Empty

  • に等しい長さ、より大きい長さおよび長さより少しより

  • プレフィックスマッチとサフィックスマッチ

  • 正規表現の一致と正規表現の不一致

リクエストパスの末尾にあるファイル名。 たとえば、/abc/index.phpindex.phpはファイル名です。

ファイル拡張子

  • 等しいと等しくない

  • 複数の値の1つに等しく、任意の値に等しくない

  • 含まれ、含まない

  • 複数の値の1つを含み、値を含まない

  • 存在し、存在しない

  • Empty

  • に等しい長さ、より大きい長さおよび長さより少しより

  • プレフィックスマッチとサフィックスマッチ

  • 正規表現の一致と正規表現の不一致

要求されたファイルのファイル名拡張子。 例:. png. php.

論理演算子

論理演算子

説明

に属し、属していない

一致フィールドが一致コンテンツに属しているかどうかをチェックします。

含まれ、含まない

一致フィールドに一致コンテンツが含まれているかどうかを確認します。

リスト内とリスト内ではない

一致フィールドがリストにあるかどうかをチェックします。

複数の値の1つを含み、値を含まない

一致フィールドに一致コンテンツの値が1つ含まれているかどうかを確認します。

等しいと等しくない

一致フィールドが一致コンテンツと等しいかどうかをチェックします。

複数の値の1つに等しく、任意の値に等しくない

一致フィールドが一致コンテンツの1つの値に等しいかどうかをチェックします。

に等しい長さ、より大きい長さおよび長さより少しより

一致フィールドの長さが一致コンテンツの長さと等しいか、大きいか、小さいかを確認します。

存在し、存在しない

matchフィールドが存在するかどうかをチェックします。

より少ない値、等しい値、およびより大きい値

一致フィールドの値が一致コンテンツの値より小さいか、等しいか、大きいかを確認します。

プレフィックスマッチとサフィックスマッチ

一致フィールドのプレフィックスまたはサフィックスに一致コンテンツが含まれているかどうかを確認します。

正規表現の一致と正規表現の不一致

フィールドの正規表現と一致し、フィールドの正規表現と一致しません。

Empty

一致フィールドの内容が空かどうかをチェックします。

設定例

  • 例1: [Match Field] をURIに、[Logical Operator] をContainsに、[Match Content]/login.phpに設定した場合、リクエストされたパスに /login.phpが含まれている場合、リクエストはルールに一致します。

  • 例2: [Match Field] をIPに、[Logical Operator] を [Belongs to] に、[Match Content] を192.168.0.1に設定した場合、IPアドレスが192.168.0.1のクライアントからリクエストが送信された場合、リクエストはルールに一致します。