コンテンツにスキップ

例外を作成する

例外を使用して、管理されたルールセットの一部のルールの実行をスキップします。例外はスキップルールとも呼ばれ、ルールのアクションは skip です。

例外の設定には、スキップ条件を定義する expression が含まれ、これらの条件下でスキップするルールまたは管理されたルールセットが指定されます。

例外の種類

例外は、次のいずれかの動作を持つことができます(優先度が高い順):

例外は特定のコンテキスト(ゾーンレベルまたはアカウントレベル)で定義され、そのコンテキストにのみ適用されます。たとえば、アカウントレベルで残りのすべてのルールをスキップする例外を定義した場合、ゾーンレベルのエントリポイントルールセットで定義されたルールは引き続き評価されます。

複数の例外の式に一致するものがある場合、Cloudflare は最も優先度の高い例外を考慮します。

例外は、後にリストされた管理されたルールセットを実行するルールにのみ適用されます。エントリポイントルールセットのルールリストの最後に例外を追加しても、何もスキップされません。

残りのすべてのルールをスキップ

エントリポイントルールセット内の残りのすべてのルールをスキップするには、skip アクションを持つルールを作成し、action_parameters オブジェクトに "ruleset": "current" を含めます。

ルール定義の例:

{
"expression": "<RULE_EXPRESSION>",
"action": "skip",
"action_parameters": {
"ruleset": "current"
}
}

残りのすべてのルールをスキップすることは、現在のコンテキスト(アカウントまたはゾーン)のルールにのみ影響します。たとえば、アカウントレベルのフェーズエントリポイントルールセットに skip アクションを持つルールを追加しても、ゾーンレベルのフェーズエントリポイントルールセットで定義されたルールには影響しません。これらのゾーンレベルのルールは引き続き評価されます。

完全な例については、WAFドキュメントを参照してください。

1つ以上の管理されたルールセットをスキップ

1つ以上の管理されたルールセットをスキップするには、action_parameters オブジェクトに rulesets フィールドを含む skip アクションを持つルールを作成します。rulesets フィールドには、スキップしたい管理されたルールセットのIDのリストを含める必要があります。

ルール定義の例:

{
"expression": "<RULE_EXPRESSION>",
"action": "skip",
"action_parameters": {
"rulesets": ["<MANAGED_RULESET_1_ID>", "<MANAGED_RULESET_2_ID>"]
}
}

完全な例については、WAFドキュメントを参照してください。

1つ以上の管理されたルールセットのルールをスキップ

1つ以上の管理されたルールセットのルールをスキップするには、action_parameters オブジェクトに rules オブジェクトを含む skip アクションを持つルールを作成します。rules オブジェクトには、1つ以上の管理されたルールセットのIDをキーとして含め、それぞれのキーの値としてスキップするルールのリストを含める必要があります。

管理されたルールセット 1 のルール AB、および管理されたルールセット 2 のルール X をスキップするルール定義の例:

{
"expression": "<RULE_EXPRESSION>",
"action": "skip",
"action_parameters": {
"rules": {
"<MANAGED_RULESET_1_ID>": ["<RULE_A_ID>", "<RULE_B_ID>"],
"<MANAGED_RULESET_2_ID>": ["<RULE_X_ID>"]
}
}
}

rules オブジェクト内のルールは、指定された管理されたルールセットに属している必要があります。そうでない場合、エラーが発生します。

完全な例については、WAFドキュメントを参照してください。


追加の注意事項

例外は オーバーライド よりも優先されます。

残りのすべてのルールをスキップする例外を定義した場合、そのルールの式は評価されません。

管理されたルールセットのルールをスキップする例外を定義した場合、管理されたルールセットを実行するルールの式は評価され、管理されたルールセットのルールはその特定のルールを除いて実行されます。