正規表現パターンセット一致ルールステートメント - AWS WAF、AWS Firewall Manager、AWS Shield Advanced、および AWS Shield ネットワークセキュリティディレクター

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

更新されたエクスペリエンスを使用して、コンソールの任意の場所で AWS WAF 機能にアクセスできるようになりました。詳細については、「更新されたコンソールエクスペリエンスを使用する」を参照してください。

正規表現パターンセット一致ルールステートメント

このセクションでは、正規表現パターンセット一致ステートメントとは何か、またその仕組みについて説明します。

正規表現パターンセット一致は、ウェブリクエストの指定した部分を、正規表現パターンセット内の指定した正規表現パターンに照らして検査します。

AWS WAF は、PCRE ライブラリ libpcre で使用されるパターン構文をサポートしますが、いくつかの例外があります。ライブラリは、「PCRE - Perl Compatible Regular Expressions」で文書化されています。AWS WAF でのサポートの詳細については、「AWS WAF でサポートされている正規表現」を参照してください。

注記

各正規表現パターンセット一致ルールは、正規表現パターンセットを参照します。このパターンセットは、ルールとは無関係に作成し、維持します。複数ルールで設定された単一の正規表現パターンセットを使用できます。参照セットを更新すると、AWS WAF はそれを参照するすべてのルールを自動的に更新します。

正規表現パターンセットの作成および管理については、「AWS WAF の正規表現パターンセットの作成と管理」を参照してください。

正規表現パターンセット一致ステートメントは、選択されたリクエストコンポーネントに含まれるセットのパターンを検索するように AWS WAF に指示します。リクエストコンポーネントがセット内のいずれかのパターンに一致する場合、ウェブリクエストはパターンセットルールステートメントと一致します。

論理を使用して正規表現パターンの一致を組み合わせる場合、例えば、一部の正規表現と照合し、他の正規表現とは照合しない場合は、正規表現一致ルールステートメント を使用することを検討してください。

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

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

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

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

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

    警告

    リクエストコンポーネント [Body] (本文)、[JSON body] (JSON 本文)、[Headers] (ヘッダー)、または [Cookies] (cookie) を検査する場合、AWS WAF で検査できるコンテンツの量の制限を「AWS WAF のオーバーサイズウェブリクエストコンポーネント」で確認してください。

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

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

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

  • 正規表現パターンセットの指定 - 使用する正規表現パターンセットをリストから選択するか、新しい IP セットを作成します。

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

  • コンソールのルールビルダー - [Match type] (一致タイプ) で [String match condition] (文字列一致条件) > [Matches pattern from regular expression set] (正規表現セットのパターンに一致) を選択します。

  • API – 「RegexPatternSetReferenceStatement