Mengaitkan AWS WAF web ACL dengan kumpulan pengguna - Amazon Cognito

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

Mengaitkan AWS WAF web ACL dengan kumpulan pengguna

AWS WAF adalah firewall aplikasi web. Dengan daftar kontrol akses AWS WAF web (webACL), Anda dapat melindungi kumpulan pengguna dari permintaan yang tidak diinginkan ke UI yang dihosting dan titik akhir API layanan Amazon Cognito. Web ACL memberi Anda kontrol halus atas semua permintaan HTTPS web yang ditanggapi oleh kumpulan pengguna Anda. Untuk informasi selengkapnya tentang AWS WAF webACLs, lihat Mengelola dan menggunakan daftar kontrol akses web (webACL) di Panduan AWS WAF Pengembang.

Jika Anda memiliki AWS WAF web yang ACL terkait dengan kumpulan pengguna, Amazon Cognito meneruskan header dan konten permintaan non-rahasia yang dipilih dari pengguna Anda. AWS WAF AWS WAF memeriksa isi permintaan, membandingkannya dengan aturan yang Anda tentukan di web AndaACL, dan mengembalikan respons ke Amazon Cognito.

Hal-hal yang perlu diketahui tentang AWS WAF web ACLs dan Amazon Cognito

  • AWS WAF tidak tersedia di semua Wilayah AWS tempat Anda dapat membuat kumpulan pengguna. Saat ini Anda tidak dapat menerapkan web ACLs ke kumpulan pengguna di Wilayah berikut:

    • Kanada Barat (Calgary)

  • Permintaan yang diblokir AWS WAF tidak dihitung terhadap kuota tingkat permintaan untuk jenis permintaan apa pun. AWS WAF Handler dipanggil sebelum penangan pelambatan API -level.

  • Saat Anda membuat webACL, sejumlah kecil waktu berlalu sebelum web ACL sepenuhnya disebarkan dan tersedia untuk Amazon Cognito. Waktu propagasi bisa dari beberapa detik hingga beberapa menit. AWS WAF mengembalikan a WAFUnavailableEntityExceptionketika Anda mencoba untuk mengaitkan web ACL sebelum sepenuhnya disebarkan.

  • Anda dapat mengaitkan satu web ACL dengan kumpulan pengguna.

  • Permintaan Anda mungkin menghasilkan muatan yang lebih besar dari batas apa yang AWS WAF dapat diperiksa. Lihat Penanganan komponen permintaan ukuran besar di Panduan AWS WAF Pengembang untuk mempelajari cara mengonfigurasi cara AWS WAF menangani permintaan oversize dari Amazon Cognito.

  • Anda tidak dapat mengaitkan web ACL yang menggunakan pencegahan pengambilalihan akun Kontrol AWS WAF Penipuan (ATP) dengan kumpulan pengguna Amazon Cognito. Anda menerapkan ATP fitur saat menambahkan grup aturan AWS-AWSManagedRulesATPRuleSet terkelola. Sebelum Anda mengaitkannya dengan kumpulan pengguna, pastikan bahwa web Anda ACL tidak menggunakan grup aturan terkelola ini.

  • Bila Anda memiliki AWS WAF web yang ACL terkait dengan kumpulan pengguna, dan aturan di web Anda ACL menunjukkanCAPTCHA, ini dapat menyebabkan kesalahan yang tidak dapat dipulihkan dalam pendaftaran UI yang dihosting. TOTP Untuk membuat aturan yang memiliki CAPTCHA tindakan dan tidak memengaruhi UI yang dihostingTOTP, lihatMengonfigurasi AWS WAF web Anda ACL untuk UI yang dihosting TOTP MFA.

AWS WAF memeriksa permintaan ke titik akhir berikut.

UI yang Dihosting

Permintaan ke semua titik akhir di. Titik akhir federasi kumpulan pengguna dan referensi UI yang dihosting

APIOperasi publik

Permintaan dari aplikasi Anda ke Amazon Cognito API yang tidak menggunakan AWS kredensional untuk mengotorisasi. Ini termasuk API operasi seperti InitiateAuth, RespondToAuthChallenge, dan GetUser. APIOperasi yang berada dalam lingkup AWS WAF tidak memerlukan otentikasi dengan AWS kredensional. Mereka tidak diautentikasi, atau diotorisasi dengan string sesi atau token akses. Untuk informasi selengkapnya, lihat Kumpulan pengguna Amazon Cognito operasi API yang diautentikasi dan tidak diautentikasi.

Anda dapat mengonfigurasi aturan di web Anda ACL dengan tindakan aturan yang Menghitung, Mengizinkan, Memblokir, atau menyajikan sebagai CAPTCHArespons terhadap permintaan yang cocok dengan aturan. Untuk informasi selengkapnya, lihat AWS WAF aturan di Panduan AWS WAF Pengembang. Bergantung pada tindakan aturan, Anda dapat menyesuaikan respons yang dikembalikan Amazon Cognito ke pengguna Anda.

