-
Cloudflare ダッシュボードで Security rules ページを開きます。
Security rules を開く ↗ -
空のルールを新規作成する場合は、Create rule > Rate limiting rules を選択します。既存ルールを複製する場合は、その横の三点リーダー > Duplicate を選択します。
-
Rule name に、わかりやすいルール名を入力します。
-
Field ドロップダウンで HTTP プロパティを選びます。各リクエストについて、Field で選んだプロパティの値が、Operator で選んだ演算子を使って Value に指定した値と比較されます。
-
(任意)Cache status の下で Also apply rate limiting to cached assets をオフにすると、レート判定の対象をオリジンに到達するリクエストだけにできます。
-
With the same characteristics の下で、レート制限用のリクエストカウンターを定義する特性を 1 つ以上追加します。値の組み合わせごとに、レートを判定するカウンターが用意されます。詳細は Cloudflare がリクエストレートを決める方法 を参照してください。
-
(任意)レートカウンターを増やす条件を式で指定する場合は、Use custom counting expression を有効にして式を設定します。デフォルトでは、カウント用の式はルール式と同じです。カウント用の式には レスポンスフィールド を含められます。
-
When rate exceeds の下で、レート判定に使うリクエスト数の上限と期間を定義します。
-
Then take action の下で、Choose action ドロップダウンリストからルールアクションを選びます。たとえば Block を選ぶと、指定した条件に合うリクエストが上限に達したとき、Cloudflare はそのリクエストを拒否します。
-
(任意)Block アクションを選んだ場合は、設定したレート制限を超えたリクエストに対して カスタムレスポンスを設定 できます。
-
Duration ドロップダウンで緩和のタイムアウトを選びます。レートに達したあと、選んだアクションを Cloudflare が適用し続ける期間です。
有料アドオン付きの Enterprise のお客様は、選んだ期間だけアクションを適用する代わりに、リクエストをスロットル できます。リクエストをスロットルするには、With the following behavior の下で Throttle requests over the maximum configured rate を選びます。
-
ルールを保存してデプロイするには Deploy を選択します。まだデプロイしない場合は Save as Draft を選択します。
ルールで Block アクションを選ぶと、任意でカスタムレスポンスを定義できます。
カスタムレスポンスには次の 3 つの設定があります。
-
With response type: リストからコンテンツタイプ、またはデフォルトの rate limiting レスポンスを選びます。利用できるカスタムレスポンスタイプは次のとおりです。
ダッシュボードの値 API の値 Custom HTML "text/html"Custom Text "text/plain"Custom JSON "application/json"Custom XML "text/xml" -
With response code: レスポンスの HTTP ステータスコードを 400〜499 の範囲で選びます。デフォルトのレスポンスコードは 429 です。
-
Response body: レスポンスの本文です。選んだレスポンスタイプに合わせて、有効な本文を設定します。フィールドの最大サイズは 30 KB です。