Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Minta opsi komponen
Bagian ini menjelaskan komponen permintaan web yang dapat Anda tentukan untuk diperiksa. Anda menentukan komponen permintaan untuk pernyataan aturan pertandingan yang mencari pola di dalam permintaan web. Jenis pernyataan termasuk pencocokan string, pertandingan regex, batasan ukuran, dan pernyataan serangan injeksi SQL. Untuk informasi tentang cara menggunakan pengaturan komponen permintaan ini, lihat pernyataan aturan individual. Untuk informasi selengkapnya tentang pernyataan aturan, lihatDaftar pernyataan aturan
Kecuali dinyatakan lain, jika permintaan web tidak memiliki komponen permintaan yang ditentukan dalam pernyataan aturan,AWS WAF mengevaluasi permintaan sebagai tidak cocok dengan kriteria aturan.
catatan
Anda menentukan komponen permintaan tunggal untuk setiap pernyataan aturan yang memerlukannya. Untuk memeriksa lebih dari satu komponen permintaan, buat pernyataan aturan untuk setiap komponen.
DokumentasiAWS WAF konsol dan API memberikan panduan untuk pengaturan komponen permintaan di lokasi berikut:
-
Pembuat aturan di konsol — Dalam pengaturan Pernyataan untuk jenis aturan reguler, pilih komponen yang ingin Anda periksa dalam dialog Inspect di bawah komponen Permintaan.
-
Isi pernyataan API -
FieldToMatch
Sisa bagian ini menjelaskan opsi untuk bagian permintaan web yang akan diperiksa.
Topik
Metode HTTP
Memeriksa metode HTTP untuk permintaan. Metode HTTP menunjukkan jenis operasi yang diminta oleh permintaan web untuk dilakukan sumber daya Anda yang dilindungi, sepertiPOST
atauGET
.
Header tunggal
Memeriksa header bernama tunggal dalam permintaan. Untuk opsi ini, Anda menentukan tombol header di Nama bidang header, misalnya,User-Agent
atauReferer
. Pencocokan string untuk kunci tidak peka huruf besar/kecil.
Semua header
Memeriksa semua header permintaan, termasuk cookie. Anda dapat menerapkan filter untuk memeriksa subset dari semua header. Untuk opsi ini, Anda memberikan spesifikasi berikut:
-
Pola pertandingan - Filter yang digunakan untuk mendapatkan subset header untuk diperiksa. AWS WAFmencari pola-pola ini di tombol header.
Pengaturan pola pertandingan dapat salah satu dari berikut:
-
Semua - Cocokkan semua kunci. Evaluasi kriteria pemeriksaan aturan untuk semua header.
-
Header yang dikecualikan - Periksa hanya header yang kuncinya tidak cocok dengan string yang Anda tentukan di sini. Pertandingan string untuk kunci tidak peka huruf besar/kecil.
-
Header yang disertakan - Periksa hanya header yang memiliki kunci yang cocok dengan salah satu string yang Anda tentukan di sini. Pertandingan string untuk kunci tidak peka huruf besar/kecil.
-
-
Lingkup pencocokan - Bagian header yangAWS WAF harus diperiksa dengan kriteria pemeriksaan aturan. Anda dapat menentukan Kunci, Nilai, atau Semua untuk kedua kunci dan nilai.
-
Oversize handling - BagaimanaAWS WAF seharusnya menangani permintaan yang memiliki data header yang lebih besar dari yangAWS WAF dapat diperiksa. AWS WAFdapat memeriksa paling banyak 8 KB pertama (8.192 byte) dari header permintaan dan paling banyak 200 header pertama. Konten tersedia untuk diperiksaAWS WAF hingga batas pertama tercapai. Anda dapat memilih untuk melanjutkan pemeriksaan, atau untuk melewati pemeriksaan dan menandai permintaan sebagai cocok atau tidak cocok dengan aturan. Untuk informasi selengkapnya tentang penanganan konten yang terlalu besar, lihat.
Cookie
Memeriksa semua cookie permintaan. Anda dapat menerapkan filter untuk memeriksa bagian dari semua cookie. Untuk opsi ini, Anda memberikan spesifikasi berikut:
-
Pola pencocokan - Filter yang digunakan untuk mendapatkan subset cookie untuk diperiksa. AWS WAFmencari pola-pola ini di kunci cookie.
Pengaturan pola pertandingan dapat salah satu dari berikut:
-
Semua - Cocokkan semua kunci. Evaluasi kriteria pemeriksaan aturan untuk semua cookie.
-
Cookie yang dikecualikan — Periksa hanya cookie yang kuncinya tidak cocok dengan string yang Anda tentukan di sini. Pencocokan string untuk kunci adalah peka huruf besar/kecil dan harus tepat.
-
Cookie yang disertakan - Periksa hanya cookie yang memiliki kunci yang cocok dengan salah satu string yang Anda tentukan di sini. Pencocokan string untuk kunci adalah peka huruf besar/kecil dan harus tepat.
-
-
Ruang lingkup pencocokan - Bagian cookie yangAWS WAF harus diperiksa dengan kriteria pemeriksaan aturan. Anda dapat menentukan Kunci, Nilai, atau Semua untuk kedua kunci dan nilai.
-
Penanganan oversize - BagaimanaAWS WAF harus menangani permintaan yang memiliki data cookie yang lebih besar dari yangAWS WAF dapat diperiksa. AWS WAFdapat memeriksa paling banyak 8 KB pertama (8.192 byte) dari cookie permintaan dan paling banyak 200 cookie pertama. Konten tersedia untuk diperiksaAWS WAF hingga batas pertama tercapai. Anda dapat memilih untuk melanjutkan pemeriksaan, atau untuk melewati pemeriksaan dan menandai permintaan sebagai cocok atau tidak cocok dengan aturan. Untuk informasi selengkapnya tentang penanganan konten yang terlalu besar, lihat.
Jalur URI
Memeriksa bagian URL yang mengidentifikasi sumber daya, misalnya,/images/daily-ad.jpg
. Untuk informasi, lihat Uniform Resource Identifier (URI): Generic Syntax
Jika Anda tidak menggunakan transformasi teks dengan opsi ini,AWS WAF tidak menormalkan URI dan memeriksanya persis seperti menerimanya dari klien dalam permintaan. Untuk informasi tentang transformasi teks, lihatTransformasi teks.
String kueri
Memeriksa bagian dari URL yang muncul setelah?
karakter, jika ada.
catatan
Untuk pernyataan pencocokan skrip lintas situs, sebaiknya pilih Semua parameter kueri, bukan string Kueri. Memilih Semua parameter kueri menambahkan 10 WCU ke biaya dasar.
Parameter kueri tunggal
Memeriksa parameter kueri tunggal yang telah Anda definisikan sebagai bagian dari string kueri. AWS WAFmemeriksa nilai dari parameter yang Anda tentukan.
Untuk opsi ini, Anda juga menentukan argumen Query. Misalnya, jika URLwww.xyz.com?UserName=abc&SalesRegion=seattle
, Anda dapat menentukanUserName
atauSalesRegion
untuk argumen kueri. Panjang maksimum untuk nama argumen adalah 30 karakter. Nama ini tidak peka huruf, jadi jika Anda menentukanUserName
,AWS WAF cocok dengan semua variasiUserName
, termasukusername
danUsERName
.
Jika string kueri berisi lebih dari satu instance argumen kueri yang telah Anda tentukan,AWS WAF periksa semua nilai untuk kecocokan, menggunakanOR logika. Misalnya, dalam URLwww.xyz.com?SalesRegion=boston&SalesRegion=seattle
,AWS WAF mengevaluasi nama yang telah Anda tentukan terhadapboston
danseattle
. Jika salah satu pertandingan, inspeksi adalah kecocokan.
Semua parameter kueri
Memeriksa semua parameter query dalam permintaan. Hal ini mirip dengan pilihan komponen parameter query tunggal, tetapiAWS WAF memeriksa nilai-nilai dari semua argumen dalam string query. Misalnya, jika URL tersebutwww.xyz.com?UserName=abc&SalesRegion=seattle
,AWS WAF memicu kecocokan jika nilaiUserName
atauSalesRegion
cocok dengan kriteria pemeriksaan.
Memilih opsi ini menambahkan 10 WCU ke biaya dasar.
Tubuh
Memeriksa badan permintaan, dievaluasi sebagai teks biasa. Anda juga dapat mengevaluasi tubuh sebagai JSON menggunakan jenisJSON konten.
Isi permintaan adalah bagian dari permintaan yang segera mengikuti tajuk permintaan. Ini berisi data tambahan yang diperlukan untuk permintaan web, misalnya, data dari formulir.
-
Di konsol, Anda memilih ini di bawah pilihan Request pilihan Body, dengan memilih pilihan Jenis konten Teks biasa.
-
Di API, dalam
FieldToMatch
spesifikasi aturan, Anda menentukanBody
untuk memeriksa badan permintaan sebagai teks biasa.
Untuk ACL web regional,AWS WAF dapat memeriksa 8 KB pertama dari badan permintaan. Untuk CloudFront web ACL, secara default,AWS WAF dapat memeriksa 16 KB pertama, dan Anda dapat meningkatkan batas ini dalam konfigurasi ACL web Anda untuk 32 KB, 48 KB, atau 64 KB. Untuk informasi tentang mengubah limit, lihatBatas ukuran pemeriksaan tubuh untuk ACL CloudFront web.
Anda harus menentukan penanganan kebesaran untuk jenis komponen ini. Penanganan oversize mendefinisikan bagaimanaAWS WAF menangani permintaan yang memiliki data tubuh yang lebih besar dari yangAWS WAF dapat diperiksa. Anda dapat memilih untuk melanjutkan pemeriksaan, atau untuk melewati pemeriksaan dan menandai permintaan sebagai cocok atau tidak cocok dengan aturan. Untuk informasi selengkapnya tentang penanganan konten yang terlalu besar, lihatMenangani komponen permintaan web yang terlalu besar.
Anda juga dapat mengevaluasi tubuh sebagai JSON yang diurai. Untuk informasi tentang ini, lihat bagian berikut.
JSON isi JSON
Memeriksa isi permintaan, dievaluasi sebagai JSON. Anda juga dapat mengevaluasi isi sebagai teks biasa.
Isi permintaan adalah bagian dari permintaan yang segera mengikuti tajuk permintaan. Ini berisi data tambahan yang diperlukan untuk permintaan web, misalnya, data dari formulir.
-
Di konsol, Anda memilih ini di bawah pilihan Permintaan pilihan Body, dengan memilih pilihan jenis konten JSON.
-
Di API, dalam
FieldToMatch
spesifikasi aturan, Anda tentukanJsonBody
.
Untuk ACL web regional,AWS WAF dapat memeriksa 8 KB pertama dari badan permintaan. Untuk CloudFront web ACL, secara default,AWS WAF dapat memeriksa 16 KB pertama, dan Anda dapat meningkatkan batas ini dalam konfigurasi ACL web Anda untuk 32 KB, 48 KB, atau 64 KB. Untuk informasi tentang mengubah batas, lihatBatas ukuran pemeriksaan tubuh untuk ACL CloudFront web.
Anda harus menentukan penanganan kebesaran untuk jenis komponen ini. Penanganan oversize mendefinisikan bagaimanaAWS WAF menangani permintaan yang memiliki data tubuh yang lebih besar dari yangAWS WAF dapat diperiksa. Anda dapat memilih untuk melanjutkan pemeriksaan, atau untuk melewati pemeriksaan dan menandai permintaan sebagai cocok atau tidak cocok dengan aturan. Untuk informasi selengkapnya tentang penanganan konten yang terlalu besar, lihatMenangani komponen permintaan web yang terlalu besar.
SaatAWS WAF memeriksa badan permintaan web sebagai JSON yang diurai, ia mem-parsing dan mengekstrak elemen dari JSON dan memeriksa bagian yang Anda tunjukkan menggunakan kriteria pernyataan kecocokan aturan.
Memilih opsi ini menggandakan WCU biaya dasar pernyataan pertandingan. Misalnya, jika biaya dasar pernyataan pertandingan adalah 5 WCU tanpa penguraian JSON, menggunakan parsing JSON menggandakan biaya menjadi 10 WCU.
Dengan opsi ini,AWS WAF jalankan dua pola pertandingan terhadap badan permintaan web. Output dari pola pertandingan pertama digunakan sebagai masukan ke pola pertandingan kedua:
-
AWS WAFmem-parsing dan mengekstrak konten JSON dan mengidentifikasi elemen yang akan diperiksa. Untuk melakukannya,AWS WAF gunakan kriteria yang Anda berikan dalam spesifikasi badan JSON aturan.
-
AWS WAFmenerapkan transformasi teks apa pun ke elemen yang diekstrak dan kemudian cocok dengan elemen JSON yang dihasilkan yang ditetapkan terhadap kriteria kecocokan pernyataan aturan. Jika salah satu elemen cocok, permintaan web cocok untuk aturan.
Anda menentukan kriteria berikut untuk digunakanAWS WAF untuk langkah pencocokan pola pertama, untuk mengidentifikasi elemen JSON yang akan diperiksa:
-
Perilaku fallback parsing isi — Apa yangAWS WAF harus dilakukan jika isi JSON gagal untuk sepenuhnya diuraikan olehnya. Opsi nya adalah sebagai berikut:
-
Tidak ada (perilaku default) -AWS WAF mengevaluasi konten hanya sampai titik di mana ia mengalami kesalahan parsing.
-
Evaluasi sebagai string - Periksa tubuh sebagai teks biasa. AWS WAFmenerapkan perubahan teks dan kriteria pemeriksaan yang Anda tentukan untuk pemeriksaan JSON ke string teks isi.
-
Match - Memperlakukan permintaan web sebagai cocok dengan pernyataan aturan. AWS WAFmenerapkan tindakan aturan untuk permintaan.
-
Tidak cocok - Memperlakukan permintaan web sebagai tidak cocok dengan pernyataan aturan.
AWS WAF melakukan yang terbaik untuk menguraikan seluruh isi JSON, tetapi mungkin dipaksa untuk berhenti karena alasan seperti karakter yang tidak valid, duplikat kunci, pemotongan, dan konten yang simpul root-nya bukan objek atau susunan.
AWS WAFmenguraikan JSON dalam contoh berikut sebagai dua pasangan nilai key:value yang valid:
-
Kehilangan koma:
{"key1":"value1""key2":"value2"}
-
Kehilangan titik dua:
{"key1":"value1","key2""value2"}
-
Titik dua ekstra:
{"key1"::"value1","key2""value2"}
-
-
Lingkup pencocokan JSON - Jenis elemen dalam JSON yangAWS WAF harus diperiksa. Anda dapat menentukan Kunci, Nilai, atau Semua untuk kedua kunci dan nilai.
-
Konten untuk diperiksa - Elemen dalam JSON yang diurai dan diekstraksi yangAWS WAF ingin Anda periksa.
Anda harus menentukan salah satu hal berikut:
-
Konten JSON penuh - Evaluasi semua elemen dalam JSON diurai.
-
Hanya elemen yang disertakan - Evaluasi hanya elemen dalam JSON yang cocok dengan kriteria Pointer JSON yang Anda berikan. Untuk informasi tentang sintaks JSON Pointer, lihat dokumentasi Internet Engineering Task Force (IETF) Object Notation (JSON) dokumentasi Internet Engineering Task Force (IETF)JavaScript Object Notation (JSON)
. Jangan gunakan opsi ini untuk menyertakan semua jalur di JSON. Gunakan konten Full JSON sebagai gantinya.
Misalnya, di konsol, Anda dapat memberikan berikut ini:
/dogs/0/name /dogs/1/name
Di API atau CLI, Anda dapat memberikan berikut ini:
"IncludedPaths": ["/dogs/0/name", "/dogs/1/name"]
-
Contoh skenario pemeriksaan tubuh JSON
Jika pengaturan elemen yang disertakan adalah/a/b
, maka untuk tubuh JSON berikut:
{ "a":{ "c":"d", "b":{ "e":{ "f":"g" } } } }
Daftar berikut menjelaskan apa yangAWS WAF akan dievaluasi untuk setiap pengaturan lingkup pertandingan. Kuncinyab
, yang merupakan bagian dari jalur elemen yang disertakan, tidak dievaluasi.
-
Untuk lingkup pertandingan diatur ke semua:
e
,f,
dang
. -
Untuk lingkup pertandingan diatur ke kunci:
e
danf
. -
Untuk lingkup pertandingan diatur ke nilai-nilai:
g
.