tencent cloud

Tencent Cloud EdgeOne

カスタムレート制限ルール

ダウンロード
フォーカスモード
フォントサイズ
最終更新日: 2026-10-15 18:07:46
AI翻訳

概要

サイト運営では、悪意のあるリソース占有、業務の悪用、ブルートフォース攻撃などの問題が頻繁に発生します。これらの問題を放置すると、サービス品質の低下、高額なコスト請求書の発生、さらには機密データの漏洩につながる可能性があります。これらのリスクを効果的に管理するには、クライアントアクセス頻度が重要な指標となります。悪意のあるクライアントは通常、より高い頻度でアクセスし、ログインの突破、リソースの占有、コンテンツのクローリングを迅速に行おうとします。適切なしきい値でクライアントアクセス頻度を制限することで、正常なクライアントと悪意のあるクライアントを効果的に区別し、リソースの占有や悪用のリスクを軽減できます。
注意:
1. クローラーの管理と対策において、レート制限ポリシーのみを使用する効果は限定的です。 Bot管理機能と組み合わせて、完全なクローラー管理ポリシーを策定してください。
2. レート制限ルールは、エッジアクセスサーバーのIPディメンションに基づいてそれぞれカウント統計を行います。HTTP DDoS攻撃への対抗に使用でき、一定の程度でオリジンサーバーの可用性を保障します。レート制限ルールではオリジンサーバーQPSを正確に制御できません。オリジンサーバーQPS制御に関する要件がある場合は、オリジンサーバーアクセス頻度制限ポリシーを参照してください。

代表的なシナリオと構成方法

レート制限は通常、正常なクライアントアクセスと悪意のあるアクセスを区別するために使用されます。適切な統計方式、制限しきい値、対処方法を選択することで、レート制限はセキュリティリスクの軽減に役立ちます。レート制限設定は以下のタイプに分けられます。
精確レート制限:ユーザー定義のアクセス頻度制御ポリシーです。複数の条件を組み合わせてリクエストをマッチングし、各リクエスト送信元のリクエストレートを制限します。大部分のシナリオで、正常なユーザーアクセスと悪意のある高頻度アクセスを区別するために適用されます。
マネージドカスタムポリシー:Tencentセキュリティ専門家によってカスタマイズされたポリシーであり、コンソールでのポリシー調整はサポートされていません。詳細はマネージドカスタムルールを参照してください。

高精度レート制限

シナリオ例1:ログインAPIインターフェースのアクセス頻度を制限し、クレデンシャルスタッフィング攻撃やブルートフォース攻撃を緩和する

資格情報の詰め込み攻撃やブルートフォース攻撃に直面するシナリオでは、攻撃者は通常、ログインAPIインターフェースに頻繁にアクセスして情報の取得や解析を試みます。機密性の高いインターフェースへのリクエスト頻度を制限することで、攻撃者による解析試行を大幅に軽減し、このような攻撃を効果的に防御して機密情報の漏洩を防ぐことができます。例えば、サイトドメインwww.example.comは外部インターフェース/api/UpdateConfigを提供しており、このインターフェースで許可されるアクセス呼び出し頻度は50回/10秒です。頻度制限を超えた場合、そのIPは2分間ブロックされます。操作手順は以下の通りです:
1. EdgeOneコンソールにログインし、左側のメニューバーで「サービス概要」に入り、「Webサイト安全な加速」内で設定が必要なサイトをクリックします。
2. 「セキュリティ保護」>「Web保護」をクリックします。デフォルトではサイトレベル保護ポリシーです。「ドメインレベル保護ポリシー」タブをクリックし、ドメインレベル保護ポリシーで、対象ドメインをクリックして対象ドメインの保護ポリシー設定画面に入ります。例えば:www.example.com。
3. 「レート制限」カードに移動し、「精確レート制限」の下にある「ルールを追加」をクリックします。
4. ルール追加ページに移動し、機密インターフェースアクセス保護ルールテンプレートを選択します。
5. 判断条件、レートしきい値、実行処置を設定し、追加をクリックします。例のシナリオを例にとると、マッチングフィールドをリクエストメソッド(Method)がPOST HEADに等しく、かつリクエストパス(Path)が/api/UpdateConfigに等しいように設定できます。レートしきい値は、カウント周期10秒以内にカウントが50回を超えたときにトリガーされるように調整します。トリガー後の実行アクションをブロックに調整し、処置継続時間は2分です。
説明:
ルールテンプレート内の各設定フィールドおよび例示値は、あくまでシナリオ化された例としての参考情報です。お客様の具体的なビジネス要件と通常のトラフィックレベルに基づいて評価し、保護をトリガーする判断条件、レートしきい値、および実行処置を適宜調整してください。

