すべてのプロダクト
Search
ドキュメントセンター

Web Application Firewall:CreateDefenseRule

最終更新日:Apr 02, 2026

Web コア保護ルールを作成します。

今すぐお試しください

この API を OpenAPI Explorer でお試しください。手作業による署名は必要ありません。呼び出しに成功すると、入力したパラメーターに基づき、資格情報が組み込まれた SDK コードが自動的に生成されます。このコードをダウンロードしてローカルで使用できます。

テスト

RAM 認証

下表に、この API を呼び出すために必要な認証情報を示します。認証情報は、RAM (Resource Access Management) ポリシーを使用して定義できます。以下で各列名について説明します。

  • アクション:特定のリソースに対して実行可能な操作。ポリシー構文ではAction要素として指定します。

  • API:アクションを具体的に実行するための API。

  • アクセスレベル:各 API に対して事前定義されているアクセスの種類。有効な値:create、list、get、update、delete。

  • リソースタイプ:アクションが作用するリソースの種類。リソースレベルでの権限をサポートするかどうかを示すことができます。ポリシーの有効性を確保するため、アクションの対象として適切なリソースを指定してください。

    • リソースレベルの権限を持つ API の場合、必要なリソースタイプはアスタリスク (*) でマークされます。ポリシーのResource要素で対応する ARN を指定してください。

    • リソースレベルの権限を持たない API の場合、「すべてのリソース」と表示され、ポリシーのResource要素でアスタリスク (*) でマークされます。

  • 条件キー:サービスによって定義された条件のキー。このキーにより、きめ細やかなアクセス制御が可能になります。この制御は、アクション単体に適用することも、特定のリソースに対するアクションに適用することもできます。Alibaba Cloud は、サービス固有の条件キーに加えて、すべての RAM 統合サービスに適用可能な一連の共通条件キーを提供しています。

  • 依存アクション:ある特定のアクションを実行するために、前提として実行が必要となる他のアクション。依存アクションの権限も RAM ユーザーまたは RAM ロールに付与する必要があります。

アクション

アクセスレベル

リソースタイプ

条件キー

依存アクション

yundun-waf:CreateDefenseRule

create

*All Resource

*

  • acs:ResourceGroupId
なし

リクエストパラメーター

パラメーター

必須 / 任意

説明

InstanceId

string

必須

WAF インスタンスの ID です。

説明

ご利用の WAF インスタンスの ID を取得するには、DescribeInstance 操作を呼び出します。

waf_v2_public_cn-****

TemplateId

integer

任意

保護ルールテンプレートの ID です。

説明

DefenseTypetemplate に設定した場合のみ、このパラメーターは必須です。

1122

DefenseScene

string

必須

保護ルールを適用するシナリオです。

DefenseTypetemplate に設定した場合の有効な値は以下のとおりです。

  • waf_group: 基本保護。

  • waf_base: Web コア保護。

  • antiscan: スキャン保護。

  • ip_blacklist: IP アドレスブラックリスト。

  • custom_acl: カスタムルール。

  • whitelist: ホワイトリスト。

  • region_block: 地理的ブロッキング。

  • custom_response: カスタム応答。

  • cc: HTTP フラッド攻撃対策。

  • tamperproof: Web ページ改ざん防止。

  • dlp: データ漏えい防止。

  • spike_throttle: トラフィックバーストに対するレート制限。

  • bot_manager: ボット管理。

DefenseTyperesource に設定した場合の有効な値は以下のとおりです。

  • account_identifier: アカウント識別。

  • custom_response: カスタム応答。

  • waf_codec: デコード。

DefenseTypeglobal に設定した場合の有効な値は以下のとおりです。

  • regular_custom: カスタム正規表現。

  • address_book: アドレス帳。

  • custom_response: カスタム応答。

説明

グローバルなカスタム応答は、保護対象またはルールに対して適用できます。異なるレベルでカスタム応答ルールを設定した場合、最も細かい粒度のスコープを持つルールが優先されます。優先順位は次のとおりです: ルールレベル > 保護対象レベル > デフォルトページ。

waf_group

Rules

string

必須

保護ルールの詳細です。この値は JSON 文字列です。

説明

JSON 文字列内のパラメーターは、DefenseScene の値によって異なります。詳細については、「保護ルールのパラメーター」をご参照ください。

waf_group

ResourceManagerResourceGroupId

string

任意

リソースグループの ID です。

rg-acfm***q

DefenseType

string

任意

保護ルールのタイプです。有効な値は以下のとおりです。

  • template (デフォルト): テンプレートベースの保護ルール。

  • resource: 特定の保護対象向けのルール。

  • global: グローバル保護ルール。

template

RegionId

string

任意

WAF インスタンスが展開されているリージョンです。有効な値は以下のとおりです。

  • cn-hangzhou: 中国本土。

  • ap-southeast-1: 中国本土以外。

cn-hangzhou

Resource

string

任意

ルールを適用する保護対象です。

説明

DefenseTyperesource に設定した場合のみ、このパラメーターは必須です。

sec****-waf

保護ルールのパラメーター

テンプレート保護ルール (template)

DefenseTypetemplate に設定した場合、ルール構成は以下のとおりです。

基本保護ルール (waf_group)

パラメーター

パラメーター必須説明
statusInteger必須1防御ルールの初期ステータスを指定します。後でステータスを変更するには、ModifyDefenseRuleStatus 操作を呼び出します。有効な値:
- 0: 無効。
- 1 (デフォルト): 有効。




actionString必須block防御ルールのアクションを指定します。有効な値:
- block: 一致するリクエストをブロックします。
- monitor: 一致するリクエストをモニターします。




policyIdLong任意1012防御ルールグループの ID を指定します。デフォルトでは中間ルールグループ (1012) になります。
protectionTypeString任意sema防御ルールのタイプを指定します。有効な値:
- regular (デフォルト): 正規表現保護。
- sema: セマンティック保護。




