コンテンツにスキップ

APIの例

Rulesets APIを使用して、API経由でカスタムルールを構成します。

skipアクションは、スキップしたいセキュリティ機能や製品に応じて、さまざまなスキップオプションをサポートしています。

続行する前に

このページには、カスタムルールのさまざまなスキップルールシナリオの例が含まれています。以下の点に留意してください。

  • {zone_id}の値は、ルールを追加したいゾーンのIDです。

  • {ruleset_id}の値は、http_request_firewall_customフェーズのエントリポイントルールセットのIDです。このルールセットIDを取得する方法の詳細については、ルールセットの一覧と表示を参照してください。このページのAPI例は、ゾーンルールセットルールの作成操作を使用して、既存のルールセットにスキップルールを追加します。

    ただし、エントリポイントルールセットはまだ存在しない場合があります。この場合、ゾーンルールセットの作成操作を呼び出して、スキップルールを持つエントリポイントルールセットを作成します。ルールセットの作成の例を参照してください。

  • 各例には1つのアクションパラメータのみが含まれていますが、rulesetphases、およびproductsアクションパラメータを同時に指定することで、同じルール内で複数のスキップオプションを使用できます。

現在のルールセットの残りのルールをスキップする

この例では、ゾーンルールセットルールの作成操作を呼び出して、IDが{ruleset_id}の既存のhttp_request_firewall_customフェーズエントリポイントルールセットにスキップルールを追加します。このルールは、ルール式に一致するリクエストの現在のルールセット内のすべての残りのルールをスキップします。

Terminal window
curl https://api.cloudflare.com/client/v4/zones/{zone_id}/rulesets/{ruleset_id}/rules \
--header "Authorization: Bearer <API_TOKEN>" \
--header "Content-Type: application/json" \
--data '{
"action": "skip",
"action_parameters": {
"ruleset": "current"
},
"expression": "http.request.uri.path contains \"/skip-current-ruleset/\"",
"description": ""
}'

フェーズをスキップする

この例では、ゾーンルールセットルールの作成操作を呼び出して、IDが{ruleset_id}の既存のhttp_request_firewall_customフェーズエントリポイントルールセットにルールを追加します。このルールは、ルール式に一致するリクエストのhttp_ratelimitフェーズをスキップします。

Terminal window
curl https://api.cloudflare.com/client/v4/zones/{zone_id}/rulesets/{ruleset_id}/rules \
--header "Authorization: Bearer <API_TOKEN>" \
--header "Content-Type: application/json" \
--data '{
"action": "skip",
"action_parameters": {
"phases": [
"http_ratelimit"
]
},
"expression": "http.request.uri.path contains \"/skip-phase/\"",
"description": ""
}'

スキップできるフェーズのリストについては、利用可能なスキップオプションを参照してください。

フェーズをスキップし、一致するリクエストのログを記録しない

この例では、ゾーンルールセットルールの作成操作を呼び出して、次のルールを追加します。

  • http_ratelimitフェーズをスキップする
  • 現在のルールのイベントログを無効にする
Terminal window
curl https://api.cloudflare.com/client/v4/zones/{zone_id}/rulesets/{ruleset_id}/rules \
--header "Authorization: Bearer <API_TOKEN>" \
--header "Content-Type: application/json" \
--data '{
"action": "skip",
"action_parameters": {
"phases": [
"http_ratelimit"
]
},
"logging": {
"enabled": false
},
"expression": "http.request.uri.path contains \"/disable-logging/\"",
"description": ""
}'

スキップルールに一致するリクエストのログを無効にする方法については、利用可能なスキップオプション: ロギングを参照してください。

セキュリティ製品をスキップする

この例では、ゾーンルールセットルールの作成操作を使用して、ルール式に一致するリクエストのゾーンロックダウンおよびユーザーエージェントブロッキング製品をスキップするルールを追加します。

Terminal window
curl https://api.cloudflare.com/client/v4/zones/{zone_id}/rulesets/{ruleset_id}/rules \
--header "Authorization: Bearer <API_TOKEN>" \
--header "Content-Type: application/json" \
--data '{
"action": "skip",
"action_parameters": {
"products": [
"zoneLockdown",
"uaBlock"
]
},
"expression": "http.request.uri.path contains \"/skip-products/\"",
"description": ""
}'

スキップできる製品のリストについては、利用可能なスキップオプションを参照してください。