6. 「保存して公開」をクリックすると、ルールがデプロイされて有効になります。


シナリオ例2:404ステータスコードを引き起こすリクエストレートを制限し、リソースのランダムスキャンを緩和する

悪意のあるクライアントがサイトの画像リソースをランダムにスキャンし、コンテンツのクローリングを試みる際、アクセスパスが存在しないためにオリジンサーバーが404エラーを応答することがよくあります。オリジンサーバーが404ステータスコードを応答する原因となるリクエストの頻度を制限することで、EdgeOneは悪意のある攻撃者による大規模な静的リソースのスキャンとリクエストを防ぎ、オリジンサーバーのエラー応答を減らし、サーバーの負荷を軽減し、静的リソースサイトの安全性と安定性を向上させることができます。例えば:サイトドメインwww.example.comの画像静的リソース.jpg .jpeg .webp .png .svgに対して、リソースが存在せず404が応答された場合、10秒以内にアクセスが1回を超えると、対応するクライアントIPのリクエストを10秒間直接ブロックします。操作手順は以下の通りです:
1. EdgeOneコンソールにログインし、左側のメニューバーで「サービス概要」に入り、「Webサイト安全な加速」内で設定が必要なサイトをクリックします。
2. 「セキュリティ保護」>「Web保護」をクリックします。デフォルトではサイトレベル保護ポリシーです。「ドメインレベル保護ポリシー」タブをクリックし、ドメインレベル保護ポリシーで、対象ドメインをクリックして対象ドメインの保護ポリシー設定画面に入ります。例えば:www.example.com。
3. 「レート制限」カードに移動し、「精確レート制限」の下にある「ルールを追加」をクリックします。
4. ルール追加ページに移動し、静的リソースのランダムスキャンルールテンプレートを選択します。
5. 判断条件、レートしきい値、実行処置を設定し、追加をクリックします。例のシナリオを例にとると、マッチングフィールドをHTTPステータスコード(エンタープライズ版プランでサポート)が401、403、404のいずれかに等しく、かつリクエストパス(Path)のファイル拡張子マッチング内容が.jpg .jpeg .webp .png .svgであるリクエストに調整できます。レートしきい値は、カウント周期10秒以内にカウントが1回を超えたときにトリガーされるように調整します。トリガー後の実行アクションをブロックに調整し、処置継続時間は10秒です。
説明:
ルールテンプレート内の各設定フィールドおよび例示値は、あくまでシナリオ化された例としての参考情報です。お客様の具体的なビジネス要件と通常のトラフィックレベルに基づいて評価し、保護をトリガーする判断条件、レートしきい値、および実行処置を適宜調整してください。

6. 「保存して公開」をクリックすると、ルールがデプロイされて有効になります。


シナリオ例3:高並行性の検索エンジンクローラーによるWebサイトへのアクセスを制限し、正常なビジネスへの影響を緩和する

あるY検索エンジンのプロバイダーは、大規模分散型のクローラーアーキテクチャを使用しており、アクセス動作に対する制限が不足しているため、そのクローラーの動作はより積極的になり、短時間に大きなアクセス量が発生し、正常なビジネスに影響を及ぼす可能性があり、大量のリソースを消費します。そのため、レート制限によってこの種のクローラーアクセスを識別および制限し、その影響を緩和します。例えば:サイトwww.example.comは、Y検索エンジンのクローラーによる高頻度アクセスの影響で正常なビジネスが影響を受けています。Webセキュリティ分析を通じて、Y検索エンジンのクローラーが使用する分散アーキテクチャはJA3フィンガープリントとUser-Agentの特徴に集中しているため、レート制限ルールを設定し、同じJA3フィンガープリントとUser-Agentのアクセスリクエストが30秒の統計ウィンドウで60回を超えた場合に、そのJA3フィンガープリントとUser-Agentの特徴が同じリクエストをブロックし、10分間ブロックを継続します。操作手順は以下の通りです:
1. EdgeOneコンソールにログインし、左側のメニューバーで「サービス概要」に入り、「Webサイト安全な加速」内で設定が必要なサイトをクリックします。
2. 「セキュリティ保護」>「Web保護」をクリックします。デフォルトではサイトレベル保護ポリシーです。「ドメインレベル保護ポリシー」タブをクリックし、ドメインレベル保護ポリシーで、対象ドメインをクリックして対象ドメインの保護ポリシー設定画面に入ります。例えば:www.example.com。
3. 「レート制限」カードに移動し、「精確レート制限」の下にある「ルールを追加」をクリックします。
4. ルール追加ページに移動し、空白ルールの作成を選択し、ルール名を入力し、追加をクリックします。

