全部產品
Search
文件中心

Web Application Firewall:CreateDefenseRule

更新時間:Sep 09, 2026

建立 Web 核心防護規則。

調試

您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。

調試

授權資訊

下表是API對應的授權資訊,可以在RAM權限原則語句的Action元素中使用,用來給RAM使用者或RAM角色授予調用此API的許可權。具體說明如下:

  • 操作:是指具體的許可權點。

  • 存取層級:是指每個操作的存取層級,取值為寫入(Write)、讀取(Read)或列出(List)。

  • 資源類型:是指操作中支援授權的資源類型。具體說明如下:

    • 對於必選的資源類型,用前面加 * 表示。

    • 對於不支援資源級授權的操作,用全部資源表示。

  • 條件關鍵字:是指雲產品自身定義的條件關鍵字。

  • 關聯操作:是指成功執行操作所需要的其他許可權。操作者必須同時具備關聯操作的許可權,操作才能成功。

操作

存取層級

資源類型

條件關鍵字

關聯操作

yundun-waf:CreateDefenseRule

create

*全部資源。

*

  • acs:ResourceGroupId

請求參數

名稱

類型

必填

描述

樣本值

InstanceId

string

WAF 執行個體 ID。

說明

您可以透過呼叫 DescribeInstance 介面檢視您目前的 WAF 執行個體 ID。

waf_v2_public_cn-****

TemplateId

integer

要建立的防護規則之防護範本 ID。

說明

僅當 DefenseTypetemplate 時,需要傳入此參數。 同一防護範本內可建立的規則數量存在上限,具體限制請參閱規則數量限制。當規則數量已達上限時,可透過呼叫 CreateDefenseTemplate 介面建立新的防護範本。也可以透過 ModifyDefenseRule 介面修改已有的規則。

1122

DefenseScene

string

要建立的 WAF 防護場景。

當防護規則類型 DefenseTypetemplate 時,取值:

  • waf_group:表示基礎防護。

  • waf_base:表示新版 Web 核心防護。

  • antiscan:表示掃描防護。

  • ip_blacklist:表示 IP 黑名單。

  • custom_acl:表示自訂規則。

  • whitelist:表示白名單。

  • region_block:表示區域封鎖。

  • custom_response:表示舊版自訂回應。

  • cc:表示 CC 防護。

  • tamperproof:表示網頁防篡改。

  • dlp:表示資訊洩漏防護。

  • spike_throttle:表示洪峰限流。

  • bot_manager: 表示 BOT 管理。

當防護規則類型 DefenseTyperesource 時,取值:

  • account_identifier:表示帳號提取。

  • custom_response:表示新版自訂回應。

  • waf_codec:表示解碼。

  • websdk:表示 WebSDK 整合。

當防護規則類型 DefenseTypeglobal 時,取值:

  • regular_custom:表示自訂正規表示式。

  • address_book:表示通訊錄。

  • custom_response:表示新版自訂回應。

說明

全域設定的自訂回應,使用者可在防護物件或者規則下引用,當使用者在不同維度引用設定了自訂回應規則時,真實生效邏輯為:規則級別 > 防護物件級別 > 預設頁面。

waf_group

Rules

string

規則設定內容,以一系列參數建構的 JSON 格式轉化成字串。

說明

根據所指定的防護規則類型DefenseScene)不同,具體涉及的參數有所不同。詳細資訊,請參閱防護規則參數描述

waf_group

ResourceManagerResourceGroupId

string

是否開啟 DryRun 預檢模式。如果不輸入此參數,表示發起正常請求。取值:

  • true:表示發起預檢請求,僅檢查請求是否滿足執行條件,不執行請求指定的操作。預檢未通過時返回相應錯誤碼;預檢通過時返回錯誤碼 Defense.Control.DryRunOperation。

  • false:表示發起正常請求;檢查通過後執行請求指定的操作。

false

DefenseType

string

阿里雲資源群組 ID。

枚舉值:

  • template :

    (預設)表示範本防護規則。

  • resource :

    表示防護物件維度的規則。

  • global :

    表示全域維度的規則。

