レートベースのルール集約オプションとキー - AWS WAF、 AWS Firewall Manager、および AWS Shield Advanced

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

レートベースのルール集約オプションとキー

デフォルトでは、レートベースのルールはリクエスト IP アドレスに基づき、リクエストを集約してレート制限します。他のさまざまな集約キーやキーの組み合わせを使用するようにルールを設定できます。例えば、転送された IP アドレス、HTTP メソッド、またはクエリ引数に基づいて集計できます。IP アドレスや HTTP メソッドなどの集計キーの組み合わせ、または 2 つの異なる Cookie の値を指定することもできます。

注記

リクエストを評価したり、ルールによってレート制限したりするには、集約キーで指定するすべてのリクエストコンポーネントがウェブリクエストに含まれている必要があります。

レートベースのルールは、次の集約オプションを使用して設定できます。

  • 送信元 IP アドレス – ウェブリクエストの発信元 IP アドレスのみを使用して集約します。

    送信元 IP アドレスには、発信元クライアントのアドレスが含まれていない場合があります。ウェブリクエストが 1 つ以上のプロキシまたはロードバランサーを経由する場合、これには最後のプロキシのアドレスが含まれます。

  • ヘッダーの IP アドレス – HTTP ヘッダー内のクライアントアドレスのみを使用して集約します。これは転送された IP アドレスとも呼ばれます。

    この設定では、ヘッダーに不正な形式の IP アドレスを持つウェブリクエストに適用するフォールバック動作も指定します。フォールバック動作は、リクエストの一致結果を、一致または不一致のいずれにするかを設定します。不一致の場合、レートベースのルールは、リクエストをカウントまたはレート制限しません。一致の場合、レートベースのルールは、指定されたヘッダーに不正な形式の IP アドレスを持つ他のリクエストとともに、リクエストをグループ化します。

    ヘッダーはプロキシによって一貫性なく処理され、検査をバイパスするように変更される可能性があるため、このオプションには注意が必要です。追加情報とベストプラクティスについては、「転送された IP アドレス」を参照してください。

  • すべてをカウント – ルールのスコープダウンステートメントに一致するすべてのリクエストをカウントおよびレート制限します。このオプションには、スコープダウンステートメントが必要です。これは通常、特定のラベルが付いた全リクエストや特定の地域からの全リクエストなど、特定のリクエストセットをレート制限するために使用されます。

  • カスタムキー – 1 つ以上のカスタム集約キーを使用して集約します。いずれかの IP アドレスオプションを他の集約キーと組み合わせるには、それらをカスタムキーで定義します。

    カスタム集約キーは、「リクエストコンポーネントオプション」で説明されているウェブリクエストコンポーネントオプションのサブセットです。

    キーオプションは次のとおりです。特に明記されていない限り、オプションは複数回使用できます。例えば、2 つのヘッダーや 3 つのラベル名前空間などが使用可能です。

    • ラベル名前空間 – ラベル名前空間を集約キーとして使用します。指定されたラベル名前空間を持つ個別の完全修飾ラベル名はそれぞれ、集約インスタンスに影響します。カスタムキーとしてラベル名前空間を 1 つだけ使用する場合、各ラベル名は集約インスタンスを完全に定義します。

      レートベースのルールが使用するラベルは、ウェブ ACL であらかじめ評価されたルールによってリクエストに追加されたものに限ります。

      ラベル名前空間とラベル名の詳細については、「AWS WAF ラベル構文と命名要件」を参照してください。

    • ヘッダー – 名前付きヘッダーを集約キーとして使用します。ヘッダー内の個別の値はそれぞれ、集約インスタンスに影響します。

      ヘッダーはオプションでテキスト変換を実行します。テキスト変換オプション を参照してください。

    • Cookie – 名前付き Cookie を集約キーとして使用します。Cookie 内の個別の値はそれぞれ、集約インスタンスに影響します。

      Cookie はオプションでテキスト変換を実行します。テキスト変換オプション を参照してください。

    • クエリ引数 – リクエスト内で 1 つのクエリ引数を集約キーとして使用します。名前付きクエリ引数の個別の値はそれぞれ、集約インスタンスに影響します。

      クエリ引数はオプションでテキスト変換を実行します。テキスト変換オプション を参照してください。

    • クエリ文字列 – リクエスト内のクエリ文字列全体を集約キーとして使用します。個別のクエリ文字列はそれぞれ、集約インスタンスに影響します。このキータイプは一度だけ使用できます。

      クエリ文字列はオプションでテキスト変換を実行します。テキスト変換オプション を参照してください。

    • URI パス — リクエスト内の URI パスを集約キーとして使用します。個別の URI パスはそれぞれ、集約インスタンスに影響します。このキータイプは一度だけ使用できます。

      URI パスはオプションでテキスト変換を実行します。テキスト変換オプション を参照してください。

    • HTTP メソッド – リクエストの HTTP メソッドを集約キーとして使用します。個別の HTTP メソッドはそれぞれ、集約インスタンスに影響します。このキータイプは一度だけ使用できます。

    • IP アドレス – ウェブリクエストの発信元 IP アドレスを他のキーと組み合わせて集約します。

      これには、発信元クライアントのアドレスが含まれていない可能性があります。ウェブリクエストが 1 つ以上のプロキシまたはロードバランサーを経由する場合、これには最後のプロキシのアドレスが含まれます。

    • ヘッダーの IP アドレス – HTTP ヘッダー内のクライアントアドレスを他のキーと組み合わせて集約します。これは転送された IP アドレスとも呼ばれます。

      このオプションでは、プロキシによって一貫性のないヘッダー処理が行われ、検査を回避するように変更される可能性があるため、注意が必要です。追加情報とベストプラクティスについては、「転送された IP アドレス」を参照してください。