configString任意{"nonInjectionSql":1}カスタム構成を JSON 文字列として指定します。設定の詳細な一覧については、config オブジェクトのドキュメントをご参照ください。

パラメーター

  • protectionTypesema に設定した場合、基本保護ルールはセマンティック保護となります。

パラメーター必須説明
nonInjectionSqlIntegerはい1非インジェクション攻撃検出を有効にするかどうかを示します。有効な値:
- 0: 無効。
- 1 (デフォルト): 有効。




{
    "DefenseScene": "waf_group",
    "TemplateId": 322,
    "InstanceId": "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"}]}]変更するルール構成です。
重要 テンプレートのシステム保護ルール構成を照会するには、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,
    "InstanceId": "waf_cn****",
    "Rules": "[{\"autoUpdate\":true,\"config\":[{\"ruleType\":\"system\",\"ruleDetail\":[{\"ruleId\":13000412,\"ruleStatus\":1,\"ruleAction\":\"block\"}]}]}]"
}

スキャン保護ルール

パラメーター

パラメーター必須例の値説明
protectionTypeString必須highfreqスキャン保護ルールのサブタイプです。有効な値:
- highfreq: 高頻度スキャンブロッキング。
- dirscan: ディレクトリトラバーサルブロッキング。
- scantools: スキャンツールブロッキング。







statusInteger必須1保護ルールのステータスです。このパラメーターは保護ルールを作成する場合にのみ使用します。ステータスを変更するには、ModifyDefenseRuleStatus 操作の RuleStatus パラメーターを使用します。有効な値:
- 0: 無効。
- 1 (デフォルト): 有効。




actionString必須block保護ルールのアクションです。有効な値:
- block: 一致するリクエストをブロックします。
- monitor: 一致するリクエストをモニターします。




actionExternalJSON任意{"responseRuleId":123444}ルールのアクションに対する拡張構成を指定します。これにより、カスタム応答を定義できます。たとえば、action パラメーターを block に設定した場合、カスタムブロックページを指定できます。
configString任意{"target":"remote_addr","interval":60,"ttl":180,"count":20}カスタム構成を JSON 文字列として指定します。詳細については、「config パラメーターの詳細」をご参照ください。

詳細な構成

  • protectionTypehighfreq に設定した場合 (高頻度スキャンブロッキング)

パラメーター必須説明
targetStringはいremote_addr統計対象のタイプです。有効な値:
- remote_addr (デフォルト): IP アドレス。
- cookie.acw_tc: 会話。
- header: カスタムヘッダー。この値を選択した場合は、subKey パラメーターでヘッダーフィールドを指定します。
- queryarg: カスタムパラメーター。この値を選択した場合は、subKey パラメーターでパラメーター名を指定します。
- cookie: カスタム Cookie。この値を選択した場合は、subKey パラメーターで Cookie 名を指定します。













subKeyStringいいえabc統計対象の特定のフィールドです。targetcookieheader、または queryarg に設定されている場合に必須です。
intervalIntegerいいえ60検出期間 (秒単位) です。デフォルト値は 60 です。
値は 5 ~ 1,800 の整数である必要があります。

ttlIntegerいいえ1800ブロッキング期間 (秒単位) です。デフォルト値は 1,800 です。
値は 60 ~ 86,400 の整数である必要があります。

countIntegerいいえ20基本保護ルールがトリガーされる最大回数です。デフォルト値は 20 です。
値は 3 ~ 50,000 の整数である必要があります。

ruleIdCountIntegerいいえ2トリガーされるルールの最大数です。デフォルト値は 2 です。
値は 1 ~ 50 の整数である必要があります。

  • protectionTypedirscan に設定した場合 (ディレクトリトラバーサルブロッキングのためのスキャン保護ルール)

パラメーター必須説明
targetString必須remote_addr統計およびブロッキングの対象となるオブジェクトです。有効な値:
- remote_addr (デフォルト): IP
- cookie.acw_tc: 会話
- header: カスタムヘッダー
- queryarg: カスタムパラメーター
- cookie: カスタム Cookie













subKeyString任意1ターゲットオブジェクトのサブキーです。target が header、queryarg、または cookie に設定されている場合に指定します。
intervalInteger任意60検出期間 (秒単位) です。
有効な値: 5 ~ 1,800。デフォルト: 60。

ttlInteger任意1800ブロッキング期間 (秒単位) です。
有効な値: 60 ~ 86,400。デフォルト: 1,800。

countInteger任意20基本保護ルールがトリガーされる最大回数です。
有効な値: 3 ~ 50,000。デフォルト: 20。

weightFloat任意0.5404 応答コードの割合です。
有効な値: 0.01 ~ 1.0 (小数点以下 2 桁の精度)。デフォルト: 0.7。

uriNumInteger任意50存在しないディレクトリの最大数です。
有効な値: 2 ~ 50,000。デフォルト: 50。

