AWS WAF でのスコープダウンステートメントの使用
このセクションでは、スコープダウンステートメントとその仕組みについて説明します。
スコープダウンステートメントは、マネージドルールグループステートメントまたはレートベースのステートメント内に追加できるネスト可能なルールステートメントで、包含ルールが評価するリクエストのセットを絞り込むことができます。包含ルールは、スコープダウンステートメントに最初に一致するリクエストのみを評価します。
-
マネージドルールグループステートメント – スコープダウンステートメントをマネージドルールグループステートメントに追加すると、AWS WAF はスコープダウンステートメントに一致しないすべてのリクエストをルールグループに一致しないものとして評価します。スコープダウンステートメントに一致するリクエストのみがルールグループに対して評価されます。評価されたリクエスト数に基づいて料金が発生するマネージドルールグループでは、スコープダウンステートメントはコストを抑えるのに役立ちます。
マネージドルールグループステートメントの詳細については、「AWS WAF でマネージドルールグループステートメントを使用する」を参照してください。
-
レートベースのルールステートメント – スコープダウンステートメントのレートを含まないレートベースのルールステートメントは、評価するすべてのリクエストのレートを制限します。特定のカテゴリのリクエストのレートのみを制御する場合は、レートベースのルールにスコープダウンステートメントを追加します。例えば、特定の地理的エリアから送信されたリクエストのレートだけを追跡および制御するには、地理的照合ステートメントでその地理的エリアを指定することで、スコープダウンステートメントとしてレートベースのルールに追加できます。
レートベースのルールステートメントの詳細については、「AWS WAF でのレートベースのルールステートメントの使用」を参照してください。
スコープダウンステートメントでは、任意のネスト可能なルールを使用できます。利用可能なステートメントについては、「AWS WAF での文字列一致ルールステートメントを使用する」および「AWS WAF での論理ルールステートメントの使用」を参照してください。スコープダウンステートメントの WCU は、その中で定義するルールステートメントに必要な WCU です。スコープダウンステートメントの使用に追加コストは発生しません
スコープダウンステートメントは、通常のルールでステートメントを使用する場合と同じ方法で設定できます。例えば、検査対象のウェブリクエストコンポーネントにテキスト変換を適用したり、IP アドレスとして使用するために転送された IP アドレスを指定したりできます。これらの設定はスコープダウンステートメントにのみ適用され、包含マネージドルールグループやレートベースのルールステートメントには継承されません。
例えば、スコープダウンステートメントのクエリ文字列にテキスト変換を適用すると、スコープダウンステートメントは変換を適用後、クエリ文字列を検査します。リクエストがスコープダウンステートメントの基準に一致する場合は、AWS WAFスコープダウンステートメントの変換を行わずに、元の状態でウェブリクエストを包含ルールに渡します。スコープダウンステートメントを含むルールは、独自のテキスト変換を適用する場合がありますが、スコープダウンステートメントから継承されるものはありません。
スコープダウンステートメントを使用して、包含ルールステートメントのリクエスト検査設定を指定することはできません。スコープダウンステートメントを、包含ルールステートメントのウェブリクエストプリプロセッサとして使用することはできません。スコープダウンステートメントの唯一の役割は、どのリクエストを包含ルールステートメントに渡して検査するかを決定することです。