Cloudflare のボット保護は、2 つの仕組みが補い合って動作します。Security Settings のトグルで設定する組み込み設定と、ボット管理フィールド を使って書く WAF カスタムルール です。どちらを使うべきかを把握すると、重複ルールを避け、セキュリティ設定を簡潔にできます。
次の機能は、Security Settings のトグルとドロップダウンで設定します。ルール式を書く必要はありません。
| 機能 | 内容 | 提供プラン |
|---|---|---|
| AI ボットのブロック | 自動更新のマネージドルールで、AI クローラー(GPTBot、ClaudeBot、Bytespider など)をブロックします | すべてのプラン |
| AI Labyrinth | 非準拠の AI クローラーを、生成コンテンツの迷路へ誘導します | すべてのプラン |
| マネージド robots.txt | AI クローラー向けの disallow ディレクティブを robots.txt の先頭に追加します |
すべてのプラン |
| Super Bot Fight Mode > Definitely automated | ボットスコア が 1 のトラフィックをブロックまたはチャレンジします | Pro、Business、Enterprise |
| Super Bot Fight Mode > Likely automated | ボットスコアが 2-29 のトラフィックをブロックまたはチャレンジします | Business、Enterprise |
| Verified bots | 信頼性の高いボット(Googlebot、Bingbot など)のマネージドカテゴリです | Pro、Business、Enterprise |
| 静的リソース保護 | ボットアクションの対象を静的ファイル種別まで広げます | Pro、Business、Enterprise |
| WordPress 向けの最適化 | WordPress のループバックリクエストをボット保護で許可します | Pro、Business、Enterprise |
| JavaScript detections | 軽量なスクリプトを挿入し、JavaScript を実行できないクライアントを特定します | すべてのプラン(Free では自動) |
ボット設定は、Cloudflare が新しいボットシグネチャと AI クローラーを特定すると自動で更新されます。カスタムルールは手動更新が必要です。ボット設定は カスタムルールの上限 に数えられず、式の誤りなくドメイン全体に一律適用されます。
カスタムルールは、組み込み設定ではできないことが必要なときに役立ちます。次のシナリオでは、ボット管理フィールド 付きの WAF カスタムルール が必要です。ボット管理フィールドは、Bot Management サブスクリプションがあるお客様が利用できます。
ボット設定はドメイン全体のトラフィックに適用されます。パスごとにボット対応を変えたい場合は、カスタムルールが必要です。たとえば、/login/ は /public/ より厳しく保護する、といった場合です。
ログインエンドポイントだけで、自動化の可能性が高いトラフィックをブロックします。
(cf.bot_management.score lt 30 and not cf.bot_management.verified_bot and http.request.uri.path eq "/login")Super Bot Fight Mode の Definitely automated と Likely automated は、固定のボットスコア区分(1 と 2-29)を使います。別のしきい値が必要な場合(例: スコア 20 未満のトラフィックをすべてチャレンジする)は、カスタムルールが必要です。
ボットスコアを、国、ASN、URI パス、JA3/JA4 フィンガープリント、ユーザーエージェントなど、ほかのリクエストフィールドと組み合わせる場合は、カスタムルールが必要です。ボット設定は複合条件に対応していません。
特定の ASN からの、自動化の可能性が高いトラフィックだけをチャレンジします。
(cf.bot_management.score lt 30 and not cf.bot_management.verified_bot and ip.src.asnum in {64496 65536})ボット設定で選べるアクションは Block、Managed Challenge、Allow です。
Log(適用前のルール検証)、Interactive Challenge、Skip(ほかのルールをバイパス)など、別のアクションが必要な場合は、カスタムルールが必要です。
アカウント乗っ取り や スクレイピング のパターンなど、特定のボットヒューリスティック検知に対して動作させるには、cf.bot_management.detection_ids フィールドを使うカスタムルールが必要です。ボット設定は、個別の Detection ID を公開しません。
ボットスコア、Verified bot の状態、JA3/JA4 フィンガープリントをオリジンサーバーへ送るには、Transform Rules(Managed Transforms を含む)または Snippets を使います。これらは組み込みのボット設定には含まれません。
カスタムルールは、Super Bot Fight Mode のマネージドルールより先に実行されます。カスタムルールが 終了アクション(Block や Managed Challenge など)を取ると、リクエストはボット設定に到達しません。
詳細は セキュリティ機能の相互運用 を参照してください。