{
    "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 ブラックリストに追加する IP アドレスまたは CIDR ブロックです。「["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 を実行します。
- captcha_strict: 厳格な CAPTCHA を実行します。
カスタム ACL ルールで利用可能なアクションは、WAF コンソール に表示されるものに限定されます。
















actionExternalJSONいいえ{"responseRuleId":123444}保護ルールアクションの拡張構成を指定します。このパラメーターは新しいバージョンのカスタム応答でのみ利用可能です。actionblock に設定した場合、カスタムブロックページを指定できます。actioncaptcha/ captcha_strict に設定した場合、カスタム CAPTCHA ページを指定できます。
conditionsArrayはい[{"key":"IP","opValue":"eq","values":"11.XX.XX.1"},{"key":"Header","subKey":"abc","opValue":"contains","values":"test"}]ACL ルールの一致条件を指定します。値は JSON 文字列です。最大 5 つの一致条件を指定できます。詳細については、保護ルールのパラメーターconditions
ccStatusIntegerはい1レート制限を有効にするかどうかを指定します。有効な値:
- 0: レート制限を無効にします。
- 1: レート制限を有効にします。




ratelimitJSONいいえ{"target":"remote_addr","interval":5,"threshold":2,"ttl":1800,"status":{"code":404,"count":2}}レート制限の詳細構成を指定します。値は JSON 文字列です。ccStatus1 に設定した場合にのみ必須です。詳細については、保護ルールのパラメーターratelimit
effectStringいいえruleレート制限のスコープを指定します。ccStatus1 に設定した場合にのみ必須です。有効な値:
- service: 保護対象に適用されます。
- rule: 単一のルールに適用されます。




grayStatusIntegerいいえ1ルールのグレースケールリリースを有効にするかどうかを指定します。有効な値:
- 0 (デフォルト): グレースケールリリースを無効にします。
- 1: グレースケールリリースを有効にします。




grayConfigJSONいいえ{"grayTarget":"header","grayRate":80,"graySubKey":"test"}グレースケールリリースの構成を指定します。値は JSON 文字列です。grayStatus1 に設定した場合にのみ必須です。詳細については、保護ルールのパラメーターgrayConfig
timeConfigJSONいいえ{"timeScope":"period","timeZone":8,"timePeriods":[{"start":1758771729787,"end":1758816000000}]}ルールが有効になるスケジュールを指定します。値は JSON 文字列です。詳細については、保護ルールのパラメーターtimeConfig

提供されたドキュメントでは、確立された基準に従ってユーザーインターフェース (UI) 用語が分析されました。
このドキュメントには、API パラメーターとコード変数で構成される JSON コード例が含まれています。除外基準に基づき、これらはボタン、メニュー、またはラベルなどの UI 要素とは見なされません。{
    "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\"}}]"
}

そのため、UI 用語は抽出されませんでした。
UI用語抽出には、インターフェイスの説明、操作手順、またはスクリーンショットを含むドキュメントが必要です。<p>提供されたドキュメントは、確立された基準に従ってユーザーインターフェース (UI) の用語について分析されました。</p>
<p>ドキュメントには JSON コードの例が含まれており、API パラメーターとコード変数で構成されています。除外基準に従い、これらはボタン、メニュー、ラベルなどの UI 要素とは見なされません。</p>
<code code-type="xCode" data-tag="codeblock" outputclass="language-json">{
    "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\"}}]"
}

ホワイトリスト

パラメーター

パラメーター必須例の値説明
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 文字列です。最大 5 つの一致条件を指定できます。詳細については、保護ルールのパラメーター構成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: ボット保護
- antibot_scene_rule: 特定のボット保護ルール ID
- antibot_scene_label: 特定のボット保護ルールタイプ
- dlp: データ損失防止
- tamperproof: Web 改ざん防止
- spike_throttle: スパイクスロットリング保護























































regularRulesArray任意[ "111111", "222222" ]検出から除外する基本保護ルール ID のリストです。["XX1", "XX2",...] の形式で値を指定します。tags パラメーターを regular_rule に設定した場合にのみ設定します。
regularTypesArray任意[ "xss", "css" ]検出から除外する基本保護ルールタイプのリストです。["XX1", "XX2",...] の形式で値を指定します。tags パラメーターを regular_type に設定した場合にのみ設定します。有効な値:
- sqli: SQL インジェクション
- xss: クロスサイトスクリプティング
- code_exec: コード実行
- crlf: CRLF
- lfilei: ローカルファイルインクルード
- rfilei: リモートファイルインクルード
- webshell: Web シェル
- csrf: CSRF
- other: その他

























regularFieldsArray任意[{"key":"URL"},{"key":"Header","subKey":"abc"}]基本保護から除外するフィールドを含む JSON 文字列です。最大 5 つのフィールドを指定できます。詳細については、「regularFields 構成」をご参照ください。tags パラメーターを regular_field に設定した場合にのみ設定します。
customRulesArray任意[ "111111", "222222" ]検出から除外するカスタムルール ID のリストです。["XX1", "XX2",...] の形式で値を指定します。tags パラメーターを customrule_rule に設定した場合にのみ設定します。
blacklistRulesArray任意[ "111111", "222222" ]検出から除外する IP ブラックリストルール ID のリストです。["XX1", "XX2",...] の形式で値を指定します。tags パラメーターを blacklist_rule に設定した場合にのみ設定します。
botRulesArray任意[ "111111", "222222" ]検出から除外するボット保護ルール ID のリストです。["XX1", "XX2",...] の形式で値を指定します。tags パラメーターを antibot_scene_rule に設定した場合にのみ設定します。
botLablesArray任意[ "abc", "cdcc" ]検出から除外するボット保護ルールタイプのリストです。["XX1", "XX2",...] の形式で値を指定します。tags パラメーターを antibot_scene_label に設定した場合にのみ設定します。利用可能なルールタイプを照会するには、DescribeBotRuleLabels 操作を呼び出します。

regularFields の構成

パラメーター必須例の値説明
keyString必須URL無視するフィールドです。有効な値:
- URL-All: URI のすべてのフィールド。
- URL: URI 全体。
- URLPath: URI パス。
- Query-All: すべてのクエリ引数。
- Query-Arg: 指定されたクエリ引数。
- Cookie-All: すべての Cookie。
- Cookie-Exact: 指定された Cookie 名。
- Header-All: すべてのヘッダー。
- Header: 指定されたヘッダーフィールド。
- Body-All: リクエストボディ内のすべての引数。




























subKeyString任意abc無視する特定のフィールドです。keyURLPathQuery-ArgCookie-Exact、または Header の場合に必須です。

カスタム応答ルール (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 はヘッダーフィールド、value はヘッダー値です。
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}]"
}

リージョンブロッキングルール (region_block)

パラメーター