rg-acfm***q

RegionId

string

防護規則類型。

枚舉值:

  • template :

    (預設)表示範本防護規則。

  • resource :

    表示防護物件維度的規則。

  • global :

    表示全域維度的規則。

template

Resource

string

WAF 執行個體所屬地域。取值:

  • cn-hangzhou:表示中國內地。

  • ap-southeast-1:表示非中國內地。

cn-hangzhou

建立規則對應的防護物件。

說明

僅當 DefenseTyperesource 時,需要傳入此參數。

sec****-waf

防護規則參數描述

規則數量限制

同一防護範本內,各防護場景(DefenseScene)可建立的規則數量存在上限。下列場景為固定條數,其餘場景的上限與 WAF 執行個體版本相關,具體請參閱版本功能對比

防護場景DefenseScene規則數量上限說明
基礎防護waf_group3每種防護規則類型(protectionType)各 1 條。
新版 Web 核心防護waf_base1
掃描防護antiscan3每種掃描防護子類型(protectionType)各 1 條,即高頻掃描封鎖、目錄遍歷封鎖、掃描工具封鎖。
區域封鎖region_block1
舊版本自訂回應custom_response1DefenseTypetemplate 時的舊版本自訂回應有此限制。新版本自訂回應請參閱版本功能對比
CC 防護cc1
BOT 管理bot_manager場景化規則中每種規則標籤(botRuleDetail.ruleKey)各 1 條。
解碼waf_codec1
帳號提取account_identifier1
WebSDK 整合websdk1
說明

當防護規則類型 DefenseTypetemplate 時且目標範本中該場景的規則數量已達上限時,建立會失敗,此時可透過呼叫 CreateDefenseTemplate 介面建立新的防護範本。也可以透過 ModifyDefenseRule 介面修改已有的規則。

