All Products
Search
Document Center

Web Application Firewall:CreateDefenseRule

Last Updated:Sep 09, 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

*Semua Sumber daya.

*

  • 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 Template perlindungan untuk aturan perlindungan yang akan dibuat.

Catatan

Parameter ini hanya diperlukan ketika DefenseType diatur ke template. Terdapat batas atas jumlah aturan yang dapat dibuat dalam Template perlindungan yang sama. Untuk batasan spesifik, lihat Batas jumlah aturan. Ketika jumlah aturan telah mencapai batas atas, Anda dapat memanggil operasi CreateDefenseTemplate untuk membuat Template perlindungan baru. Anda juga dapat memanggil operasi ModifyDefenseRule untuk memodifikasi aturan yang ada.

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: Respons Kustom warisan.

  • cc: Perlindungan HTTP Flood.

  • tamperproof: pencegahan perusakan 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 Respons Kustom.

  • waf_codec: Dekoding.

  • websdk: Integrasi WebSDK.

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

  • regular_custom: Regex Kustom.

  • address_book: Buku alamat.

  • custom_response: versi baru Respons Kustom.

Catatan

Untuk respons kustom dalam konfigurasi global, pengguna dapat mereferensikannya pada tingkat objek yang dilindungi atau tingkat aturan. Ketika aturan respons kustom direferensikan pada dimensi yang berbeda, logika efektif aktual adalah: tingkat aturan > tingkat objek yang dilindungi > halaman default.

waf_group

Rules

string

Yes

Konten konfigurasi aturan, yang merupakan string yang dikonversi dari array parameter berformat JSON.

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

Apakah akan mengaktifkan mode dry run. Jika Anda tidak menentukan parameter ini, permintaan normal akan dikirim. Nilai valid:

  • true: Permintaan dry run dikirim. Sistem hanya memeriksa apakah permintaan memenuhi kondisi eksekusi tanpa melakukan operasi yang ditentukan. Jika dry run gagal, kode kesalahan yang sesuai akan dikembalikan. Jika dry run berhasil, kode kesalahan Defense.Control.DryRunOperation akan dikembalikan.

  • false: Permintaan normal dikirim. Operasi yang ditentukan dilakukan setelah permintaan lulus pemeriksaan.

false

DefenseType

string

No

ID kelompok sumber daya Alibaba Cloud.

Valid values:

  • template :

    (Default) aturan perlindungan templat.

  • resource :

    aturan tingkat objek perlindungan.

  • global :

    aturan tingkat global.

rg-acfm***q

RegionId

string

No

Tipe aturan perlindungan.

Valid values:

  • template :

    (Default) Aturan perlindungan berbasis templat.

  • resource :

    Aturan tingkat objek yang dilindungi.

  • global :

    Aturan tingkat global.

template

Resource

string

No

Wilayah tempat instans WAF berada. Nilai valid:

  • cn-hangzhou: Tiongkok Daratan.

  • ap-southeast-1: Luar Tiongkok Daratan.

cn-hangzhou

No

Objek yang dilindungi yang terkait dengan aturan yang akan dibuat.

Catatan

Parameter ini hanya diperlukan ketika DefenseType diatur ke resource.

sec****-waf

Deskripsi parameter aturan perlindungan

Batas jumlah aturan

Dalam templat perlindungan yang sama, terdapat batas atas jumlah aturan yang dapat dibuat untuk skenario perlindungan dasar (DefenseScene). Skenario berikut memiliki batas tetap. Batas untuk skenario lain bergantung pada edisi instans WAF. Untuk informasi lebih lanjut, lihat Perbandingan fitur antar edisi.

Skenario perlindunganDefenseSceneBatas jumlah aturanDeskripsi
Perlindungan Web Dasarwaf_group3Satu aturan untuk tipe aturan perlindungan dasar (protectionType).
Versi baru Perlindungan Inti Webwaf_base1
Perlindungan Pemindaianantiscan3Satu aturan untuk setiap subtipe perlindungan pemindaian (protectionType): pemblokiran pemindaian frekuensi tinggi, pemblokiran traversal direktori, dan pemblokiran alat pemindaian.
Daftar Hitam Lokasiregion_block1
Respons Kustom Warisancustom_response1Batas ini berlaku untuk respons kustom warisan ketika DefenseType diatur ke template. Untuk versi baru respons kustom, lihat Perbandingan fitur antar edisi.
Perlindungan HTTP Floodcc1
Manajemen Botbot_manager—Satu aturan untuk setiap tag aturan (botRuleDetail.ruleKey) dalam aturan berbasis skenario.
Dekodingwaf_codec1
Ekstraksi Akunaccount_identifier1
Integrasi WebSDKwebsdk1
Catatan