パラメーター必須例の値説明
cnRegionListString任意610000,230000中国本土の地域コードをカンマ区切りで並べたリストです。「["CN"]」を指定すると、香港、マカオ、台湾を除く中国本土のすべての地域がブロックされます。地域コードの定義については、「中国本土の地域コードの説明」をご参照ください。
abroadRegionListString任意KE,KG中国本土以外の国および地域のコードをカンマ区切りで並べたリストです。DescribeIpAbroadCountryInfos 操作を呼び出して、サポートされている国および地域コードを照会できます。
statusInteger必須1保護ルールのステータスを指定します。このパラメーターは保護ルールを作成する場合にのみ使用します。既存の保護ルールのステータスを変更するには、ModifyDefenseRuleStatus 操作の RuleStatus パラメーターを使用します。有効な値:
- 0: 無効。
- 1 (デフォルト): 有効。




actionString必須block実行するアクションを指定します。有効な値:
- block: 一致するリクエストをブロックします。
- monitor: 一致するリクエストをモニターします;captcha: 一致するリクエストに対して CAPTCHA チャレンジを実行します;captcha_strict: 一致するリクエストに対して厳格な CAPTCHA チャレンジを実行します。




actionExternalJSON任意{"responseRuleId":123444}アクションの拡張構成を指定します。このパラメーターはカスタム応答機能でのみ使用できます。actionblock に設定した場合、カスタムブロックページを指定できます。actioncaptcha または captcha_strict に設定した場合、カスタム CAPTCHA ページを指定できます。

中国本土の地域 ID

{
    "110000": "北京市",
    "120000": "天津市",
    "130000": "河北省",
    "140000": "山西省",
    "150000": "内蒙古自治区",
    "210000": "辽宁省",
    "220000": "吉林省",
    "230000": "黒竜江省",
    "310000": "上海市",
    "320000": "江蘇省",
    "330000": "浙江省",
    "340000": "安徽省",
    "350000": "福建省",
    "360000": "江西省",
    "370000": "山東省",
    "410000": "河南省",
    "420000": "湖北省",
    "430000": "湖南省",
    "440000": "広東省",
    "450000": "広西チワン族自治区",
    "460000": "海南省",
    "500000": "重慶市",
    "510000": "四川省",
    "520000": "貴州省",
    "530000": "雲南省",
    "540000": "チベット自治区",
    "610000": "陝西省",
    "620000": "甘粛省",
    "630000": "青海省",
    "640000": "寧夏回族自治区",
    "650000": "新疆ウイグル自治区",
    "MO_01": "中国マカオ特別行政区",
    "HK_01": "中国香港特別行政区",
    "TW_01": "中国台湾省",
    "CN": "中国本土"
}
{
    "InstanceId": "waf_v2_public_****",
    "TemplateId": 2341,
    "DefenseScene": "region_block",
    "Rules": "[{\"cnRegionList\":\"CN,HK_01,TW_01,MO_01\",\"abroadRegionList\":\"AU,NZ\",\"action\":\"block\",\"status\":1}]"
}

保護ルール (CC)

パラメーター

パラメーター必須説明
modeIntegerはい0CC 保護モードです。有効な値:
- 0 (デフォルト): 通常保護。
- 1: 緊急保護。




statusIntegerはい1保護ルールのステータスです。このパラメーターは保護ルールを作成する場合にのみ使用します。保護ルールのステータスを変更するには、ModifyDefenseRuleStatus 操作の RuleStatus パラメーターを使用します。有効な値:
- 0: 無効。
- 1 (デフォルト): 有効。




actionStringいいえjs保護ルールのアクションです。有効な値:
- js (デフォルト): JS チャレンジ。
- monitor: モニター。




{
    "InstanceId": "waf_v2_public_****",
    "TemplateId": 2241,
    "DefenseScene": "cc",
    "Rules":"[{\"mode\":0,\"status\":1,\"action\":\"js\"}]"
}

Web サイト改ざん防止ルール (tamperproof)

パラメーター

パラメーター必須説明
nameStringはいtest防御ルールの名前です。名前の長さは 1 ~ 255 文字で、漢字、英字、数字、アンダースコア (_ )、ピリオド (.)、ハイフン (-) を含めることができます。
urlStringはい/abcキャッシュされたページの URL です。
uaStringいいえappこのパスにアクセスする際のユーザーエージェントです。
protocolStringはいhttpsキャッシュされたページ URL のプロトコルです。有効な値: http および https
statusIntegerはい1防御ルールのステータスです。このパラメーターはルール作成専用です。ステータスを変更するには、ModifyDefenseRuleStatus 操作の RuleStatus パラメーターを使用します。有効な値:
- 0: 無効。
- 1 (デフォルト): 有効。




{
    "InstanceId": "waf_v2_public_****",
    "TemplateId": 1241,
    "DefenseScene": "tamperproof",
    "Rules": "[{\"name\":\"test1\",\"url\":\"www.test1.com\",\"ua\":\"firefox\",\"protocol\":\"https\",\"status\":1}]"
}

DLP ルール

パラメーター

パラメーター必須例の値説明
nameString必須test保護ルールの名前です。長さは 1 ~ 255 文字で、漢字、英字、数字、アンダースコア (_ )、ピリオド (.)、ハイフン (-) を含めることができます。
conditionsArray必須[{"key":"HttpCode","opValue":"contain","values":"400,401,402,403,404,405,500,501,502,503,504,505"},{"key":"URL","opValue":"contain","values":"test"}]一致条件を JSON 文字列として指定します。最大 2 つの一致条件を指定でき、論理 AND で結合されます。詳細については、「詳細な条件構成」をご参照ください。
statusInteger必須1保護ルールのステータスです。このパラメーターは保護ルールを作成する場合にのみ使用します。保護ルールのステータスを変更するには、ModifyDefenseRuleStatus 操作の RuleStatus パラメーターを使用します。有効な値:
- 0: 無効
- 1 (デフォルト): 有効