範本防護規則(template

當防護規則類型 DefenseTypetemplate 時,具體的規則設定內容如下。

基礎防護規則(waf_group

參數描述

名稱類型是否必選範例值描述
statusInteger必選1防護規則狀態。此參數僅用於建立防護規則,修改防護規則狀態時使用 ModifyDefenseRuleStatus 介面的 RuleStatus 參數。取值:
- 0:表示關閉。
- 1(預設):表示開啟。




actionString必選block防護規則動作。取值:
- block:表示攔截。
- monitor:表示觀察。




policyIdLong可選1012防護規則群組 ID。預設為中等規則群組 1012。
protectionTypeString可選sema防護規則類型。取值:
- regular(預設):表示正規表示式防護。
- sema:表示語義防護。




configString可選{"nonInjectionSql":1}自訂設定資訊,以 JSON 字串格式表示。具體設定資訊,請參閱 config 詳細設定。

config 詳細設定

  • protectionType 設定為 sema 時(基礎防護規則設定為語義防護)

名稱類型是否必選範例值描述
nonInjectionSqlInteger必選1非注入型攻擊偵測狀態。取值:
- 0:表示關閉。
- 1(預設):表示開啟。




範例

{
    "DefenseScene": "waf_group",
    "TemplateId": 322,
    "InstaneId": "waf_cn****",
    "Rules": "[{\"status\":1,\"policyId\":1012,\"action\":\"block\"},{\"status\":1,\"action\":\"block\",\"protectionType\":\"sema\",\"config\":\"{\\\"nonInjectionSql\\\":1}\"}]"
}

新版 Web 核心防護規則(waf_base

參數描述

名稱類型是否必選範例值描述
autoUpdateBoolean必選true自動更新,取值:
- true:表示開啟自動更新。
- false:表示關閉自動更新。




configArray必選[{"ruleType":"system","ruleDetail":[{"ruleId":13000412,"ruleStatus":1,"ruleAction":"block"}]}]需要修改的規則設定,具體設定資訊,請參閱 config 詳細設定。
重要 您可以透過 DescribeBaseSystemRules 介面查詢該範本的系統防護規則設定;透過 DescribeDefenseRules 介面查詢該範本的自訂正規表示式規則設定。

config 詳細設定

名稱類型是否必選範例值描述
ruleTypeString必選system規則類型,取值:
- system:基礎防護中的系統規則。
- custom: 基礎防護中的自訂正規表示式規則




ruleBatchOperationConfigString可選default批次修改規則操作,該欄位非空時,RuleDetail 欄位必須為空。取值:
- default:恢復預設。
- all_on:所有規則狀態開啟。
- all_off:所有規則狀態關閉。
- all_block:所有規則動作攔截。
- all_monitor:所有規則動作觀察。













ruleDetailArray可選[{"ruleId":13000412,"ruleStatus":1,"ruleAction":"block"}]]需要修改的規則設定。其中:
- ruleId:規則 ID。
- ruleStatus:規則狀態。
- ruleAction:規則動作。







範例

{
    "DefenseScene": "waf_base",
    "TemplateId": 322,
    "InstaneId": "waf_cn****",
    "Rules": "[{\"autoUpdate\":true,\"config\":[{\"ruleType\":\"system\",\"ruleDetail\":[{\"ruleId\":13000412,\"ruleStatus\":1,\"ruleAction\":\"block\"}]}]}]"
}

掃描防護規則(antiscan

參數描述

名稱類型是否必選範例值描述
protectionTypeString必選highfreq掃描防護規則子類型。取值:
- highfreq:表示高頻掃描封鎖。
- dirscan:表示目錄遍歷封鎖。
- scantools:表示掃描工具封鎖。







statusInteger必選1防護規則狀態。此參數僅用於建立防護規則,修改防護規則狀態時使用 ModifyDefenseRuleStatus 介面的 RuleStatus 參數。取值:
- 0:表示關閉。
- 1(預設):表示開啟。




actionString必選block防護規則動作。取值:
- block:表示攔截。
- monitor:表示觀察。




actionExternalJSON可選{"responseRuleId":123444}防護規則動作的擴充設定,僅新版自訂回應支援設定。當 actionblock 時,可以指定自訂攔截頁面。
configString可選{"target":"remote_addr","interval":60,"ttl":180,"count":20}自訂設定資訊,以 JSON 字串格式進行描述。具體設定資訊,請參閱 config 詳細設定

config 詳細設定

  • protectionType 設定為 highfreq 時(掃描防護規則設定為高頻掃描封鎖)

名稱類型是否必選範例值描述
targetString必選remote_addr統計物件類型。取值:
- remote_addr(預設):表示 IP。
- cookie.acw_tc:表示工作階段。
- header:表示自訂 Header。選擇自訂 Header 時,必須在 subkey 參數中填寫需要統計的 Header 內容。
- queryarg:表示自訂參數。選擇自訂參數時,必須在 subkey 參數中填寫需要統計的自訂參數名稱。
- cookie:表示自訂 Cookie。選擇自訂 Cookie 時,必須在 subkey 參數中填寫需要統計的 Cookie 內容。













subKeyString可選abc統計物件的子特徵。當 target 參數值為 cookieheaderqueryarg 時,必須在 subkey 參數中填寫對應的資訊。
intervalInteger可選60偵測時長,單位為秒。預設為 60 秒。
取值範圍為:5~1800 秒。

ttlInteger可選1800封鎖時長,單位為秒。預設為 1800 秒。
取值範圍為:60~86400 秒。

countInteger可選20基礎防護規則觸發最大次數。預設為 20 次。
取值範圍為:3~50000 次。

ruleIdCountInteger可選2觸發的最大規則數。預設為 2 條。
取值範圍為:1~50 條。

  • protectionType 設定為 dirscan 時(掃描防護規則設定為目錄遍歷封鎖)

名稱類型是否必選範例值描述
targetString必選remote_addr統計和封鎖物件。取值:
- remote_addr(預設):表示 IP。
- cookie.acw_tc:表示工作階段。
- header:表示自訂 Header。
- queryarg:表示自訂參數。
- cookie:表示自訂 Cookie。













subKeyString可選1統計和封鎖物件的子特徵。僅 target 設定為 header、queryarg、cookie 時,設定此資訊。
intervalInteger可選60偵測時長,單位為秒。預設為 60 秒。
取值範圍為:5~1800 秒。

ttlInteger可選1800封鎖時長,單位為秒。預設為 1800 秒。
取值範圍為:60~86400 秒。

countInteger可選20基礎防護規則觸發最大次數。預設為 20 次。
取值範圍為:3~50000 次。

weightFloat可選2404 回應碼百分比。預設為 0.7。
取值範圍為:0.01~1.0,精確到小數點後兩位。

uriNumInteger可選2不存在的最大目錄數。預設為 50 個。
取值範圍為:2~50000 個。

範例

{
    "InstanceId": "waf_v2_public_****",
    "TemplateId": 2222,
    "DefenseScene": "antiscan",
    "Rules": "[{\"protectionType\":\"scantools\",\"action\":\"block\",\"status\":1},{\"protectionType\":\"dirscan\",\"status\":1,\"action\":\"block\",\"config\":\"{\\\"target\\\":\\\"remote_addr\\\",\\\"interval\\\":10,\\\"ttl\\\":1800,\\\"weight\\\":0.7,\\\"uriNum\\\":50,\\\"count\\\":50}\"},{\"protectionType\":\"highfreq\",\"status\":1,\"action\":\"block\",\"config\":\"{\\\"target\\\":\\\"remote_addr\\\",\\\"interval\\\":60,\\\"ttl\\\":1800,\\\"count\\\":20,\\\"ruleIdCount\\\":2}\"}]"
}

IP 黑名單規則(ip_blacklist

參數描述

名稱類型是否必選範例值描述
nameString必選iptestIP 黑名單規則名稱。長度為 1~255 個字元,可以包含中文、英文、數字、底線(_)、半形句號(.)或者連字號(-)。
statusInteger必選1防護規則狀態。此參數僅用於建立防護規則,修改防護規則狀態時使用 ModifyDefenseRuleStatus 介面的 RuleStatus 參數。取值:
- 0:表示關閉。
- 1(預設):表示開啟。




actionString必選block防護規則動作。取值:
- block:表示攔截。
- monitor:表示觀察。




actionExternalJSON可選{"responseRuleId":123444}防護規則動作的擴充設定,僅新版自訂回應支援設定。當 actionblock 時,可以指定自訂攔截頁面。
remoteAddrArray必選["1.1.XX.XX", "3.1.XX.XX/24"]要加入的 IP 黑名單列表。使用 ["ip1","ip2",……] 格式表示。

範例

{
    "InstanceId": "waf_v2_public_****",
    "TemplateId": 2222,
    "DefenseScene": "ip_blacklist",
    "Rules": "[{\"name\":\"iptest1\",\"remoteAddr\":[\"1.1.1.2\",\"3.3.3.3/24\"],\"action\":\"monitor\",\"status\":1},{\"name\":\"iptest2\",\"remoteAddr\":[\"4.4.4.4\",\"5.5.5.5/32\"],\"action\":\"block\",\"status\":1}]"
}

自訂規則(custom_acl

參數描述

名稱類型是否必選範例值描述
nameString必選iptest自訂 ACL 規則名稱。長度為 1~255 個字元,可以包含中文、英文、數字、底線(_)、半形句號(.)或者連字號(-)。
statusInteger必選1防護規則狀態。此參數僅用於建立防護規則,修改防護規則狀態時使用 ModifyDefenseRuleStatus 介面的 RuleStatus 參數。取值:
- 0:表示關閉。
- 1(預設):表示開啟。




actionString必選block防護規則動作。取值:
- block:表示攔截。
- monitor:表示觀察。
- js:表示 JS 驗證。
- captcha:表示滑塊驗證。
- captcha_strict:表示嚴格滑塊驗證。
說明 自訂 ACL 支援的防護規則動作,請以 WAF 主控台中展示的自訂規則動作為準。
















actionExternalJSON可選{"responseRuleId":123444}防護規則動作的擴充設定,僅新版自訂回應支援設定。當 actionblock 時,可以指定自訂攔截頁面,actioncaptcha/ captcha_strict 時,可以指定自訂滑塊驗證頁面。
conditionsArray必選[{"key":"IP","opValue":"eq","values":"11.XX.XX.1"},{"key":"Header","subKey":"abc","opValue":"contains","values":"test"}]ACL 的流量特徵,以 JSON 字串格式進行描述,支援填寫最多五個匹配條件。具體設定資訊,請參閱防護規則參數設定說明中 conditions 設定說明。
ccStatusInteger必選1是否開啟限速。取值:
- 0:表示關閉限速。
- 1:表示開啟限速。




ratelimitJSON可選{"target":"remote_addr","interval":5,"threshold":2,"ttl":1800,"status":{"code":404,"count":2}}限速詳細設定,以 JSON 字串格式進行描述,僅 ccStatus 設定為 1 時,設定此資訊。具體設定資訊,請參閱防護規則參數設定說明中 ratelimit 詳細設定。
effectString可選rule設定限速生效範圍,僅 ccStatus 設定為 1 時,設定此資訊。取值:
- service:表示生效物件為防護物件。
- rule:表示生效物件為單一規則。




grayStatusInteger可選1是否開啟規則的灰度生效。取值:
- 0(預設):表示關閉灰度。
- 1:表示開啟灰度。




grayConfigJSON可選{"grayTarget":"header","grayRate":80,"graySubKey":"test"}規則生效的灰度設定,以 JSON 字串格式進行描述,僅 grayStatus 設定為 1 時,設定此資訊。具體設定資訊,請參閱防護規則參數設定說明中 grayConfig 詳細設定。
timeConfigJSON可選{"timeScope":"period","timeZone":8,"timePeriods":[{"start":1758771729787,"end":1758816000000}]}規則生效的排程設定,以 JSON 字串格式進行描述。具體設定資訊,請參閱防護規則參數設定說明中 timeConfig 詳細設定。

範例

{
    "InstanceId": "waf_v2_public_****",
    "TemplateId": 6242,
    "DefenseScene": "custom_acl",
    "Rules":"[{\"name\":\"acl_test\",\"action\":\"block\",\"conditions\":[{\"key\":\"URL\",\"opValue\":\"contain\",\"values\":\"abc\"}],\"ratelimit\":{\"target\":\"remote_addr\",\"interval\":5,\"threshold\":2,\"ttl\":1800,\"status\":{\"code\":404,\"count\":2}},\"ccStatus\":1,\"effect\":\"rule\",\"status\":1,\"origin\":\"custom\",\"timeConfig\":{\"timeScope\":\"cycle\",\"timeZone\":8,\"weekTimePeriods\":[{\"day\":\"1\",\"dayPeriods\":[{\"start\":0,\"end\":51644084}]},{\"day\":\"1,2,5\",\"dayPeriods\":[{\"start\":0,\"end\":42928908}]}]},\"grayStatus\":1,\"grayConfig\":{\"grayRate\":80,\"graySubKey\":\"test\",\"grayTarget\":\"header\"}}]"
}

白名單規則(whitelist

參數描述

名稱類型是否必選範例值描述
nameString必選whitelistTest白名單規則名稱。長度為 1~255 個字元,可以包含中文、英文、數字、底線(_)、半形句號(.)或者連字號(-)。
statusInteger必選1防護規則狀態。此參數僅用於建立防護規則,修改防護規則狀態時使用 ModifyDefenseRuleStatus 介面的 RuleStatus 參數。取值:
- 0:表示關閉。
- 1(預設):表示開啟。




conditionsArray必選[{"key":"IP","opValue":"eq","values":"11.XX.XX.1"},{"key":"Header","subKey":"abc","opValue":"contains","values":"test"}]白名單的流量特徵,以 JSON 字串格式進行描述,支援填寫最多五個匹配條件。具體設定資訊,請參閱防護規則參數設定說明中 conditions 設定說明。
tagsArray必選["waf", "regular"]白名單作用模組列表,使用 ["XX1", "XX2",……] 格式。取值:
- waf:表示全部模組。
- customrule_rule:表示自訂規則特定規則。
- customrule:表示自訂規則。
- blacklist:表示 IP 黑名單。
- blacklist_rule:表示 IP 黑名單特定規則。
- antiscan:表示掃描防護。
- regular:表示基礎防護規則。
- regular_rule:表示基礎防護特定正規表示式規則。
- regular_type:表示基礎防護特定正規表示式規則類型。
- regular_field:表示基礎防護特定欄位。
- major_protection:表示重保場景防護。
- cc:表示 CC 防護。
- region_block:表示區域封鎖。
- antibot_scene:表示 BOT 場景防護。
- antibot_scene_rule:表示 BOT 場景防護特定規則 ID。
- antibot_scene_label:表示 BOT 場景防護特定規則類型。
- dlp:表示資訊洩漏防護。
- tamperproof:表示網頁防篡改。
- spike_throttle:表示洪峰限流防護。























































regularRulesArray可選[ "111111", "222222" ]不偵測正規表示式規則 ID 列表,使用 ["XX1", "XX2",……] 格式。僅白名單作用模組設定為基礎防護特定正規表示式規則(tags 參數取值為 regular_rule)時,設定此參數。
regularTypesArray可選[ "xss", "css" ]不偵測正規表示式規則類型列表,使用 ["XX1", "XX2",……] 格式。僅白名單作用模組設定為 Web 應用程式正規表示式類型(tags 參數取值為 regular_type)時,設定此參數。取值:
- sqli:表示 SQL 注入。
- xss:表示跨站指令碼。
- code_exec:表示程式碼執行。
- crlf:表示 CRLF。
- lfilei:表示本機檔案包含。
- rfilei:表示遠端檔案包含。
- webshell:表示 WebShell。
- csrf:表示 CSRF。
- other:表示其他。

























regularFieldsArray可選[{"key":"URL"},{"key":"Header","subKey":"abc"}]基礎防護不偵測欄位列表,以 JSON 字串格式進行描述,支援填寫最多五個匹配條件。具體設定資訊,請參閱 regularFields 詳細設定。僅白名單作用模組設定為基礎防護特定欄位(tags 參數取值為 regular_field)時,設定此參數。
customRulesArray可選[ "111111", "222222" ]不偵測自訂規則 ID 列表,使用 ["XX1", "XX2",……] 格式。僅白名單作用模組設定為自訂規則特定規則(tags 參數取值為 customrule_rule)時,設定此參數。
blacklistRulesArray可選[ "111111", "222222" ]不偵測 IP 黑名單規則 ID 列表,使用 ["XX1", "XX2",……] 格式。僅白名單作用模組設定為 IP 黑名單特定規則(tags 參數取值為 blacklist_rule)時,設定此參數。
botRulesArray可選[ "111111", "222222" ]不偵測 BOT 場景防護規則 ID 列表,使用 ["XX1", "XX2",……] 格式。僅白名單作用模組設定為 BOT 場景防護特定規則 ID(tags 參數取值為 antibot_scene_rule)時,設定此參數。
botLablesArray可選[ "abc", "cdcc" ]不偵測 BOT 場景防護規則類型列表,使用 ["XX1", "XX2",……] 格式。僅白名單作用模組設定為 BOT 場景防護特定規則類型(tags 參數取值為 antibot_scene_label)時,設定此參數。您可以透過呼叫 DescribeBotRuleLabels 介面檢視 BOT 的規則類型資訊。

regularFields 詳細設定

名稱類型是否必選範例值描述
keyString必選URL不偵測欄位。取值:
- URL-All:表示 URI 相關的全部欄位。
- URL:表示 URI 指定欄位。
- URLPath:表示 URI Path。
- Query-All:表示 Query 相關的全部欄位。
- Query-Arg:表示 Query 指定參數。
- Cookie-All:表示 Cookie 相關的全部欄位。
- Cookie-Exact:表示指定 Cookie Name。
- Header-All:表示 Header 相關的全部欄位。
- Header:表示 Header 指定欄位。
- Body-All:表示 Body 所有參數。




























subKeyString可選abc指定欄位。當不偵測欄位(key)取值為 URLPathQuery-ArgCookie-ExactHeader,需要設定此參數。

範例

{
    "InstanceId": "waf_v2_public_****",
    "TemplateId": 9242,
    "DefenseScene": "whitelist",
    "Rules":"[{\"name\":\"whitelistTest\",\"tags\":[\"regular_rule\",\"customrule\"],\"status\":1,\"origin\":\"custom\",\"conditions\":[{\"key\":\"URL\",\"opValue\":\"contain\",\"values\":\"/test\"},{\"key\":\"Header\",\"opValue\":\"eq\",\"values\":\"ffff\",\"subKey\":\"abc\"}],\"regularRules\":[\"123444\",\"444444\"]}]"
}

自訂回應規則(custom_response

參數描述

名稱類型是否必選範例值描述
responseTypeString必選response_block自訂回應的類型。取值 response_block,表示攔截回應。
statusInteger必選1防護規則狀態。此參數僅用於建立防護規則,修改防護規則狀態時使用 ModifyDefenseRuleStatus 介面的 RuleStatus 參數。取值:
- 0:表示關閉。
- 1(預設):表示開啟。




configString必選{"responseCode":400,"responseHeaders":[{"key":"custom","value":"123"},{"key":"aaa","value":"2223"}],"responseContent":"HelloWorld"}自訂設定資訊,以 JSON 字串格式進行描述。具體設定資訊,請參閱 config 詳細設定

config 詳細設定

名稱類型是否必選範例值描述
responseCodeInteger必選400指定回應碼。
responseHeadersArray可選[{"key":"custom","value":"123"},{"key":"aaaa","value":"2223"}]自訂回應標頭列表,以 JSON 字串格式進行描述。key 為 header 的欄位,value 為 header 的值。
responseContentString必選helloworld自訂回應的內容。

範例

{
    "InstanceId": "waf_v2_public_****",
    "TemplateId": 2841,
    "DefenseScene": "custom_response",
    "Rules":"[{\"responseType\":\"response_block\",\"config\":\"{\\\"templateName\\\":\\\"aaa\\\",\\\"responseCode\\\":\\\"400\\\",\\\"responseContent\\\":\\\"helloWorld\\\",\\\"responseHeaders\\\":[{\\\"key\\\":\\\"test1\\\",\\\"value\\\":\\\"abc\\\"}]}\",\"status\":1}]"
}

範例

{
  "name": "ruleTest",
  "detectType": "sqli",
  "riskLevel": "strict",
  "condition": [{"key": "FileName","opValue": "eq","values": "test"}]
}

地址簿(address_book

參數描述

名稱類型是否必選範例值描述
nameString必選bookTest地址簿名稱。長度為 1~255 個字元,可以包含中文、英文、數字、底線(_)、半形句號(.)或連字號(-)。
valueTypeString必選ip地址簿類型。取值:
- ip:表示 IP 類型地址簿。

descriptionString可選addressbookTest地址簿描述。

範例

{
  "name": "bookTest",
  "valueType": "ip",
  "description": "addressbookTest"
}

自訂回應規則(custom_response

參數描述

名稱類型是否必選範例值描述
nameString必選test自訂回應規則名稱。長度為 1~255 個字元,可以包含中文、英文、數字、底線(_)、半形句號(.)或連字號(-)。
actionString必選block防護規則動作。取值:
- block:表示攔截。
- captcha:表示滑塊驗證。




responseCodeInteger可選400指定回應碼。
- 自訂攔截頁面規則下此參數為必選。
- 自訂滑塊驗證頁面規則不支援指定回應碼,預設為 200。




responseHeadersArray可選[{"key":"custom","value":"123"},{"key":"aaaa","value":"2223"}]自訂回應標頭清單,以 JSON 字串格式進行描述。key 為 header 的欄位,value 為 header 的值。
designTypeString可選custom回應設定類型。僅自訂滑塊驗證頁面規則(即 actioncaptcha)時,需要指定此欄位值。取值:
- custom:表示自訂設定。
- preDefine:表示預先定義設定。




responseContentString可選helloworld自訂回應的內容。自訂滑塊驗證/攔截頁面時,此參數為必選。
preDefineContentArray可選[{"language":"cn","title":"test","description":"desc","captchaColor":"#FFFF","showTraceId":false},{"language":"en","title":"titel","description":"desc","captchaColor":"#FFFF","showTraceId":false}]預先定義設定內容。當 designTypepreDefine 時必傳,否則不傳。具體設定資訊,請參閱 預先定義的詳細設定

預先定義的詳細設定

名稱類型是否必選範例值描述
languageString必選en語言設定。取值:
- en:表示英文。
- cn:表示中文。




iconString必選https://img.alicdn.com/imgextra/i1/O1CN01L12MaQ1ZwfYKk7Yrc_!!6000000003259-2-tps-900-594.png圖示,使用者設定的須為公網可存取的路徑。
titleString必選test_title自訂滑塊驗證頁面標題。
descriptionString必選For better experience, please slide to complete the verification process before accessing the web page.自訂滑塊驗證頁面描述。
captchaColorString必選#ff6a00滑塊顏色。
showTraceIdboolean必選true是否顯示日誌 ID。取值:
- true:表示滑塊驗證頁面顯示日誌 ID。
- false:表示滑塊驗證頁面不顯示日誌 ID。




自訂攔截頁面設定範例

{
  "name": "test",
  "action": "block",
  "responseContent": "helloworld",
  "responseCode": 401,
  "responseHeaders": [{"key":"t1","value":"v1"}],
}

預先定義滑塊驗證頁面設定範例

{
"name": "test",
"designType": "preDefine",
"action": "captcha",
"responseHeaders": [
    {
    "key": "Content-Type",
    "value": "text/html"
    }
],
"preDefineContent": [
    {
    "language": "en",
    "icon": "https://img.alicdn.com/imgextra/i1/O1CN01L12MaQ1ZwfYKk7Yrc_!!6000000003259-2-tps-900-594.png",
    "title": "Access Verification-custom",
    "description": "For better experience, please slide to complete the verification process before accessing the web page.",
    "captchaColor": "#ff6a00",
    "showTraceId": true
    }
]
}

返回參數

名稱

類型

描述

樣本值

object

返回物件結構。

RequestId

string

目前請求的 ID。

26E46541-7AAB-5565-801D-F14DBDC5****

RuleIds

string

建立的防護規則 ID,多個防護規則 ID 之間使用英文逗號(,)分隔。

22215,23354,462165

樣本

正常返回樣本

JSON格式

{
  "RequestId": "26E46541-7AAB-5565-801D-F14DBDC5****",
  "RuleIds": "22215,23354,462165"
}

錯誤碼

HTTP status code

錯誤碼

錯誤資訊

描述

400 Defense.Control.DefenseWhitelistBypassRuleNotExist The whitelist protection rule does not exist. 白名單中加白的防護規則不存在。規則 ID:%s。
400 Defense.Control.DefenseWhitelistConfigInvalid The whitelist rule is misconfigured. 白名單規則的設定錯誤:%s。
400 Defense.Control.DefenseBookTypeInvalid The address book type is illegal. 地址簿類型不合法。
400 Defense.Control.DefenseThreatIntelligenceConfigInvalid Threat Intelligence Rule configuration error. 威脅情報規則設定錯誤。%s。
400 Defense.Control.DefenseIpCountOversize The number of IPs exceeds the limit. IP 數量超過限制。
400 Defense.Control.InvalidDefenseRuleConfig Invalid protection rule configuration. %s. 無效的防護規則設定。

訪問錯誤中心查看更多錯誤碼。

變更歷史

更多資訊,參考變更詳情