5. 判断条件、レートしきい値、および実行処置を設定します。例のシナリオを例にとると、マッチングフィールドをアプリケーション層プロトコルがHTTPSに等しく、リクエスト特徴内のJA3フィンガープリントとHTTPヘッダー内のUser-Agentの特徴が同じクライアントに設定できます。レートしきい値は、カウント周期30秒以内にカウントが60回を超えたときにトリガーされます。トリガー後、実行アクションはブロックとなり、処置継続時間は10分です。

6. 「保存して公開」をクリックすると、ルールがデプロイされて有効になります。

関連参考

レート制限ルールを作成する際には、ルールのマッチング対象、トリガー方法、および処置方法を設定する必要があります。各設定項目の説明は以下の通りです:
注意:
現在のレートルールが既知のHTTPヘッダーの確定値に基づいてマッチングする必要がある場合は、判定条件を設定し、マッチングフィールドをHTTP指定ヘッダーパラメータ値として指定してマッチングできます。
現在のレートルールが、同じ値を持つ可能性のあるHTTPヘッダーに基づいてマッチングする必要がある場合は、レートしきい値を設定し、リクエスト特徴を指定した名前のHTTPヘッダーとしてマッチングできます。

マッチング対象

リクエスト元、ヘッダー特徴、レスポンスステータスコードなどに基づいてマッチング条件の組み合わせを設定します。レート制限ルールは、マッチング条件に該当する業務のみを制御します。マッチング条件の説明およびプランごとのサポート状況については、マッチング条件を参照してください。

トリガー方式

説明:
1. レート制限のしきい値に達していない場合、リクエストは処置されず、ログも記録されません。
2. 具体的な設定オプションと設定可能範囲は、サブスクリプションプランによって異なります。詳細については、プラン選択比較を参照してください。
3. カウント周期オプションでは、1秒オプションはクライアントIPおよびクライアントIP(XFFヘッダーを優先的にマッチング)リクエスト特徴のみをサポートします。
ルールは、トリガー方法内で設定された統計ルールに基づいてカウント統計を行います。カウント周期内に累計リクエスト数がしきい値を超えた場合、ルールがトリガーされ、対応する制限アクションが実行されます2。統計はカウント周期と統計方法に基づき、指定された特徴ディメンション(例:クライアントIP)における異なる特徴値のリクエスト数をカウントします1。トリガー方法の以下のパラメータを定義できます:
カウント周期:カウント時に使用する、ローリングタイムウィンドウの長さです。最短1秒、最長1時間をサポートします。
統計方式:リクエスト元を区別する方法であり、レート制限はリクエスト元ごとにリクエストレートを制限します。詳細については、統計ディメンションを参照してください。
レートしきい値:カウント周期内に、各ソース(例:クライアントIP)が許可されるリクエストの回数です。
触发状态保持时长:ルールがトリガーされた後、そのソースのマッチング条件に合致するリクエストを継続的に制限する時間です。最短1秒、最長30日をサポートします。

リクエスト特徴

