API でシーケンス緩和を設定するには、シーケンスを選び、ルールの種類とアクションを決めてルールオブジェクトを組み立てます。
{
"id": "d4909253-390f-4956-89fd-92a5b0cd86d8",
"title": "<RULE_TITLE>",
"kind": "allow",
"action": "block",
"sequence": [
"0d9bf70c-92e1-4bb3-9411-34a3bcc59003",
"b704ab4d-5be0-46e0-9875-b2b3d1ab42f9"
],
"priority": 0,
"last_updated": "2023-07-24T12:06:51.796286Z",
"created_at": "2023-07-24T12:06:51.796286Z"
}このルールは、エンドポイント 0d9bf70c-92e1-4bb3-9411-34a3bcc59003 へのリクエストが、エンドポイント b704ab4d-5be0-46e0-9875-b2b3d1ab42f9 へのリクエストより先に来ることを強制します。
そうでない場合、エンドポイント b704ab4d-5be0-46e0-9875-b2b3d1ab42f9 へのリクエストはブロックされます。
フィールド名 |
説明 | 取りうる値 | 例 |
|---|---|---|---|
id |
ルールを識別する不透明な識別子です。 | UUID | "d4909253-390f-4956-89fd-92a5b0cd86d8" |
title |
ルールの識別に役立つ文字列です。 | 1〜50 文字 | "Allow checkout sequence" |
kind |
このルールの意味を定義します。block ルールはネガティブセキュリティモデルで、シーケンスを明示的に拒否できます。allow ルールはポジティブセキュリティモデルで、設定したシーケンス以外をすべて拒否します。 | block、allow |
"block" |
action |
ルールが一致したときに実行するファイアウォールアクションです。 | block、log |
"log" |
sequence |
このルールのシーケンスを構成するオペレーション(Endpoint Management から)を示します。現在サポートしているシーケンス長は 2 です。最初のオペレーションが開始エンドポイント、2 番目のオペレーションが終了エンドポイントになります。 | Endpoint Management の有効なオペレーション ID を 2 つ含む配列 | ["0d9bf70c-92e1-4bb3-9411-34a3bcc59003", "b704ab4d-5be0-46e0-9875-b2b3d1ab42f9"] |
priority |
ほかのすべてのルールに対する、このルールの優先順位を示します。priority の値が大きいルールほど先に評価されます。2 つのルールの優先度が同じ場合は、追加された順に評価されます。 |
有効な整数 | 10 |
last_updated |
このルールが最後に変更された日時です。 | 日付文字列 | 2023-05-02T12:06:51.796286Z |
created_at |
このルールが作成された日時です。 | 日付文字列 | 2023-05-02T12:06:51.796286Z |
エンドポイントのオペレーション ID は、Endpoint Management でスキーマをエクスポートするか、API で確認できます。
GET コマンドでルールを一覧します。
curl "https://api.cloudflare.com/client/v4/zones/{zone_id}/api_gateway/seqrules"POST コマンドでルールを 1 件作成します。
既存のすべてのルールに、ルールを 1 件追加します。priority を使って、ほかのルールの間、前、または後に配置できます。
レスポンスには、書き込まれたルールとその ID が反映されます。ルールに問題がある場合は、該当箇所を示す json パス付きの適切なエラーメッセージが返されます。
curl "https://api.cloudflare.com/client/v4/zones/{zone_id}/api_gateway/seqrules/rules" \
--header "Content-Type: application/json" \
--data '{
"title": "string",
"kind": "block",
"action": "block",
"sequence": [
"0d9bf70c-92e1-4bb3-9411-34a3bcc59003",
"b704ab4d-5be0-46e0-9875-b2b3d1ab42f9"
],
"priority": 0
}'PUT コマンドで新しいルールを一括設定します。
既存のルールは上書きされ、本文で指定したルールに置き換わります。ルールに空の配列を指定すると、すべてのルールが削除されます。
レスポンスには、書き込まれたルールとその ID が反映されます。ルールに問題がある場合は、該当箇所を示す json パス付きの適切なエラーメッセージが返されます。
curl --request PUT "https://api.cloudflare.com/client/v4/zones/{zone_id}/api_gateway/seqrules" \
--header "Content-Type: application/json" \
--data '{
"rules": [
{
"title": "<RULE_TITLE>",
"kind": "block",
"action": "block",
"sequence": [
"0d9bf70c-92e1-4bb3-9411-34a3bcc59003",
"b704ab4d-5be0-46e0-9875-b2b3d1ab42f9"
],
"priority": 0
}
]
}'ルール ID を指定した DELETE コマンドでルールを削除します。
curl --request DELETE "https://api.cloudflare.com/client/v4/zones/{zone_id}/api_gateway/seqrules/rules/d4909253-390f-4956-89fd-92a5b0cd86d8"