All Products
Search
Document Center

Web Application Firewall:CreateDefenseRule

Last Updated:Jul 13, 2026

Membuat aturan perlindungan inti Web.

Coba sekarang

Coba API ini di OpenAPI Explorer tanpa perlu penandatanganan manual. Panggilan yang berhasil akan secara otomatis menghasilkan contoh kode SDK sesuai dengan parameter Anda. Unduh kode tersebut dengan kredensial bawaan yang aman untuk penggunaan lokal.

Test

RAM authorization

Tabel berikut menjelaskan otorisasi yang diperlukan untuk memanggil API ini. Anda dapat menentukannya dalam kebijakan Resource Access Management (RAM). Kolom pada tabel dijelaskan sebagai berikut:

  • Action: Aksi yang dapat digunakan dalam elemen Action pada pernyataan kebijakan izin RAM untuk memberikan izin guna melakukan operasi tersebut.

  • API: API yang dapat Anda panggil untuk melakukan aksi tersebut.

  • Access level: Tingkat akses yang telah ditentukan untuk setiap API. Nilai yang valid: create, list, get, update, dan delete.

  • Resource type: Jenis resource yang mendukung otorisasi untuk melakukan aksi tersebut. Ini menunjukkan apakah aksi tersebut mendukung izin tingkat resource. Resource yang ditentukan harus kompatibel dengan aksi tersebut. Jika tidak, kebijakan tersebut tidak akan berlaku.

    • Untuk API dengan izin tingkat resource, jenis resource yang diperlukan ditandai dengan tanda bintang (*). Tentukan Nama Sumber Daya Alibaba Cloud (ARN) yang sesuai dalam elemen Resource pada kebijakan.

    • Untuk API tanpa izin tingkat resource, ditampilkan sebagai All Resources. Gunakan tanda bintang (*) dalam elemen Resource pada kebijakan.

  • Condition key: Kunci kondisi yang didefinisikan oleh layanan. Kunci ini memungkinkan kontrol granular, berlaku baik hanya untuk aksi maupun untuk aksi yang terkait dengan resource tertentu. Selain kunci kondisi spesifik layanan, Alibaba Cloud menyediakan serangkaian common condition keys yang berlaku di semua layanan yang didukung RAM.

  • Dependent action: Aksi dependen yang diperlukan untuk menjalankan aksi tersebut. Untuk menyelesaikan aksi tersebut, pengguna RAM atau role RAM harus memiliki izin untuk melakukan semua aksi dependen.

Action

Access level

Resource type

Condition key

Dependent action

yundun-waf:CreateDefenseRule

create

*All Resource

*

  • acs:ResourceGroupId
None

Parameter permintaan

Parameter

Type

Required

Description

Example

InstanceId

string

Yes

ID instans dari instans WAF.

Catatan

Anda dapat memanggil operasi DescribeInstance untuk mengkueri ID instans dari instans WAF Anda saat ini.

waf_v2_public_cn-****

TemplateId

integer

No

ID Templat perlindungan untuk aturan perlindungan yang akan dibuat.

Catatan

Parameter ini hanya diperlukan ketika DefenseType diatur ke template.

1122

DefenseScene

string

Yes

Skenario perlindungan WAF yang akan dibuat.

Ketika tipe aturan perlindungan DefenseType diatur ke template, nilai valid:

  • waf_group: perlindungan dasar.

  • waf_base: versi baru perlindungan inti Web.

  • antiscan: perlindungan Pemindaian.

  • ip_blacklist: blacklist IP.

  • custom_acl: aturan kustom.

  • whitelist: daftar putih.

  • region_block: Daftar Hitam Lokasi.

  • custom_response: tanggapan kustom lama.

  • cc: perlindungan banjir HTTP.

  • tamperproof: pencegahan perubahan web.

  • dlp: pencegahan kebocoran informasi.

  • spike_throttle: pembatasan kecepatan trafik puncak.

  • bot_manager: manajemen bot.

Ketika tipe aturan perlindungan DefenseType diatur ke resource, nilai valid:

  • account_identifier: ekstraksi akun.

  • custom_response: versi baru tanggapan kustom.

  • waf_codec: dekode.

Ketika tipe aturan perlindungan DefenseType diatur ke global, nilai valid:

  • regular_custom: ekspresi reguler kustom.

  • address_book: buku alamat.

  • custom_response: versi baru tanggapan kustom.

Catatan

Tanggapan kustom dalam konfigurasi global dapat direferensikan oleh objek atau aturan perlindungan. Ketika aturan tanggapan kustom direferensikan pada tingkat yang berbeda, prioritas efektifnya adalah: tingkat aturan > tingkat objek perlindungan > halaman default.

waf_group

Rules

string

Yes

Konten konfigurasi aturan, yang merupakan string JSON yang dibangun dari serangkaian parameter.

Catatan

Parameter spesifik bervariasi tergantung pada tipe aturan perlindungan (DefenseScene) yang ditentukan. Untuk informasi lebih lanjut, lihat Deskripsi parameter aturan perlindungan.

waf_group

ResourceManagerResourceGroupId

string

No

ID kelompok sumber daya Alibaba Cloud.

rg-acfm***q

DefenseType

string

No

Tipe aturan perlindungan.

Valid values:

  • template :

    (Default) aturan perlindungan berbasis templat.

  • resource :

    aturan tingkat objek perlindungan.

  • global :

    aturan tingkat global.

template

RegionId

string

No

Wilayah tempat instans WAF berada. Nilai valid:

  • cn-hangzhou: Tiongkok daratan.

  • ap-southeast-1: luar Tiongkok daratan.

cn-hangzhou

Resource

string

No

Objek perlindungan yang terkait dengan aturan yang akan dibuat.

Catatan

Parameter ini hanya diperlukan ketika DefenseType diatur ke resource.

sec****-waf

Deskripsi parameter aturan perlindungan

Aturan perlindungan berbasis templat (template)

Ketika tipe aturan perlindungan DefenseType diatur ke template, konten konfigurasi aturan spesifik adalah sebagai berikut.

Aturan perlindungan dasar (waf_group)

Deskripsi parameter

NamaTipeDiperlukanContohDeskripsi
statusIntegerYa1Status aturan perlindungan. Parameter ini hanya digunakan saat membuat aturan perlindungan. Untuk mengubah status aturan perlindungan, gunakan parameter RuleStatus dari operasi ModifyDefenseRuleStatus. Nilai valid:
- 0: dinonaktifkan.
- 1 (default): diaktifkan.
actionStringYablockTindakan aturan perlindungan. Nilai valid:
- block: blokir.
- monitor: monitor.
policyIdLongTidak1012ID kelompok aturan perlindungan. Nilai default: 1012 (kelompok aturan sedang).
protectionTypeStringTidaksemaTipe aturan perlindungan. Nilai valid:
- regular (default): perlindungan berbasis ekspresi reguler.
- sema: perlindungan berbasis semantik.
configStringTidak{"nonInjectionSql":1}Konfigurasi kustom dalam format string JSON. Untuk informasi lebih lanjut, lihat konfigurasi detail config.

konfigurasi detail config

  • Ketika protectionType diatur ke sema (aturan perlindungan dasar dikonfigurasi sebagai perlindungan berbasis semantik)

NamaTipeDiperlukanContohDeskripsi
nonInjectionSqlIntegerYa1Status deteksi serangan non-injeksi. Nilai valid:
- 0: dinonaktifkan.
- 1 (default): diaktifkan.

Contoh

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

Aturan perlindungan inti Web versi baru (waf_base)

Deskripsi parameter

NamaTipeDiperlukanContohDeskripsi
autoUpdateBooleanYatrueApakah akan mengaktifkan pembaruan otomatis. Nilai valid:
- true: diaktifkan.
- false: dinonaktifkan.
configArrayYa[{"ruleType":"system","ruleDetail":[{"ruleId":13000412,"ruleStatus":1,"ruleAction":"block"}]}]Konfigurasi aturan yang akan dimodifikasi. Untuk informasi lebih lanjut, lihat konfigurasi detail config.
Penting Anda dapat memanggil operasi DescribeBaseSystemRules untuk mengkueri konfigurasi aturan perlindungan sistem dari templat ini, dan memanggil operasi DescribeDefenseRules untuk mengkueri konfigurasi aturan ekspresi reguler kustom dari templat ini.

konfigurasi detail config

NamaTipeDiperlukanContohDeskripsi
ruleTypeStringYasystemTipe aturan. Nilai valid:
- system: aturan sistem dalam perlindungan dasar.
- custom: aturan ekspresi reguler kustom dalam perlindungan dasar.
ruleBatchOperationConfigStringTidakdefaultOperasi modifikasi aturan batch. Ketika bidang ini tidak kosong, bidang RuleDetail harus kosong. Nilai valid:
- default: pulihkan default.
- all_on: aktifkan semua aturan.
- all_off: nonaktifkan semua aturan.
- all_block: atur semua tindakan aturan ke blokir.
- all_monitor: atur semua tindakan aturan ke monitor.
ruleDetailArrayTidak[{"ruleId":13000412,"ruleStatus":1,"ruleAction":"block"}]]Konfigurasi aturan yang akan dimodifikasi. Bidang:
- ruleId: ID aturan.
- ruleStatus: status aturan.
- ruleAction: tindakan aturan.

Contoh

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

Aturan perlindungan pemindaian (antiscan)

Deskripsi parameter

NamaTipeDiperlukanContohDeskripsi
protectionTypeStringYahighfreqSubtipe aturan perlindungan Pemindaian. Nilai valid:
- highfreq: pemblokiran Pemindaian frekuensi tinggi.
- dirscan: pemblokiran traversal direktori.
- scantools: pemblokiran alat Pemindaian.
statusIntegerYa1Status aturan perlindungan. Parameter ini hanya digunakan saat membuat aturan perlindungan. Untuk mengubah status aturan perlindungan, gunakan parameter RuleStatus dari operasi ModifyDefenseRuleStatus. Nilai valid:
- 0: dinonaktifkan.
- 1 (default): diaktifkan.
actionStringYablockTindakan aturan perlindungan. Nilai valid:
- block: blokir.
- monitor: monitor.
actionExternalJSONTidak{"responseRuleId":123444}Konfigurasi diperluas dari tindakan aturan perlindungan. Hanya versi baru tanggapan kustom yang mendukung konfigurasi ini. Ketika action diatur ke block, Anda dapat menentukan halaman blokir kustom.
configStringTidak{"target":"remote_addr","interval":60,"ttl":180,"count":20}Konfigurasi kustom dalam format string JSON. Untuk informasi lebih lanjut, lihat konfigurasi detail config.

konfigurasi detail config

  • Ketika protectionType diatur ke highfreq (aturan perlindungan Pemindaian dikonfigurasi sebagai pemblokiran Pemindaian frekuensi tinggi)

NamaTipeDiperlukanContohDeskripsi
targetStringYaremote_addrTipe objek untuk statistik. Nilai valid:
- remote_addr (default): alamat IP.
- cookie.acw_tc: sesi.
- header: header kustom. Ketika Anda memilih header kustom, Anda harus menentukan konten header yang akan dihitung dalam parameter subkey.
- queryarg: parameter kustom. Ketika Anda memilih parameter kustom, Anda harus menentukan nama parameter kustom yang akan dihitung dalam parameter subkey.
- cookie: cookie kustom. Ketika Anda memilih cookie kustom, Anda harus menentukan konten cookie yang akan dihitung dalam parameter subkey.
subKeyStringTidakabcKarakter sub dari objek statistik. Ketika parameter target diatur ke cookie, header, atau queryarg, Anda harus menentukan informasi yang sesuai dalam parameter subkey.
intervalIntegerTidak60Periode deteksi, dalam detik. Nilai default: 60.
Nilai valid: 5 hingga 1800.
ttlIntegerTidak1800Durasi pemblokiran, dalam detik. Nilai default: 1800.
Nilai valid: 60 hingga 86400.
countIntegerTidak20Jumlah maksimum kali aturan perlindungan dasar dipicu. Nilai default: 20.
Nilai valid: 3 hingga 50000.
ruleIdCountIntegerTidak2Jumlah maksimum aturan yang dipicu. Nilai default: 2.
Nilai valid: 1 hingga 50.
  • Ketika protectionType diatur ke dirscan (aturan perlindungan Pemindaian dikonfigurasi sebagai pemblokiran traversal direktori)

NamaTipeDiperlukanContohDeskripsi
targetStringYaremote_addrObjek statistik dan pemblokiran. Nilai valid:
- remote_addr (default): alamat IP.
- cookie.acw_tc: sesi.
- header: header kustom.
- queryarg: parameter kustom.
- cookie: cookie kustom.
subKeyStringTidak1Karakter sub dari objek statistik dan pemblokiran. Konfigurasikan parameter ini hanya ketika target diatur ke header, queryarg, atau cookie.
intervalIntegerTidak60Periode deteksi, dalam detik. Nilai default: 60.
Nilai valid: 5 hingga 1800.
ttlIntegerTidak1800Durasi pemblokiran, dalam detik. Nilai default: 1800.
Nilai valid: 60 hingga 86400.
countIntegerTidak20Jumlah maksimum kali aturan perlindungan dasar dipicu. Nilai default: 20.
Nilai valid: 3 hingga 50000.
weightFloatTidak2Persentase kode tanggapan 404. Nilai default: 0.7.
Nilai valid: 0.01 hingga 1.0, akurat hingga dua desimal.
uriNumIntegerTidak2Jumlah maksimum direktori yang tidak ada. Nilai default: 50.
Nilai valid: 2 hingga 50000.

Contoh

{
    "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}\"}]"
}

Aturan blacklist IP (ip_blacklist)

Deskripsi parameter

NamaTipeDiperlukanContohDeskripsi
nameStringYaiptestNama aturan blacklist IP. Nama harus memiliki panjang 1 hingga 255 karakter dan dapat berisi karakter Mandarin, huruf, angka, garis bawah (_), titik (.), atau tanda hubung (-).
statusIntegerYa1Status aturan perlindungan. Parameter ini hanya digunakan saat membuat aturan perlindungan. Untuk mengubah status aturan perlindungan, gunakan parameter RuleStatus dari operasi ModifyDefenseRuleStatus. Nilai valid:
- 0: dinonaktifkan.
- 1 (default): diaktifkan.
actionStringYablockTindakan aturan perlindungan. Nilai valid:
- block: blokir.
- monitor: monitor.
actionExternalJSONTidak{"responseRuleId":123444}Konfigurasi diperluas dari tindakan aturan perlindungan. Hanya versi baru tanggapan kustom yang mendukung konfigurasi ini. Ketika action diatur ke block, Anda dapat menentukan halaman blokir kustom.
remoteAddrArrayYa["1.1.XX.XX", "3.1.XX.XX/24"]Daftar alamat IP yang akan ditambahkan ke blacklist IP. Gunakan format ["ip1","ip2",...].

Contoh

{
    "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}]"
}

Aturan kustom (custom_acl)

Deskripsi parameter