1つまたは複数のリクエスト特徴に基づいて統計を行うことができます。統計ディメンション内のリクエスト特徴がトリガー方法内で設定されたレートしきい値に達すると、レート制限ルールがトリガーされます。以下の統計ディメンションを指定できます1:
クライアントIP:同じ送信元IPからのリクエストは同じカウンターにカウントされ、しきい値を超えるとルールの処置アクションがトリガーされます。
クライアントIP(XFFヘッダーを優先的にマッチング):同じクライアントIPからのリクエストは同じカウンターにカウントされ、しきい値を超えるとルールの処置アクションがトリガーされます。X-Forwarded-Forヘッダーが存在し、有効なIPリストを含む場合、X-Forwarded-Forヘッダーの最初のIPを優先的に使用して統計を行います。
指定名称のCookie:リクエストヘッダー内の指定名称のCookie値を抽出し、同じCookie値のリクエストは同じカウンターにカウントされ、しきい値を超えるとルールの処置アクションがトリガーされます。
例えば、サイトがuser-sessionという名前のCookieを使用してアクセスセッションをマークする場合、統計ディメンションとしてuser-sessionという名前のCookie値を設定し、セッションごとのリクエストレートを統計できます。単一セッション内のリクエストレートがしきい値を超えると、ルールで設定された処置アクションがトリガーされます。
指定名称のHTTPヘッダー:リクエストヘッダー内の指定名称のヘッダー値を抽出し、同じヘッダー値のリクエストは同じカウンターにカウントされ、しきい値を超えるとルールの処置アクションがトリガーされます。例えば、Originヘッダーを指定して、各外部ドメインからのアクセス頻度を制限できます。ある外部ドメインのアクセス頻度がしきい値を超えると、ルールで設定された処置アクションがトリガーされます。
指定名称のURLクエリパラメータ:リクエストURLクエリパラメータ内の指定名称のパラメータ値を抽出し、同じクエリパラメータ値のリクエストは同じカウンターにカウントされ、しきい値を超えるとルールの処置アクションがトリガーされます。
例えば、サイトがuser-sessionという名前のクエリパラメータを使用してアクセスセッションをマークする場合、統計ディメンションとしてuser-sessionという名前のクエリパラメータを設定し、セッションごとのリクエストレートを統計できます。単一セッション内のリクエストレートがしきい値を超えると、ルールで設定された処置アクションがトリガーされます。
リクエストのJA3フィンガープリント4:各リクエストのJA3フィンガープリントを計算し、JA3フィンガープリントが同じリクエストをカウントして統計し、しきい値を超えるとルールの処置アクションがトリガーされます。各リクエストは一意のJA3フィンガープリント値に対応しており、キー値モデルは存在しないため、指定パラメータを入力する必要はありません。JA3の特性を考慮し、クライアントをより適切に区別するために、User-Agentヘッダー統計ディメンションと同時に設定することをお勧めします。
リクエストのJA4フィンガープリント:各リクエストのJA4フィンガープリントを計算し、JA4フィンガープリントが同じリクエストをカウントして統計し、しきい値を超えるとルールの処置アクションがトリガーされます。各リクエストは一意のJA4フィンガープリント値に対応しており、キー値モデルは存在しないため、指定パラメータを入力する必要はありません。
リクエストのアクセスパス:リクエストのアクセスパス(URL Path、URLクエリパラメータを含まない)を抽出し、同じアクセスパスのリクエストは同じカウンターにカウントされ、しきい値を超えるとルールの処置アクションがトリガーされます。
説明:
注1
:ご契約のプランによって、設定可能なマッチング条件、統計ディメンション、処置方法のオプションが異なる場合があります。詳細については、プランオプション比較を参照してください。
注2:
複数のレート制限ルールが存在する場合、1つのリクエストが同時に複数のルール内容に一致する可能性があり、それぞれのルールの統計方式に基づいて、そのルールをトリガーするかどうかが同時に決定されます。統計によりそのうちの1つのルールがトリガーされ、ブロックされた後は、残りのルールはそれ以上トリガーされません。複数のルールが同時にトリガーされた場合は、トリガーされたルールの優先度順に従って実行され、優先度の数値が小さいルールが優先的にマッチングされます。詳細については、Web防护リクエスト処理順序を参照してください。
注3
:ルールがトリガーされた後、現在のルールに一致するリクエストにのみ有効になります。
注4
:JA3フィンガープリントは、クライアントのTLS情報に基づいて形成された識別情報であり、異なるBotネットワークからのリクエストを効果的に区別できます。リクエストが非SSLのHTTPプロトコルに基づいて開始された場合、リクエストのJA3フィンガープリントは空になります。JA3フィンガープリントを使用する必要がある場合は、現在のドメインでBot管理機能が有効になっていることを確認してください。
注5:複数の統計ディメンションを組み合わせて、リクエスト特徴が同じリクエストを統計する必要がある場合は、EdgeOne企業版プランに加入する必要があります。

対処方法

リクエストが制限しきい値を超えた場合、対応する制限アクションが実行されます。ブロック、観察、JavaScriptチャレンジ、URLへのリダイレクト、カスタムページの応答がサポートされています。詳細な処置方法については、処置方法を参照してください。







ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック