CAPTCHAdan perilaku Challenge tindakan - AWS WAF, AWS Firewall Manager, dan AWS Shield Advanced

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

CAPTCHAdan perilaku Challenge tindakan

Ketika permintaan web cocok dengan kriteria inspeksi aturan dengan CAPTCHA atau Challenge tindakan, AWS WAF menentukan cara menangani permintaan sesuai dengan status token dan konfigurasi waktu imunitasnya. AWS WAF juga mempertimbangkan apakah permintaan dapat menangani teka-teki CAPTCHA atau pengantara skrip tantangan. Script dirancang untuk ditangani sebagai konten HTML, dan mereka hanya dapat ditangani dengan benar oleh klien yang mengharapkan konten HTML.

catatan

Anda akan dikenakan biaya tambahan ketika Anda menggunakan tindakan CAPTCHA atau Challenge aturan di salah satu aturan Anda atau sebagai penggantian tindakan aturan dalam grup aturan. Untuk informasi selengkapnya, silakan lihat Harga AWS WAF.

Bagaimana tindakan menangani permintaan web

AWS WAF menerapkan CAPTCHA atau Challenge tindakan untuk permintaan web sebagai berikut:

  • Token yang valid — AWS WAF menangani ini mirip dengan Count tindakan. AWS WAF menerapkan label dan kustomisasi permintaan apa pun yang telah Anda konfigurasikan untuk tindakan aturan, dan kemudian terus mengevaluasi permintaan menggunakan aturan yang tersisa di ACL web.

  • Token yang hilang, tidak valid, atau kedaluwarsa — AWS WAF menghentikan evaluasi ACL web dari permintaan dan memblokirnya pergi ke tujuan yang dimaksudkan.

    AWS WAF menghasilkan respons yang dikirim kembali ke klien, sesuai dengan jenis tindakan aturan:

    • Challenge— AWS WAF termasuk yang berikut dalam tanggapan:

      • Header x-amzn-waf-action dengan nilaichallenge.

        catatan

        Header ini tidak tersedia untuk JavaScript aplikasi yang berjalan di browser klien. Untuk detailnya, lihat bagian berikut.

      • Kode status HTTP202 Request Accepted.

      • Jika permintaan berisi Accept header dengan nilaitext/html, responsnya menyertakan pengantara JavaScript halaman dengan skrip tantangan.

    • CAPTCHA— AWS WAF termasuk yang berikut dalam tanggapan:

      • Header x-amzn-waf-action dengan nilaicaptcha.

        catatan

        Header ini tidak tersedia untuk JavaScript aplikasi yang berjalan di browser klien. Untuk detailnya, lihat bagian berikut.

      • Kode status HTTP405 Method Not Allowed.

      • Jika permintaan berisi Accept header dengan nilaitext/html, responsnya mencakup pengantara JavaScript halaman dengan skrip CAPTCHA.

Untuk mengonfigurasi waktu kedaluwarsa token di ACL web atau level aturan, lihat. Kedaluwarsa stempel waktu: waktu kekebalan token AWS WAF

Header tidak tersedia untuk JavaScript aplikasi yang berjalan di browser klien

Saat AWS WAF menanggapi permintaan klien dengan CAPTCHA atau respons tantangan, itu tidak menyertakan header berbagi sumber daya lintas asal (CORS). Header CORS adalah seperangkat header kontrol akses yang memberi tahu browser web klien domain, metode HTTP, dan header HTTP mana yang dapat digunakan oleh aplikasi. JavaScript Tanpa header CORS, JavaScript aplikasi yang berjalan di browser klien tidak diberikan akses ke header HTTP sehingga tidak dapat membaca x-amzn-waf-action header yang disediakan di dan tanggapan. CAPTCHA Challenge

Apa yang dilakukan tantangan dan pengantara CAPTCHA

Ketika pengantara tantangan berjalan, setelah klien merespons dengan sukses, jika belum memiliki token, pengantara menginisialisasi satu untuk itu. Kemudian memperbarui token dengan stempel waktu pemecahan tantangan.

Ketika pengantara CAPTCHA berjalan, jika klien belum memiliki token, pengantara CAPTCHA memanggil skrip tantangan terlebih dahulu untuk menantang browser dan menginisialisasi token. Kemudian interstisial menjalankan teka-teki CAPTCHA. Ketika pengguna akhir berhasil menyelesaikan teka-teki, pengantara memperbarui token dengan cap waktu pemecahan CAPTCHA.

Dalam kedua kasus, setelah klien merespons dengan sukses dan skrip memperbarui token, skrip mengirimkan kembali permintaan web asli menggunakan token yang diperbarui.

Anda dapat mengonfigurasi cara AWS WAF menangani token. Untuk informasi, lihat AWS WAF token permintaan web.