NamaTipeDiperlukanContohDeskripsi
nameStringYaiptestNama aturan ACL kustom. Nama harus memiliki panjang 1 hingga 255 karakter dan dapat berisi karakter Mandarin, huruf, angka, garis bawah (_), titik (.), atau tanda hubung (-).
statusIntegerYa1Status aturan perlindungan. Parameter ini hanya digunakan saat membuat aturan perlindungan. Untuk mengubah status aturan perlindungan, gunakan parameter RuleStatus dari operasi ModifyDefenseRuleStatus. Nilai valid:
- 0: dinonaktifkan.
- 1 (default): diaktifkan.
actionStringYablockTindakan aturan perlindungan. Nilai valid:
- block: blokir.
- monitor: monitor.
- js: tantangan JavaScript.
- captcha: CAPTCHA geser.
- captcha_strict: CAPTCHA geser ketat.
Catatan Tindakan aturan perlindungan yang didukung untuk aturan ACL kustom tunduk pada tindakan aturan kustom yang ditampilkan di konsol WAF.
actionExternalJSONTidak{"responseRuleId":123444}Konfigurasi diperluas dari tindakan aturan perlindungan. Hanya versi baru tanggapan kustom yang mendukung konfigurasi ini. Ketika action diatur ke block, Anda dapat menentukan halaman blokir kustom. Ketika action diatur ke captcha atau captcha_strict, Anda dapat menentukan halaman CAPTCHA geser kustom.
conditionsArrayYa[{"key":"IP","opValue":"eq","values":"11.XX.XX.1"},{"key":"Header","subKey":"abc","opValue":"contains","values":"test"}]Karakteristik trafik aturan ACL, dijelaskan dalam format string JSON. Maksimal lima kondisi pencocokan didukung. Untuk informasi lebih lanjut, lihat deskripsi konfigurasi conditions di Pengaturan parameter aturan perlindungan.
ccStatusIntegerYa1Apakah akan mengaktifkan pembatasan kecepatan. Nilai valid:
- 0: dinonaktifkan.
- 1: diaktifkan.
ratelimitJSONTidak{"target":"remote_addr","interval":5,"threshold":2,"ttl":1800,"status":{"code":404,"count":2}}Konfigurasi pembatasan kecepatan terperinci, dijelaskan dalam format string JSON. Konfigurasikan parameter ini hanya ketika ccStatus diatur ke 1. Untuk informasi lebih lanjut, lihat konfigurasi detail ratelimit di Pengaturan parameter aturan perlindungan.
effectStringTidakruleLingkup pembatasan kecepatan. Konfigurasikan parameter ini hanya ketika ccStatus diatur ke 1. Nilai valid:
- service: objek perlindungan.
- rule: aturan individu.
grayStatusIntegerTidak1Apakah akan mengaktifkan canary release untuk aturan. Nilai valid:
- 0 (default): dinonaktifkan.
- 1: diaktifkan.
grayConfigJSONTidak{"grayTarget":"header","grayRate":80,"graySubKey":"test"}Konfigurasi lingkungan canary release untuk aturan, dijelaskan dalam format string JSON. Konfigurasikan parameter ini hanya ketika grayStatus diatur ke 1. Untuk informasi lebih lanjut, lihat konfigurasi detail grayConfig di Pengaturan parameter aturan perlindungan.
timeConfigJSONTidak{"timeScope":"period","timeZone":8,"timePeriods":[{"start":1758771729787,"end":1758816000000}]}Konfigurasi terjadwal untuk aturan, dijelaskan dalam format string JSON. Untuk informasi lebih lanjut, lihat konfigurasi detail timeConfig di Pengaturan parameter aturan perlindungan.

Contoh

{
    "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\"}}]"
}

Aturan daftar putih (whitelist)

Deskripsi parameter