actionString必須blockリクエストがルールに一致した場合に実行するアクションです。有効な値:
- block: リクエストをブロックします。このアクションは、一致条件に応答コードが含まれている場合にのみ利用可能です。
- monitor: リクエストをモニターします。
- filter: 敏感情報のフィルタリングを行います。このアクションは、敏感情報の一致条件が設定されている場合にのみ利用可能です。







条件パラメーター

パラメーター必須説明
keyString必須URL一致フィールドです。有効な値: URLHttpCode、および SensitiveInfo
opValueString必須contain論理演算子です。値は常に contain です。
valuesString必須abc一致させるコンテンツです。複数の値はカンマ (,) で区切ります。
HttpCode の場合、有効な値は 400401402403404405 (405–499 の範囲)、500501502503504、および 505 (505–599 の範囲) です。
SensitiveInfo の場合、有効な値は以下のとおりです:
- phone: 電話番号。
- card: クレジットカード。
- id: 身分証明書。
- word: デフォルトの禁止用語。
















スパイクスロットル (spike_throttle)

パラメーター

パラメーター必須説明
nameStringはいiptestレート制限ルールの名前です。名前の長さは 1 ~ 255 文字で、漢字、英字、数字、アンダースコア (_ )、ピリオド (.)、ハイフン (-) を含めることができます。
statusIntegerはい1防御ルールのステータスです。このパラメーターはルール作成専用です。防御ルールのステータスを変更するには、ModifyDefenseRuleStatus 操作の RuleStatus
- 0: 無効。
- 1 (デフォルト): 有効。




actionStringはいblockルールのアクションです。有効な値:
- block: 一致するリクエストをブロックします。
- monitor: 一致するリクエストをモニターします。




actionExternalJSONいいえ{"responseRuleId":123444}ルールアクションの拡張構成です。これは、actionblock に設定した場合にカスタムブロックページを指定するために使用されます。
conditionsArrayはい[{"key":"IP","opValue":"eq","values":"11.XX.XX.1"},{"key":"Header","subKey":"abc","opValue":"contains","values":"test"}]ACL の一致条件を JSON 配列として指定します。最大 5 つの一致条件を定義できます。詳細な構成については、防御ルールのパラメーター構成conditions
cnRegionListStringいいえ610000,230000ブロックする中国本土の地域です。「CN」を指定すると、香港、マカオ、台湾を除く中国本土のすべての地域がブロックされます。複数の地域コードはカンマ (,) で区切ります。地域コードの一覧については、「中国本土の地域コード」をご参照ください。
abroadRegionListStringいいえKE,KGブロックする中国本土以外の地域です。複数の地域コードはカンマ (,) で区切ります。DescribeIpAbroadCountryInfos 操作を呼び出して、サポートされている国および地域を照会できます。
typeStringはいqpsレート制限モードです。有効な値:
- qps: 秒間クエリ数 (QPS) に基づいてトラフィックを制限します。
- ratio (デフォルト): パーセンテージに基づいてトラフィックを制限します。




thresholdIntegerはい500レート制限のしきい値です。その意味は type パラメーターによって異なります:
- type が qps の場合: QPS しきい値を指定します。有効な範囲は 1 ~ 5,000,000 です。このしきい値を超えるリクエストはブロックされます。
- type が ratio の場合: 許可するリクエストの割合を指定します。有効な範囲は 1 ~ 99 です。たとえば、値が 80 の場合、リクエストの 80% が許可されます。




中国本土の地域 ID

{
    "110000": "北京市",
    "120000": "天津市",
    "130000": "河北省",
    "140000": "山西省",
    "150000": "内蒙古自治区",
    "210000": "辽宁省",
    "220000": "吉林省",
    "230000": "黒竜江省",
    "310000": "上海市",
    "320000": "江蘇省",
    "330000": "浙江省",
    "340000": "安徽省",
    "350000": "福建省",
    "360000": "江西省",
    "370000": "山東省",
    "410000": "河南省",
    "420000": "湖北省",
    "430000": "湖南省",
    "440000": "広東省",
    "450000": "広西チワン族自治区",
    "460000": "海南省",
    "500000": "重慶市",
    "510000": "四川省",
    "520000": "貴州省",
    "530000": "雲南省",
    "540000": "チベット自治区",
    "610000": "陝西省",
    "620000": "甘粛省",
    "630000": "青海省",
    "640000": "寧夏回族自治区",
    "650000": "新疆ウイグル自治区",
    "MO_01": "マカオ、中国",
    "HK_01": "香港、中国",
    "TW_01": "台湾、中国",
    "CN": "中国本土"
}
{
    "InstanceId": "waf_v2_public_****",
    "TemplateId": 2341,
    "DefenseScene": "spike_throttle",
    "Rules":"[{\"name\":\"test\",\"action\":\"monitor\",\"conditions\":[{\"key\":\"URL\",\"opValue\":\"contain-one\",\"values\":\"abctest,abctest2\"}],\"status\":1,\"type\":\"qps\",\"threshold\":1000,\"cnRegionList\":\"110000,140000\",\"abroadRegionList\":\"AD,AL\"}]"}
}

ボット管理ルール (bot_manager)

パラメーター

パラメーター必須例の値説明
nameString必須iptest高度なカスタム BOT ACL ルールの名前です。名前の長さは 1 ~ 255 文字で、漢字、英字、数字、アンダースコア (_ )、ピリオド (.)、ハイフン (-) を含めることができます。
statusInteger必須1ルールのステータスです。このパラメーターはルールを作成する場合にのみ使用します。既存のルールのステータスを変更するには、ModifyDefenseRuleStatus 操作の RuleStatus
- 0: 無効。
- 1 (デフォルト): 有効。




actionString必須blockルールのアクションです。有効な値:
- block: ブロック。
- monitor: モニター。
- js: JS チャレンジ。
- captcha: CAPTCHA。
- captcha_strict: 厳格な CAPTCHA。
- upstream_tag: アップストリームタグ付け。
サポートされているアクションの一覧については、WAF コンソール をご参照ください。



















actionExternalJSON任意{"responseRuleId":123444} または
{"upstreamHeader":{"header":"test","systemKey":["type","id"]}}

ルールアクションの拡張構成を含む JSON 文字列です。JSON 文字列には以下のフィールドが含まれます:
- upstreamHeader: アップストリームタグ付けの構成です。このフィールドは、actionupstream_tag に設定した場合にのみ適用されます。詳細については、「アップストリームタグ付け upstreamHeader 構成」をご参照ください。
- responseRuleId: カスタム応答ルールの ID。
actionblock の場合、responseRuleId はカスタムブロックページルールの ID です。
actioncaptcha または captcha_strict の場合、responseRuleId はカスタム CAPTCHA ページルールの ID です。










conditionsArray必須[{"key":"IP","opValue":"eq","values":"11.XX.XX.1"},{"key":"Header","subKey":"abc","opValue":"contains","values":"test"}]ACL ルールの一致条件を JSON 配列として指定します。最大 10 個の一致条件を指定できます。構成の詳細については、保護ルールのパラメーター構成conditions
ccStatusInteger必須1レート制限が有効かどうかを指定します。有効な値:
- 0: 無効。
- 1: 有効。




ratelimitJSON任意{"target":"remote_addr","interval":5,"threshold":2,"ttl":1800,"status":{"code":404,"count":2}}レート制限の詳細構成を含む JSON 文字列です。このパラメーターは ccStatus1 に設定した場合にのみ適用されます。構成の詳細については、保護ルールのパラメーター構成ratelimit
effectString任意ruleレート制限のスコープです。このパラメーターは ccStatus1 に設定した場合にのみ適用されます。有効な値:
- service: レート制限は保護対象に適用されます。
- rule: レート制限は単一のルールに適用されます。




botBehaviorString任意maliciousルールカテゴリです。有効な値:
- suspicious (デフォルト): 疑わしいボット。
- malicious: 悪意のあるボット。




grayStatusInteger任意1カナリアリリースが有効かどうかを指定します。有効な値:
- 0 (デフォルト): 無効。
- 1: 有効。




grayConfigJSON任意{"grayTarget":"header","grayRate":80,"graySubKey":"test"}カナリアリリースの構成を含む JSON 文字列です。このパラメーターは grayStatus1 に設定した場合にのみ適用されます。構成の詳細については、保護ルールのパラメーター構成grayConfig
timeConfigJSON任意{"timeScope":"period","timeZone":8,"timePeriods":[{"start":1758771729787,"end":1758816000000}]}ルールのスケジュール構成を含む JSON 文字列です。構成の詳細については、保護ルールのパラメーター構成timeConfig

upstreamHeader を使用したアップストリームタグ付け

パラメーター必須例の値説明
headerStringはいabcアップストリームタグ付けのヘッダー名です。
systemKeyArrayはい["id","type"]アップストリームタグ付けのシステムフィールドです。これらのフィールドの順序がヘッダーの内容を決定します。有効な値:
- id: ルール ID。
- type: ルールタイプ。
- websdk.umid: Web クライアントからの UMID。
- ssl_client_ja3_fingerprinting_md5: JA3 フィンガープリント。
- ssl_client_ja4_fingerprinting_md5: JA4 フィンガープリント。
- http2_client_fingerprint_md5: HTTP/2 フィンガープリント。
- appsdk.eeid_umid: デバイス UMID。
- appsdk.eeid_running_frame_magisk: Magisk フレームワークが使用されているかどうかを示します。
- appsdk.eeid_running_frame_frida: Frida インジェクションが存在するかどうかを示します。
- appsdk.eeid_running_frame_fishhook: FishHook インジェクションが存在するかどうかを示します。
- appsdk.eeid_running_frame_edxposed: EdXposed フレームワークが使用されているかどうかを示します。
- appsdk.is_xposed: Xposed フレームワークが使用されているかどうかを示します。
- appsdk.eeid_running_frame_va: VirtualApp フレームワークが使用されているかどうかを示します。
- appsdk.eeid_running_frame_cydia: Cydia がインストールされているかどうかを示します。
- appsdk.eeid_is_batch: デバイスがデバイスファームデバイスであるかどうかを示します。
- appsdk.eeid_is_root: デバイスが root 化されているかどうかを示します。
- appsdk.eeid_is_fake: デバイスが偽装デバイスであるかどうかを示します。
- appsdk.eeid_is_virtual: アプリのクローン化または仮想環境が使用されているかどうかを示します。
- appsdk.pkguncrypted: アプリの復号が行われたかどうかを示します。
- appsdk.eeid_is_hook: フック動作が存在するかどうかを示します。
- appsdk.eeid_is_debugged: アプリがデバッグ中であるかどうかを示します。
- appsdk.eeid_is_simulator: デバイスがエミュレーターであるかどうかを示します。
- appsdk.eeid_is_proxy: プロキシが使用されているかどうかを示します。
- appsdk.eeid_is_highrisk: デバイスが高リスクであるかどうかを示します。
- appsdk.adbstate: ADB が有効になっているかどうかを示します。
- appsdk.eeid_abnormal_time: デバイスの時刻が異常であるかどうかを示します。
- appsdk.eeid_short_uptime: デバイスの稼働時間が短いかどうかを示します。
- appsdk.screenon: 画面がオンになっているかどうかを示します。
- appsdk.collectend: データ収集が終了したかどうかを示します。
- appsdk.pkgreleasemode: アプリがデバッグモードであるかどうかを示します。
- appsdk.elapsedtime: 起動後の経過時間。
- appsdk.isfront: アプリがフォアグラウンドで実行中であるかどうかを示します。
- appsdk.passwordunlock: デバイスが画面ロックされているかどうかを示します。
- appsdk.fingerprintauth: 指紋認証が有効になっているかどうかを示します。
- appsdk.brand: デバイスブランド。
- appsdk.model: デバイスモデル。
- appsdk.batterychange: 最後の収集以降のバッテリー残量の変化。
- appsdk.batterystatus: バッテリー充電状態。
- appsdk.batterylevel: バッテリー残量。
- appsdk.brightness: 画面の輝度。
- appsdk.packagesign: パッケージ署名ハッシュ。
- appsdk.screenres: 画面の解像度。
- appsdk.packagename: アプリケーションパッケージ名。
- appsdk.platform: プラットフォーム。
- appsdk.hookframe: フックフレームワーク。
-appsdk.version: APPSDK バージョン。
- appsdk.appname: アプリケーション名。
- appsdk.appversion: アプリケーションバージョン。
- appsdk.hardware: ハードウェア名。
- appsdk.timestamp: データ収集タイムスタンプ。
- appsdk.devicename: デバイス名。
- appsdk.product: 製品コード名。
- appsdk.eeid_running_frame_script: 自動化アクセシビリティツールがインストールされているかどうかを示します。
: アップストリームタグ付けで利用可能なフィールドは、特定のボット機能によって異なります。サポートされているフィールドの一覧については、WAF コンソールのボットカスタムルール設定をご参照ください。
































































































































































