

**の新しいコンソールエクスペリエンスの紹介 AWS WAF**

更新されたエクスペリエンスを使用して、コンソールの任意の場所で AWS WAF 機能にアクセスできるようになりました。詳細については、[「コンソールの使用](https://docs.aws.amazon.com/waf/latest/developerguide/working-with-console.html)」を参照してください。

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

# 文字列一致ルールステートメント
<a name="waf-rule-statement-type-string-match"></a>

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

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

## ルールステートメントの特性
<a name="string-match-characteristics"></a>

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

**WCU** – 基本コストは、使用する一致のタイプによって異なります。
+ **次の文字列に完全一致** - 2 
+ **文字列で始まる** - 2 
+ **文字列で終わる** - 2 
+ **文字列を含む** - 10 
+ **単語を含む** – 10 

**[All query parameters]** (すべてのクエリパラメータ) のリクエストコンポーネントを使用する場合、10 WCU を追加します。**[JSON body]** (JSON 本文) のリクエストコンポーネントを使用する場合、基本コストの WCU を倍増させます。適用する各**テキスト変換**について、10 WCU を追加します。

このステートメントタイプは、ウェブリクエストコンポーネントで動作し、次のリクエストコンポーネント設定が必要です。
+ **[リクエストコンポーネント]** — ウェブリクエストの検査対象部分 (クエリ文字列や本文など)。
**警告**  
リクエストコンポーネント**本文**、**JSON 本文**、**ヘッダー**、または **Cookie** を検査する場合は、 で検査 AWS WAF できるコンテンツ量の制限についてお読みください[でのウェブリクエストコンポーネントのオーバーサイズ化 AWS WAF](waf-oversize-request-components.md)。

  ウェブリクエストコンポーネントの詳細については、「[でのルールステートメント設定の調整 AWS WAF](waf-rule-statement-fields.md)」を参照してください。
+ **オプションのテキスト変換** – 検査する前にリクエストコンポーネントで AWS WAF 実行する変換。例えば、小文字に変換したり、空白を正規化したりできます。複数の変換を指定すると、 はリストされた順序で変換 AWS WAF を処理します。詳細については、「[でのテキスト変換の使用 AWS WAF](waf-rule-statement-transformation.md)」を参照してください。

さらに、このステートメントには、次の設定が必要です。
+ **一致する文字列** – これは、指定されたリクエストコンポーネント 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、または\$1) のみを使用できます。

    リクエストが一致するには、次のいずれかに当てはまる必要があります。
    + 文字列が、ヘッダーの値など、リクエストコンポーネントの値と正確に一致する。
    + 文字列が、リクエストコンポーネントの先頭にあり、英数字または下線 (\$1) 以外の文字が続く (例: `BadBot;`)。
    + 文字列が、リクエストコンポーネントの末尾にあり、英数字または下線 (\$1) 以外の文字が先行する (例: `;BadBot`)。
    + 文字列が、リクエストコンポーネントの中央にあり、英数字または下線 (\$1) 以外の文字が前後にある (例: `-BadBot;`)。

## このルールステートメントの場所
<a name="string-match-where-to-find"></a>
+ コンソールの**ルールビルダー** - **[Match type]** (一致タイプ) で **[String match condition]** (文字列一致条件) を選択し、一致させる文字列を入力します。
+ **API** – 「[ByteMatchStatement](https://docs.aws.amazon.com/waf/latest/APIReference/API_ByteMatchStatement.html)」