文字列一致ルールステートメント - AWS WAF, AWS Firewall Managerおよび AWS Shield Advanced

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

文字列一致ルールステートメント

このセクションでは、文字列一致ステートメントとその仕組みについて説明します。

文字列一致ステートメントは、目的の文字列を示します。 AWS WAF は、リクエスト内の を検索し、検索するリクエスト内の場所と方法を示します。例えば、リクエストに含まれるクエリ文字列の先頭にある特定の文字列、またはリクエストの User-agent ヘッダーと完全に一致する特定の文字列を検索できます。通常、文字列は印刷可能なASCII文字で構成されますが、16 進数の 0x00 から 0xFF (10 進数の 0 から 255) までの任意の文字を使用できます。

ルールステートメントの特性

ネスト可能 - このステートメントタイプはネスト可能です。

WCUs - 基本コストは、使用する一致のタイプによって異なります。

  • 次の文字列に完全一致 - 2

  • 文字列で始まる - 2

  • 文字列で終わる - 2

  • 文字列を含む - 10

  • 単語を含む – 10

リクエストコンポーネント すべてのクエリパラメータ を使用する場合は、10 を追加しますWCUs。リクエストコンポーネントJSON本文 を使用する場合は、基本コスト の 2 倍になりますWCUs。適用するテキスト変換ごとに、10 個の を追加しますWCUs。

このステートメントタイプは、ウェブリクエストコンポーネントで動作し、次のリクエストコンポーネント設定が必要です。

  • [リクエストコンポーネント] — ウェブリクエストの検査対象部分 (クエリ文字列や本文など)。

    警告

    リクエストコンポーネント本文JSON本文 ヘッダー 、または Cookie を検査する場合は、コンテンツの量に関する制限についてお読みください。 AWS WAF は で検査できますでのオーバーサイズのウェブリクエストコンポーネントの処理 AWS WAF

    ウェブリクエストコンポーネントの詳細については、「でのルールステートメント設定の調整 AWS WAF」を参照してください。

  • オプションのテキスト変換 – 必要な変換 AWS WAF は、検査する前にリクエストコンポーネントで を実行します。例えば、小文字に変換したり、空白を正規化したりできます。複数の変換を指定する場合は、 AWS WAF はリストされた順序で処理します。詳細については、でのテキスト変換の使用 AWS WAF を参照してください。

さらに、このステートメントには、次の設定が必要です。

  • 一致する文字列 — これは必要な文字列です。 AWS WAF は、指定されたリクエストコンポーネントと比較します。通常、文字列は印刷可能なASCII文字で構成されますが、16 進数の 0x00 から 0xFF (10 進数の 0 から 255) までの任意の文字を使用できます。

  • 文字列一致条件 — 必要な検索タイプを示します。 AWS WAF 実行する 。

    • Exactly matches string (次の文字列に完全一致) - リクエストコンポーネントの文字列と値が同一です。

    • Starts with string (次の文字列で始まる) - この文字列は、リクエストコンポーネントの先頭に出現します。

    • Ends with string (次の文字列で終わる) - この文字列は、リクエストコンポーネントの末尾に出現します。

    • Contains string (次の文字列を含む) - この文字列は、リクエストコンポーネント内の任意の場所に出現します。

    • Contains word (次の文字列を含む) - 指定した文字列がリクエストコンポーネントに出現する必要があります。

      このオプションの場合、指定する文字列には英数字またはアンダースコア (A〜Z、a〜z、0〜9、または_) のみを使用できます。

      リクエストが一致するには、次のいずれかに当てはまる必要があります。

      • 文字列が、ヘッダーの値など、リクエストコンポーネントの値と正確に一致する。

      • 文字列が、リクエストコンポーネントの先頭にあり、英数字または下線 (_) 以外の文字が続く (例: BadBot;)。

      • 文字列が、リクエストコンポーネントの末尾にあり、英数字または下線 (_) 以外の文字が先行する (例: ;BadBot)。

      • 文字列が、リクエストコンポーネントの中央にあり、英数字または下線 (_) 以外の文字が前後にある (例: -BadBot;)。

このルールステートメントの場所

  • コンソールのルールビルダー - [Match type] (一致タイプ) で [String match condition] (文字列一致条件) を選択し、一致させる文字列を入力します。

  • APIByteMatchStatement