Ketika tipe aturan perlindungan DefenseType diatur ke template dan jumlah aturan untuk skenario target dalam templat target telah mencapai batas atas, pembuatan akan gagal. Dalam hal ini, Anda dapat memanggil operasi CreateDefenseTemplate untuk membuat templat perlindungan baru. Anda juga dapat memanggil operasi ModifyDefenseRule untuk memodifikasi aturan yang ada.

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

NamaTipeWajibContohDeskripsi
statusIntegerYa1Status aturan perlindungan dasar. Parameter ini hanya digunakan untuk membuat aturan perlindungan. Untuk memodifikasi status aturan perlindungan, gunakan parameter RuleStatus dari operasi ModifyDefenseRuleStatus. Nilai valid:
- 0: Dinonaktifkan.
- 1 (default): Diaktifkan.




actionStringYablockTindakan aturan perlindungan dasar. Nilai valid:
- block: Blokir.
- monitor: Monitor.




policyIdLongTidak1012ID kelompok aturan perlindungan dasar. Nilai default: 1012 (kelompok aturan menengah).
protectionTypeStringTidaksemaTipe aturan perlindungan dasar. Nilai valid:
- regular (default): Perlindungan berbasis regex.
- 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 Web Dasar dikonfigurasi sebagai perlindungan berbasis semantik)

NamaTipeWajibContohDeskripsi
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 versi baru Perlindungan Inti Web (waf_base)

Deskripsi parameter

NamaTipeWajibContohDeskripsi
autoUpdateBooleanYatrueApakah akan mengaktifkan pembaruan otomatis. Nilai valid:
- true: Aktifkan pembaruan otomatis.
- false: Nonaktifkan pembaruan otomatis.




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 regex kustom dari templat ini.

Konfigurasi detail config

NamaTipeWajibContohDeskripsi
ruleTypeStringYasystemTipe aturan. Nilai valid:
- system: Aturan sistem dalam Perlindungan Dasar Dasar.
- custom: Aturan regex kustom dalam Perlindungan Dasar Dasar.




ruleBatchOperationConfigStringTidakdefaultOperasi modifikasi aturan batch. Ketika bidang ini tidak kosong, bidang RuleDetail harus kosong. Nilai valid:
- default: Pulihkan ke default.
- all_on: Aktifkan semua aturan.
- all_off: Nonaktifkan semua aturan.
- all_block: Atur semua tindakan aturan menjadi blokir.
- all_monitor: Atur semua tindakan aturan menjadi 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

NamaTipeWajibContohDeskripsi
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 untuk membuat aturan perlindungan. Untuk memodifikasi 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 respons 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)

NamaTipeWajibContohDeskripsi
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.













subKeyStringTidakabcFitur sub dari objek statistik. Parameter ini diperlukan ketika parameter target diatur ke cookie, header, atau queryarg.
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)

NamaTipeWajibContohDeskripsi
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.













subKeyStringTidak1Fitur 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

NamaTipeWajibContohDeskripsi
nameStringYaiptestNama aturan blacklist IP. Nama harus memiliki panjang 1 hingga 255 karakter dan dapat berisi karakter Mandarin, huruf, digit, garis bawah (_), titik (.), atau tanda hubung (-).
statusIntegerYa1Status aturan perlindungan. Parameter ini hanya digunakan untuk membuat aturan perlindungan. Untuk memodifikasi 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 respons 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, dalam 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

NamaTipeWajibContohDeskripsi
nameStringYaiptestNama aturan ACL kustom. Nama harus memiliki panjang 1 hingga 255 karakter dan dapat berisi karakter Mandarin, huruf, digit, garis bawah (_), titik (.), atau tanda hubung (-).
statusIntegerYa1Status aturan perlindungan. Parameter ini hanya digunakan untuk membuat aturan perlindungan. Untuk memodifikasi 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 respons 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 dari 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: Nonaktifkan pembatasan kecepatan.
- 1: Aktifkan pembatasan kecepatan.




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: Pembatasan kecepatan berlaku pada objek yang dilindungi.
- rule: Pembatasan kecepatan berlaku pada satu aturan.