penting

Pilihan Anda untuk menyesuaikan respons kesalahan tergantung pada cara Anda membuat API permintaan.

  • Anda dapat menyesuaikan kode kesalahan dan badan respons permintaan UI yang dihosting. Anda hanya dapat menyajikan a CAPTCHA untuk dipecahkan oleh pengguna Anda di UI yang dihosting.

  • Untuk permintaan yang Anda buat dengan kumpulan pengguna Amazon CognitoAPI, Anda dapat menyesuaikan badan respons permintaan yang menerima respons Blokir. Anda juga dapat menentukan kode kesalahan khusus dalam kisaran 400-499.

  • The AWS Command Line Interface (AWS CLI) dan AWS SDKs mengembalikan ForbiddenException kesalahan ke permintaan yang menghasilkan Blok atau CAPTCHArespons.

Mengaitkan web ACL dengan kumpulan pengguna Anda

Untuk bekerja dengan web ACL di kumpulan pengguna Anda, prinsipal AWS Identity and Access Management (IAM) Anda harus memiliki izin Amazon Cognito berikut. Untuk informasi tentang AWS WAF izin, lihat AWS WAF APIizin di Panduan AWS WAF Pengembang.

  • cognito-idp:AssociateWebACL

  • cognito-idp:DisassociateWebACL

  • cognito-idp:GetWebACLForResource

  • cognito-idp:ListResourcesForWebACL

Meskipun Anda harus memberikan IAM izin, tindakan yang tercantum hanya izin dan tidak sesuai dengan operasi. API

AWS WAF Untuk mengaktifkan kumpulan pengguna Anda dan mengaitkan web ACL

  1. Masuk ke konsol Amazon Cognito.

  2. Di panel navigasi, pilih Kumpulan Pengguna, dan pilih kumpulan pengguna yang ingin Anda edit.

  3. Pilih tab Properti kumpulan pengguna.

  4. Pilih Edit di sebelah AWS WAF.

  5. Di bawah AWS WAF, pilih Gunakan AWS WAF dengan kumpulan pengguna Anda.

    Screenshot dari kotak AWS WAF dialog dengan Gunakan AWS WAF dengan kumpulan pengguna Anda dipilih.
  6. Pilih AWS WAF Web ACL yang sudah Anda buat, atau pilih Buat web ACL AWS WAF untuk membuatnya di AWS WAF sesi baru di AWS Management Console.

  7. Pilih Simpan perubahan.

Untuk mengaitkan web secara terprogram ACL dengan kumpulan pengguna Anda di AWS Command Line Interface atau anSDK, gunakan AssociateWebACLdari file. AWS WAF API Amazon Cognito tidak memiliki API operasi terpisah yang mengaitkan web. ACL

Pengujian dan pencatatan AWS WAF web ACLs

Saat Anda menetapkan tindakan aturan ke Count di web AndaACL, AWS WAF tambahkan permintaan ke hitungan permintaan yang cocok dengan aturan. Untuk menguji web ACL dengan kumpulan pengguna Anda, tetapkan tindakan aturan ke Hitung dan pertimbangkan volume permintaan yang cocok dengan setiap aturan. Misalnya, jika aturan yang ingin disetel ke tindakan Blokir cocok dengan sejumlah besar permintaan yang Anda tentukan sebagai lalu lintas pengguna normal, Anda mungkin perlu mengonfigurasi ulang aturan Anda. Untuk informasi selengkapnya, lihat Menguji dan menyetel AWS WAF perlindungan Anda di Panduan AWS WAF Pengembang.

Anda juga dapat mengonfigurasi header permintaan log AWS WAF ke grup CloudWatch log Amazon Logs, bucket Amazon Simple Storage Service (Amazon S3), atau Amazon Data Firehose. Anda dapat mengidentifikasi permintaan Amazon Cognito yang Anda buat dengan kumpulan pengguna API oleh dan. x-amzn-cognito-client-id x-amzn-cognito-operation-name Permintaan UI yang di-host hanya menyertakan x-amzn-cognito-client-id header. Untuk informasi selengkapnya, lihat Mencatat ACL lalu lintas web di Panduan AWS WAF Pengembang.

AWS WAF web ACLs tidak tunduk pada harga untuk fitur keamanan lanjutan Amazon Cognito. Fitur keamanan AWS WAF melengkapi fitur keamanan canggih Amazon Cognito. Anda dapat mengaktifkan kedua fitur di kumpulan pengguna. AWS WAF tagihan secara terpisah untuk pemeriksaan permintaan kumpulan pengguna. Untuk informasi selengkapnya, silakan lihat Harga AWS WAF.

Data AWS WAF permintaan logging tunduk pada penagihan tambahan oleh layanan tempat Anda menargetkan log Anda. Untuk informasi selengkapnya, lihat Harga untuk mencatat informasi ACL lalu lintas web di Panduan AWS WAF Pengembang.