customValueStringいいえtestヘッダーに含めるカスタム文字列です。

リソースレベルのルール (resource)

DefenseTyperesource に設定した場合、ルール構成は以下のとおりです。

アカウント抽出 (account_identifier)

各保護対象には、アカウント抽出ルールを 1 つだけ設定できます。

パラメーター

パラメーター必須例の値説明
accountIdentifiersarrayはい[ { "key": "Header","subKey": "header-test", "decodeType": "jwt", "position": "username", "priority": 1 }, { "key": "Post-Arg", "subKey": "body_test", "decodeType": "plain", "priority": 2 } ]アカウント識別子構成を指定する JSON オブジェクトの配列です。最大 5 個のオブジェクトを提供できます。フィールドの説明については、accountIdentifiers データ構造をご参照ください。

accountIdentifiers 構成

パラメーター必須例の値説明
keyStringはいQuery-Arg抽出するフィールドの場所です。有効な値: Query-ArgCookie-ExactPost-Arg、および Header
subKeyStringはいquery-testkey パラメーターで指定されたソースから抽出するフィールドの名前です。
decodeTypeStringいいえjwt認証方式です。有効な値:
- plain: プレーンテキスト。
- basic: Basic 認証。
- jwt: JWT 認証。JWT 認証の場合、position パラメーターを使用してデコードされたアカウントフィールドを指定します。







priorityIntegerはい1抽出ポリシーの一致優先度です。トラフィックリクエストは、最大で 1 つのポリシーに一致できます。有効な値は 0 ~ 20 の整数で、値が小さいほど優先度が高くなります。優先度の値は一意である必要があります。
positionStringいいえaccountアカウント識別子を含むデコード済み JWT ペイロードのフィールドです。JWT 認証に必要です。

{
    "DefenseScene": "account_identifier",
    "Resource": "example.**.com-waf",
    "DefenseType": "resource",
    "InstanceId": "waf_cn****",
    "Rules": "[{\"accountIdentifiers\":[{\"key\":\"Header\",\"subKey\":\"header-test\",\"decodeType\":\"jwt\",\"position\":\"username\",\"priority\":1},{\"key\":\"Post-Arg\",\"subKey\":\"body_test\",\"decodeType\":\"plain\",\"priority\":2}]}]"
}

カスタム応答ルール (custom_response)

保護対象ごとにカスタム応答ルールを 1 つだけ設定できます。応答ページの優先順位は以下のとおりです: ルールレベル > 保護対象レベル > デフォルトページ。

パラメーター

パラメーター必須例の値説明
blockRuleIdLong任意1123保護対象がブロックをトリガーしたときに返されるカスタムブロックページのルール ID です。
captchaRuleIdLong任意1123保護対象がスライダーチャレンジをトリガーしたときに返されるカスタムスライダーのページのルール ID です。

{
    "DefenseScene": "custom_response",
    "Resource": "example.**.com-waf",
    "DefenseType": "resource",
    "InstanceId": "waf_cn****",
    "Rules": "[{\"blockRuleId\":900000,\"captchaRuleId\":900001}]"
}

保護対象のデコード (waf_codec)

各保護対象には、デコードルールを 1 つだけ設定できます。

パラメーター

パラメーター必須例の値説明
codecListArrayはい["comment","space-zip","json","xml","form","multipart","graphql","js-unicode","url","hex","html","php","java","utf7","oct"]有効化する変換を指定します。有効な値:
- url: URL デコード (常に有効)。
- js-unicode: Unicode デコード (常に有効)。
- oct: OCT デコード (常に有効)。
- hex: hex デコード (常に有効)。
- comment: コメントデコード (常に有効)。
- space-zip: スペースデコード (常に有効)。
- multipart: Multipart 解析。
- json: JSON 解析。
- xml: XML 解析。
- php: PHP シリアル化解除。
- html: HTML エンティティデコード。
- utf7: UTF-7 デコード。
- base64: Base64 デコード。
- form: フォーム解析。
- gzip: Gzip 展開。
- java: Java シリアル化解除。
- graphql: GraphQL 解析。

















































{
    "DefenseScene": "waf_codec",
    "Resource": "example.**.com-waf",
    "DefenseType": "resource",
    "InstanceId": "waf_cn****",
    "Rules": "[{\"codecList\":[\"comment\",\"space-zip\",\"json\",\"xml\",\"form\",\"multipart\",\"graphql\",\"js-unicode\",\"url\",\"hex\",\"html\",\"php\",\"java\",\"utf7\",\"gzip\",\"oct\",\"base64\"]}]"
}