NamaTipeDiperlukanContohDeskripsi
nameStringYawhitelistTestNama aturan daftar putih. Nama harus memiliki panjang 1 hingga 255 karakter dan dapat berisi karakter Mandarin, huruf, angka, garis bawah (_), titik (.), atau tanda hubung (-).
statusIntegerYa1Status aturan perlindungan. Parameter ini hanya digunakan saat membuat aturan perlindungan. Untuk mengubah status aturan perlindungan, gunakan parameter RuleStatus dari operasi ModifyDefenseRuleStatus. Nilai valid:
- 0: dinonaktifkan.
- 1 (default): diaktifkan.
conditionsArrayYa[{"key":"IP","opValue":"eq","values":"11.XX.XX.1"},{"key":"Header","subKey":"abc","opValue":"contains","values":"test"}]Karakteristik trafik daftar putih, dijelaskan dalam format string JSON. Maksimal lima kondisi pencocokan didukung. Untuk informasi lebih lanjut, lihat deskripsi konfigurasi conditions di Pengaturan parameter aturan perlindungan.
tagsArrayYa["waf", "regular"]Daftar modul yang diterapkan oleh daftar putih, dalam format ["XX1", "XX2",...]. Nilai valid:
- waf: semua modul.
- customrule_rule: aturan kustom tertentu.
- customrule: aturan kustom.
- blacklist: blacklist IP.
- blacklist_rule: aturan blacklist IP tertentu.
- antiscan: perlindungan Pemindaian.
- regular: aturan perlindungan dasar.
- regular_rule: aturan ekspresi reguler perlindungan dasar tertentu.
- regular_type: tipe aturan ekspresi reguler perlindungan dasar tertentu.
- regular_field: bidang perlindungan dasar tertentu.
- major_protection: perlindungan acara besar.
- cc: perlindungan banjir HTTP.
- region_block: Daftar Hitam Lokasi.
- antibot_scene: perlindungan skenario bot.
- antibot_scene_rule: ID aturan perlindungan skenario bot tertentu.
- antibot_scene_label: tipe aturan perlindungan skenario bot tertentu.
- dlp: pencegahan kebocoran informasi.
- tamperproof: pencegahan perubahan web.
- spike_throttle: perlindungan pembatasan kecepatan trafik puncak.
regularRulesArrayTidak[ "111111", "222222" ]Daftar ID aturan ekspresi reguler untuk dilewati, dalam format ["XX1", "XX2",...]. Konfigurasikan parameter ini hanya ketika modul daftar putih diatur ke aturan ekspresi reguler perlindungan dasar tertentu (parameter tags diatur ke regular_rule).
regularTypesArrayTidak[ "xss", "css" ]Daftar tipe aturan ekspresi reguler untuk dilewati, dalam format ["XX1", "XX2",...]. Konfigurasikan parameter ini hanya ketika modul daftar putih diatur ke tipe ekspresi reguler aplikasi web (parameter tags diatur ke regular_type). Nilai valid:
- sqli: injeksi SQL.
- xss: cross-site scripting.
- code_exec: eksekusi kode.
- crlf: CRLF.
- lfilei: inklusi file lokal.
- rfilei: inklusi file jarak jauh.
- webshell: WebShell.
- csrf: CSRF.
- other: lainnya.
regularFieldsArrayTidak[{"key":"URL"},{"key":"Header","subKey":"abc"}]Daftar bidang perlindungan dasar untuk dilewati, dijelaskan dalam format string JSON. Maksimal lima kondisi pencocokan didukung. Untuk informasi lebih lanjut, lihat konfigurasi detail regularFields. Konfigurasikan parameter ini hanya ketika modul daftar putih diatur ke bidang perlindungan dasar tertentu (parameter tags diatur ke regular_field).
customRulesArrayTidak[ "111111", "222222" ]Daftar ID aturan kustom untuk dilewati, dalam format ["XX1", "XX2",...]. Konfigurasikan parameter ini hanya ketika modul daftar putih diatur ke aturan kustom tertentu (parameter tags diatur ke customrule_rule).
blacklistRulesArrayTidak[ "111111", "222222" ]Daftar ID aturan blacklist IP untuk dilewati, dalam format ["XX1", "XX2",...]. Konfigurasikan parameter ini hanya ketika modul daftar putih diatur ke aturan blacklist IP tertentu (parameter tags diatur ke blacklist_rule).
botRulesArrayTidak[ "111111", "222222" ]Daftar ID aturan perlindungan skenario bot untuk dilewati, dalam format ["XX1", "XX2",...]. Konfigurasikan parameter ini hanya ketika modul daftar putih diatur ke ID aturan perlindungan skenario bot tertentu (parameter tags diatur ke antibot_scene_rule).
botLablesArrayTidak[ "abc", "cdcc" ]Daftar tipe aturan perlindungan skenario bot untuk dilewati, dalam format ["XX1", "XX2",...]. Konfigurasikan parameter ini hanya ketika modul daftar putih diatur ke tipe aturan perlindungan skenario bot tertentu (parameter tags diatur ke antibot_scene_label). Anda dapat memanggil operasi DescribeBotRuleLabels untuk mengkueri informasi tipe aturan bot.

konfigurasi detail regularFields

NamaTipeDiperlukanContohDeskripsi
keyStringYaURLBidang untuk dilewati. Nilai valid:
- URL-All: semua bidang terkait URI.
- URL: bidang URI tertentu.
- URLPath: jalur URI.
- Query-All: semua bidang terkait kueri.
- Query-Arg: parameter kueri tertentu.
- Cookie-All: semua bidang terkait cookie.
- Cookie-Exact: nama cookie tertentu.
- Header-All: semua bidang terkait header.
- Header: bidang header tertentu.
- Body-All: semua parameter body.
subKeyStringTidakabcBidang tertentu. Konfigurasikan parameter ini ketika bidang yang akan dilewati (key) diatur ke URLPath, Query-Arg, Cookie-Exact, atau Header.

Contoh

{
    "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\"]}]"
}

Aturan tanggapan kustom (custom_response)

Deskripsi parameter

NamaTipeDiperlukanContohDeskripsi
responseTypeStringYaresponse_blockTipe tanggapan kustom. Atur nilai ke response_block, yang menunjukkan tanggapan blokir.
statusIntegerYa1Status aturan perlindungan. Parameter ini hanya digunakan saat membuat aturan perlindungan. Untuk mengubah status aturan perlindungan, gunakan parameter RuleStatus dari operasi ModifyDefenseRuleStatus. Nilai valid:
- 0: dinonaktifkan.
- 1 (default): diaktifkan.
configStringYa{"responseCode":400,"responseHeaders":[{"key":"custom","value":"123"},{"key":"aaa","value":"2223"}],"responseContent":"HelloWorld"}Konfigurasi kustom dalam format string JSON. Untuk informasi lebih lanjut, lihat konfigurasi detail config.