grayStatusIntegerTidak1Apakah akan mengaktifkan canary release untuk aturan. Nilai valid:
- 0 (default): Nonaktifkan canary release.
- 1: Aktifkan canary release.




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

NamaTipeWajibContohDeskripsi
nameStringYawhitelistTestNama aturan daftar putih. Nama harus memiliki panjang 1 hingga 255 karakter dan dapat berisi karakter Mandarin, huruf, digit, garis bawah (_), titik (.), atau tanda hubung (-).
statusIntegerYa1Status aturan perlindungan. Parameter ini hanya digunakan untuk membuat aturan perlindungan. Untuk memodifikasi 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 dari 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 regex perlindungan dasar tertentu.
- regular_type: Tipe aturan regex perlindungan dasar tertentu.
- regular_field: Bidang perlindungan dasar tertentu.
- major_protection: Perlindungan Acara Besar.
- cc: Perlindungan HTTP Flood.
- 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 perusakan web.
- spike_throttle: perlindungan pembatasan kecepatan untuk trafik puncak.























































regularRulesArrayTidak[ "111111", "222222" ]Daftar ID aturan regex yang akan dilewati, dalam format ["XX1", "XX2",...]. Konfigurasikan parameter ini hanya ketika modul daftar putih diatur ke aturan regex perlindungan dasar tertentu (parameter tags diatur ke regular_rule).
regularTypesArrayTidak[ "xss", "css" ]Daftar tipe aturan regex yang akan dilewati, dalam format ["XX1", "XX2",...]. Konfigurasikan parameter ini hanya ketika modul daftar putih diatur ke tipe regex 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 yang akan 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 yang akan 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 yang akan 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 yang akan 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 yang akan 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

NamaTipeWajibContohDeskripsi
keyStringYaURLBidang yang akan dilewati. Nilai valid:
- URL-All: Semua bidang terkait URI.
- URL: Bidang URI tertentu.
- URLPath: Jalur URI.
- Query-All: Semua bidang terkait Query.
- Query-Arg: Parameter Query 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 Respons Kustom (custom_response)

Deskripsi parameter

NamaTipeWajibContohDeskripsi
responseTypeStringWajibresponse_blockTipe respons kustom. Atur nilainya ke response_block, yang menunjukkan respons blokir.
statusIntegerWajib1Status aturan perlindungan. Parameter ini hanya digunakan ketika Anda membuat aturan perlindungan. Untuk memodifikasi status aturan perlindungan, gunakan parameter RuleStatus dari operasi ModifyDefenseRuleStatus. Nilai valid:
- 0: Dinonaktifkan.
- 1 (default): Diaktifkan.




configStringWajib{"responseCode":400,"responseHeaders":[{"key":"custom","value":"123"},{"key":"aaa","value":"2223"}],"responseContent":"HelloWorld"}Informasi konfigurasi kustom, dijelaskan sebagai string JSON. Untuk informasi lebih lanjut, lihat Konfigurasi detail config.

Konfigurasi detail config

NamaTipeWajibContohDeskripsi
responseCodeIntegerWajib400Kode respons.
responseHeadersArrayOpsional[{"key":"custom","value":"123"},{"key":"aaaa","value":"2223"}]Daftar header respons kustom, dijelaskan sebagai string JSON. key menentukan bidang header, dan value menentukan nilai header.
responseContentStringWajibhelloworldKonten respons kustom.

Contoh

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

Buku alamat (address_book)

Deskripsi parameter

NamaTipeWajibContohDeskripsi
nameStringWajibbookTestNama buku alamat. Nama harus memiliki panjang 1 hingga 255 karakter dan dapat berisi huruf, digit, garis bawah (_), titik (.), dan tanda hubung (-).
valueTypeStringWajibipTipe buku alamat. Nilai valid:
- ip: Tipe alamat IP.

descriptionStringOpsionaladdressbookTestDeskripsi buku alamat.

Contoh

{
  "name": "bookTest",
  "valueType": "ip",

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 aturan perlindungan 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 ditentukan 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.
400 Defense.Control.InvalidDefenseRuleConfig Invalid protection rule configuration. %s. Konfigurasi aturan perlindungan tidak valid.

Lihat Error Codes untuk daftar lengkap.

Catatan rilis

Lihat Release Notes untuk daftar lengkap.