グローバル次元 (global)

DefenseTypeglobal に設定した場合、ルール構成は以下のとおりです。

カスタム正規表現ルール (regular_custom)

パラメーター

パラメーター必須例の値説明
nameString必須ruleTestカスタム正規表現ルールの名前です。名前の長さは 1 ~ 255 文字で、漢字、英字、数字、アンダースコア (_ )、ピリオド (.)、ハイフン (-) を含めることができます。
detectTypeString必須sqli検出タイプです。有効な値:
- sqli: SQL インジェクション。
- xss: クロスサイトスクリプティング。
- cmdi: OS コマンドインジェクション。
- expression_injection: 式インジェクション (EL、SpEL、OGNL 式を含む)。
- java_deserialization: Java シリアル化解除。
- dot_net_deserialization: .NET シリアル化解除。
- php_deserialization: PHP シリアル化解除。
- code_exec: リモートコード実行 (JNDI/XPATH)。
- ssrf: Server-Side Request Forgery (SSRF)。
- path_traversal: パストラバーサル。
- arbitrary_file_uploading: 任意ファイルアップロード。
- webshell: Web シェル。
- rfilei: リモートファイルインクルード (RFI)。
- lfilei: ローカルファイルインクルード (LFI)。
- protocol_violation: プロトコル違反。
- scanner_behavior: スキャナー動作。
- logic_flaw: 論理的欠陥。
- arbitrary_file_reading: 任意ファイル読み取り。
- arbitrary_file_download: 任意ファイルダウンロード。
- xxe: XML 外部エンティティ参照 (XXE)。
- csrf: クロスサイトリクエストフォージェリ (CSRF)。
- crlf: CRLF インジェクション。
- other: その他。



































































riskLevelString必須strictリスクレベルです。有効な値:
- super_strict: 超 Strict。
- strict: Strict。
- medium: 中間。
- loose: ゆるい。










descriptionString任意ルールの説明。ルールの説明です。
conditionArray必須[{"key":"IP","opValue":"eq","values":"11.XX.XX.1"},{"key":"Header","subKey":"abc","opValue":"contains","values":"test"}]ルールの一致条件を JSON 文字列として指定します。最大 5 つの一致条件を指定できます。詳細については、「条件の詳細」をご参照ください。

条件構成

パラメーター必須説明
keyString必須Query-Argカスタム一致フィールドです。有効な値: File-NameUrlRaw-UrlRequest-UrlHttp-MethodDirectoryQueryRaw-HeaderBodyExtensionUnion-ArgsAll-DataAll-KeysMultipart-KeysMultipart-ValuesHeader-KeysHeader-ValuesPost-Arg-KeysPost-Arg-ValuesQuery-Arg-KeysQuery-Arg-ValuesCookie-KeysCookie-ValuesHeaderQuery-ArgPost-Arg、および Multipart
subKeyString任意query-testサブ一致フィールドです。
重要 サブ一致フィールドは、一致フィールドが HeaderQuery-ArgPost-Arg、または Multipart の場合にのみサポートされます。
opValueString必須contain論理演算子です。有効な値: regexprefix-matchsuffix-matcheq、および contain
valuesString必須abc一致させるコンテンツです。複数の値はカンマ (,) で区切ります。

{
  "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: CAPTCHA チャレンジを実行します。




responseCodeInteger任意400返す応答コードです。
- カスタムブロックページでは必須です。
- カスタム CAPTCHA ページではサポートされておらず、200 応答コードが返されます。




responseHeadersArray任意[{"key":"custom","value":"123"},{"key":"aaaa","value":"2223"}]カスタム応答ヘッダーのリストを JSON 文字列として指定します。各オブジェクトにおいて、key はヘッダーフィールド、value はヘッダー値です。
designTypeString任意custom応答構成のタイプです。このパラメーターは actioncaptcha に設定した場合にのみ必須です。有効な値:
- custom: カスタム構成。
- preDefine: 事前定義済み構成。




responseContentString任意helloworldカスタム応答の内容です。これはカスタム CAPTCHA またはカスタムブロックページで必須です。
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公開可能なアイコンの URL です。
titleStringはいtest_titleスライダーのページのカスタムタイトルです。
descriptionStringはいFor a better experience, slide to complete the verification before accessing the web page.スライダーのページのカスタム説明です。
captchaColorStringはい#ff6a00スライダーの色です。
showTraceIdbooleanはいtrueスライダーのページに Trace ID を表示するかどうかを指定します。有効な値:
- true: Trace ID を表示します。
- false: Trace 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",
    "description": "Slide to complete verification.",
    "captchaColor": "#ff6a00",
    "showTraceId": true
    }
]
}

レスポンスフィールド

フィールド

説明

object

応答は、以下の構造を持つオブジェクトです。

RequestId

string

リクエスト ID です。

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

RuleIds

string

作成された保護ルールの ID をカンマ区切りで並べた文字列です。

22215,23354,462165

成功レスポンス

JSONJSON

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

エラーコード

HTTP ステータスコード

エラーコード

エラーメッセージ

説明

400 Defense.Control.DefenseWhitelistBypassRuleNotExist The whitelist protection rule does not exist.
400 Defense.Control.DefenseWhitelistConfigInvalid The whitelist rule is misconfigured.
400 Defense.Control.DefenseBookTypeInvalid The address book type is illegal.
400 Defense.Control.DefenseThreatIntelligenceConfigInvalid Threat Intelligence Rule configuration error.
400 Defense.Control.DefenseIpCountOversize The number of IPs exceeds the limit.

完全なリストについては、「エラーコード」をご参照ください。

変更履歴

完全なリストについては、「変更履歴」をご参照ください。