コンテンツにスキップ

ルールセット、タグ、およびルールのオーバーライドを使用して管理されたルールセットをデプロイする

フェーズエントリーポイントのルールセットで、ルールセットオーバーライド、タグオーバーライド、およびルールオーバーライドの組み合わせを使用して、管理されたルールセットの実行をカスタマイズします。

  1. ルールを追加して、管理されたルールセットを実行するためのフェーズエントリーポイントルールセットを作成します。
  2. ルールセットオーバーライドを構成して、管理されたルールセット内のすべてのルールを無効にします。
  3. タグオーバーライドを構成して、特定のタグを持つルールのアクションを設定します。
  4. ルールオーバーライドを構成して、実行したいルールのアクションを設定します。

以下のリクエストは、ルールセットの更新操作を使用して、単一の PUT リクエストで次のことを実行します:

  • 管理されたルールセットを実行するために、http_request_firewall_managed フェーズエントリーポイントルールセットにルールを追加します。
  • カテゴリオーバーライドを使用して、wordpress および drupal タグを持つルールを有効にし、そのアクションを log に設定します。
  • 単一のルールを有効にするルールオーバーライドを追加します。

例: オーバーライドを使用してゾーンレベルで管理されたルールセットを実行する

この例では:

  • "id": "<MANAGED_RULESET_ID>" は、ゾーン({zone_id})に宛てたリクエストのために管理されたルールセットを実行するために、http_request_firewall_managed フェーズエントリーポイントルールセットにルールを追加します。
  • "enabled": false は、管理されたルールセット内のすべてのルールを無効にするためのルールセットレベルのオーバーライドを定義します。
  • "categories": [{"category": "wordpress", "action": "log", "enabled": true}, {"category": "drupal", "action": "log", "enabled": true}] は、wordpress または drupal タグを持つルールを有効にし、そのアクションを log に設定するためのタグレベルのオーバーライドを定義します。
  • "rules": [{"id": "<RULE_ID>", "action": "block", "enabled": true}] は、1つの個別のルールを有効にし、そのアクションを block に設定するためのルールレベルのオーバーライドを定義します。
Terminal window
curl --request PUT \
https://api.cloudflare.com/client/v4/zones/{zone_id}/rulesets/phases/http_request_firewall_managed/entrypoint \
--header "Authorization: Bearer <API_TOKEN>" \
--header "Content-Type: application/json" \
--data '{
"rules": [
{
"action": "execute",
"expression": "true",
"action_parameters": {
"id": "<MANAGED_RULESET_ID>",
"overrides": {
"enabled": false,
"categories": [
{
"category": "wordpress",
"action": "log",
"enabled": true
},
{
"category": "drupal",
"action": "log",
"enabled": true
}
],
"rules": [
{
"id": "<RULE_ID>",
"action": "block",
"enabled": true
}
]
}
}
}
]
}'

例: オーバーライドを使用してアカウントレベルで管理されたルールセットを実行する

この例では:

  • "id": "<MANAGED_RULESET_ID>" は、example.com に宛てたリクエストのために管理されたルールセットを実行するために、http_request_firewall_managed フェーズエントリーポイントルールセットにルールを追加します。
  • "enabled": false は、管理されたルールセット内のすべてのルールを無効にするためのルールセットレベルのオーバーライドを定義します。
  • "categories": [{"category": "wordpress", "action": "log", "enabled": true}, {"category": "drupal", "action": "log", "enabled": true}] は、wordpress または drupal タグを持つルールを有効にし、そのアクションを log に設定するためのタグレベルのオーバーライドを定義します。
  • "rules": [{"id": "<RULE_ID>", "action": "block", "enabled": true}] は、1つの個別のルールを有効にし、そのアクションを block に設定するためのルールレベルのオーバーライドを定義します。
Terminal window
curl --request PUT \
https://api.cloudflare.com/client/v4/accounts/{account_id}/rulesets/phases/http_request_firewall_managed/entrypoint \
--header "Authorization: Bearer <API_TOKEN>" \
--header "Content-Type: application/json" \
--data '{
"rules": [
{
"action": "execute",
"expression": "cf.zone.name eq \"example.com\" and cf.zone.plan eq \"ENT\"",
"action_parameters": {
"id": "<MANAGED_RULESET_ID>",
"overrides": {
"enabled": false,
"categories": [
{
"category": "wordpress",
"action": "log",
"enabled": true
},
{
"category": "drupal",
"action": "log",
"enabled": true
}
],
"rules": [
{
"id": "<RULE_ID>",
"action": "block",
"enabled": true
}
]
}
}
}
]
}'