Saat mengonfigurasi aturan daftar putih atau kustom, Anda perlu menentukan kondisi pencocokan dan karakteristik permintaan yang ingin dideteksi oleh Web Application Firewall (WAF). Topik ini menjelaskan bidang-bidang yang dapat digunakan dalam kondisi pencocokan.
Apa itu kondisi pencocokan?
Kondisi pencocokan menentukan karakteristik permintaan yang ingin dicocokkan oleh WAF. Saat mengonfigurasi kebijakan perlindungan kustom, daftar putih, atau daftar hitam alamat IP, Anda harus mengonfigurasi match conditions. Jika permintaan cocok dengan kondisi pencocokan yang ditentukan dalam aturan perlindungan, WAF akan melakukan tindakan seperti Blokir, Validasi JavaScript, atau Pantau.
Bidang pencocokan yang didukung
Tabel berikut menjelaskan bidang pencocokan yang didukung dalam kondisi pencocokan.
Bidang Pencocokan | Operator Logis yang Didukung | Deskripsi |
URI |
| Uniform Resource Identifier (URI) dari permintaan. URI menunjukkan jalur sumber daya yang diminta. Konten pencocokan harus dimulai dengan garis miring ( |
IP |
| Alamat IP klien yang mengirim permintaan. Alamat IP yang Anda tentukan harus memenuhi persyaratan berikut:
|
Referer |
| URL halaman sumber dari mana permintaan dialihkan. |
User-Agent |
| Informasi browser tentang klien yang mengirim permintaan, termasuk browser, mesin rendering, dan versi. |
Query String |
| String kueri dalam permintaan. String kueri adalah bagian yang mengikuti tanda tanya (?) dalam URL. |
Cookie |
| Informasi cookie dalam permintaan akses. |
Content-Type |
| Tipe konten HTTP yang ditentukan untuk respons. Tipe konten HTTP dikenal sebagai Multipurpose Internet Mail Extensions (MIME) type. |
Content-Length | Nilai Kurang Dari, Sama Dengan, dan Nilai Lebih Dari | Jumlah byte dalam respons. Nilai valid: 0 hingga 8192. |
X-Forwarded-For |
| Alamat IP asal klien yang memulai permintaan akses. Header HTTP X-Forwarded-For (XFF) digunakan untuk mengidentifikasi alamat IP asal permintaan yang diteruskan oleh proxy HTTP atau instance Server Load Balancer (SLB). Header XFF hanya disertakan dalam permintaan yang diteruskan oleh proxy HTTP atau instance SLB. |
Body |
| Badan permintaan. Permintaan yang badannya melebihi 8 KB tidak lagi diblokir. |
Http-Method |
| Metode permintaan. Nilai valid: GET, POST, DELETE, PUT, OPTIONS, CONNECT, HEAD, TRACE, dan PATCH. |
Header |
| Header permintaan. Header kustom didukung. |
URI Path |
| Jalur URI dari permintaan. |
Parameter Query String |
| Parameter permintaan dalam URL. Parameter permintaan adalah bagian yang mengikuti tanda tanya (?) dalam URL. Contoh: |
Host |
| Nama domain yang diminta. |
CookieName |
| Kunci dari cookie. Contoh: |
BodyParameter |
| Nama parameter dalam badan permintaan. Contoh: jika badan permintaan berisi |
Nama File |
| Nama file di akhir jalur permintaan. Contoh: |
Ekstensi File |
| Ekstensi nama file dari file yang diminta. Contoh: |
Operator logis
Operator Logis | Deskripsi |
Termasuk Dalam dan Tidak Termasuk Dalam | Memeriksa apakah bidang pencocokan termasuk dalam konten pencocokan. |
Mengandung dan Tidak Mengandung | Memeriksa apakah bidang pencocokan mengandung konten pencocokan. |
Dalam Daftar dan Tidak Dalam Daftar | Memeriksa apakah bidang pencocokan ada dalam daftar. |
Mengandung Salah Satu dari Beberapa Nilai dan Tidak Mengandung Nilai Apapun | Memeriksa apakah bidang pencocokan mengandung salah satu nilai dari konten pencocokan. |
Sama Dengan dan Tidak Sama Dengan | Memeriksa apakah bidang pencocokan sama dengan konten pencocokan. |
Sama Dengan Salah Satu dari Beberapa Nilai dan Tidak Sama Dengan Nilai Apapun | Memeriksa apakah bidang pencocokan sama dengan salah satu nilai dari konten pencocokan. |
Panjang Sama Dengan, Panjang Lebih Dari, dan Panjang Kurang Dari | Memeriksa apakah panjang bidang pencocokan sama dengan, lebih dari, atau kurang dari panjang konten pencocokan. |
Ada dan Tidak Ada | Memeriksa apakah bidang pencocokan ada. |
Nilai Kurang Dari, Sama Dengan, dan Nilai Lebih Dari | Memeriksa apakah nilai bidang pencocokan kurang dari, sama dengan, atau lebih dari nilai konten pencocokan. |
Cocok Awalan dan Cocok Akhiran | Memeriksa apakah awalan atau akhiran bidang pencocokan mengandung konten pencocokan. |
Cocok Regex dan Ketidakcocokan Ekspresi Reguler | Mencocokkan ekspresi reguler dari bidang dan tidak mencocokkan ekspresi reguler dari bidang. |
Kosong | Memeriksa apakah konten bidang pencocokan kosong. |
Contoh Konfigurasi
Contoh 1: Jika Anda menetapkan Bidang Pencocokan ke URI, Operator Logis ke Mengandung, dan Konten Pencocokan ke
/login.php, sebuah permintaan cocok dengan aturan jika jalur yang diminta mengandung/login.php.Contoh 2: Jika Anda menetapkan Bidang Pencocokan ke IP, Operator Logis ke Termasuk Dalam, dan Konten Pencocokan ke 192.168.0.1, sebuah permintaan cocok dengan aturan jika permintaan dikirim dari klien yang alamat IP-nya adalah 192.168.0.1.