konfigurasi detail config

NamaTipeDiperlukanContohDeskripsi
responseCodeIntegerYa400Kode tanggapan yang ditentukan.
responseHeadersArrayTidak[{"key":"custom","value":"123"},{"key":"aaaa","value":"2223"}]Daftar header tanggapan kustom, dijelaskan dalam format string JSON. key adalah bidang header, dan value adalah nilai header.
responseContentStringYahelloworldKonten tanggapan kustom.

Contoh

{
    "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}]"
}

Aturan Daftar Hitam Lokasi (region_block)

Deskripsi parameter

NamaTipeDiperlukanContohDeskripsi
cnRegionListStringTidak610000,230000Daftar Wilayah di dalam Tiongkok. Atur nilai ke ["CN"] untuk memblokir Tiongkok daratan (tidak termasuk Hong Kong (Tiongkok), Makau (Tiongkok), dan Taiwan (Tiongkok)). Pisahkan beberapa Wilayah dengan koma (,). Untuk arti kode Wilayah, lihat Kode Wilayah di dalam Tiongkok.
abroadRegionListStringTidakKE,KGDaftar Wilayah di luar Tiongkok. Pisahkan beberapa Wilayah dengan koma (,). Anda dapat memanggil operasi DescribeIpAbroadCountryInfos untuk mengkueri negara dan Wilayah luar negeri yang didukung untuk pemblokiran.
statusIntegerYa1Status aturan perlindungan. Parameter ini hanya digunakan saat membuat aturan perlindungan. Untuk mengubah status aturan perlindungan, gunakan parameter RuleStatus dari operasi ModifyDefenseRuleStatus. Nilai valid:
- 0: dinonaktifkan.
- 1 (default): diaktifkan.
actionStringYablockTindakan aturan perlindungan. Nilai valid:
- block: blokir.
- monitor: monitor.
actionExternalJSONTidak{"responseRuleId":123444}Konfigurasi diperluas dari tindakan aturan perlindungan. Hanya versi baru tanggapan kustom yang mendukung konfigurasi ini. Ketika action diatur ke block, Anda dapat menentukan halaman blokir kustom. Ketika action diatur ke captcha atau captcha_strict, Anda dapat menentukan halaman CAPTCHA geser kustom.

Kode Wilayah di dalam Tiongkok

{
    "110000": "Beijing",
    "120000": "Tianjin",
    "130000": "Hebei",
    "140000": "Shanxi",
    "150000": "Inner Mongolia",
    "210000": "Liaoning",
    "220000": "Jilin",
    "230000": "Heilongjiang",
    "310000": "Shanghai",
    "320000": "Jiangsu",
    "330000":

Elemen respons

Element

Type

Description

Example

object

Struktur tanggapan.

RequestId

string

ID permintaan.

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

RuleIds

string

ID aturan perlindungan yang dibuat. Beberapa ID dipisahkan oleh koma (,).

22215,23354,462165

Contoh

Respons sukses

JSONformat

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

Kode kesalahan

HTTP status code

Error code

Error message

Description

400 Defense.Control.DefenseWhitelistBypassRuleNotExist The whitelist protection rule does not exist. Aturan perlindungan yang masuk daftar putih dalam daftar putih tidak ada. ID Aturan: %s.
400 Defense.Control.DefenseWhitelistConfigInvalid The whitelist rule is misconfigured. Konfigurasi aturan daftar putih tidak valid: %s.
400 Defense.Control.DefenseBookTypeInvalid The address book type is illegal. Tipe buku alamat tidak valid.
400 Defense.Control.DefenseThreatIntelligenceConfigInvalid Threat Intelligence Rule configuration error. Konfigurasi aturan intelijen ancaman tidak valid. %s.
400 Defense.Control.DefenseIpCountOversize The number of IPs exceeds the limit. Jumlah alamat IP melebihi batas.

Lihat Error Codes untuk daftar lengkap.

Catatan rilis

Lihat Release Notes untuk daftar lengkap.