Perlindungan ancaman - Amazon Cognito

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

Perlindungan ancaman

Perlindungan ancaman adalah istilah kolektif untuk fitur yang memantau operasi pengguna untuk tanda-tanda pengambilalihan akun dan secara otomatis merespons akun pengguna yang aman. Anda dapat menerapkan pengaturan perlindungan ancaman kepada pengguna saat mereka masuk dengan alur otentikasi standar dan kustom.

Perlindungan ancaman menghasilkan log yang merinci proses masuk, keluar, dan aktivitas pengguna lainnya. Anda dapat mengekspor log ini ke sistem pihak ketiga. Untuk informasi selengkapnya, lihat Melihat dan mengekspor riwayat acara pengguna.

Konsep penegakan perlindungan ancaman

Perlindungan ancaman dimulai dalam mode audit saja di mana kumpulan pengguna Anda memantau aktivitas pengguna, menetapkan tingkat risiko, dan menghasilkan log. Sebagai praktik terbaik, jalankan dalam mode audit saja selama dua minggu atau lebih sebelum Anda mengaktifkan mode fungsi penuh. Mode fungsi penuh mencakup serangkaian reaksi otomatis terhadap aktivitas berisiko yang terdeteksi dan kata sandi yang dikompromikan. Dengan mode khusus audit, Anda dapat memantau penilaian ancaman yang dilakukan Amazon Cognito. Anda juga dapat memberikan umpan balik yang melatih fitur pada positif palsu dan negatif.

Anda dapat mengonfigurasi penegakan perlindungan ancaman di tingkat kumpulan pengguna untuk mencakup semua klien aplikasi di kumpulan pengguna, dan pada tingkat klien aplikasi individual. Konfigurasi perlindungan ancaman klien aplikasi mengesampingkan konfigurasi kumpulan pengguna. Untuk mengonfigurasi perlindungan ancaman untuk klien aplikasi, navigasikan ke setelan klien aplikasi dari tab Integrasi aplikasi kumpulan pengguna Anda di konsol Amazon Cognito. Di sana, Anda dapat Menggunakan pengaturan tingkat klien dan mengonfigurasi penegakan hukum eksklusif untuk klien aplikasi.

Selain itu, Anda dapat mengonfigurasi perlindungan ancaman secara terpisah untuk jenis otentikasi standar dan kustom.

Perlindungan ancaman untuk otentikasi standar dan otentikasi khusus

Cara Anda dapat mengonfigurasi perlindungan ancaman bergantung pada jenis otentikasi yang Anda lakukan di kumpulan pengguna dan klien aplikasi Anda. Masing-masing jenis otentikasi berikut dapat memiliki mode penegakan dan respons otomatis mereka sendiri.

Otentikasi standar

Otentikasi standar adalah login pengguna, sign-out, dan manajemen kata sandi dengan alur nama pengguna-kata sandi dan di UI yang dihosting. Perlindungan ancaman Amazon Cognito memantau operasi untuk indikator risiko saat masuk dengan UI yang dihosting atau menggunakan parameter berikut: API AuthFlow

InitiateAuth

USER_PASSWORD_AUTH,USER_SRP_AUTH. Fitur kredensyal yang disusupi tidak memiliki akses ke kata sandi USER_SRP_AUTH saat masuk, dan tidak memantau atau menindaklanjuti peristiwa dengan alur ini.

AdminInitiateAuth

ADMIN_USER_PASSWORD_AUTH,USER_SRP_AUTH. Fitur kredensyal yang disusupi tidak memiliki akses ke kata sandi USER_SRP_AUTH saat masuk, dan tidak memantau atau menindaklanjuti peristiwa dengan alur ini.

Anda dapat mengatur mode Penegakan untuk otentikasi standar hanya untuk Audit atau fungsi Penuh. Untuk menonaktifkan pemantauan ancaman untuk otentikasi standar, nonaktifkan fitur keamanan lanjutan.

Otentikasi kustom

Otentikasi khusus adalah login pengguna dengan pemicu Lambda tantangan khusus. Anda tidak dapat melakukan otentikasi khusus di UI yang dihosting. Perlindungan ancaman Amazon Cognito memantau operasi untuk indikator risiko saat mereka masuk dengan API AuthFlow parameter CUSTOM_AUTH dan. InitiateAuth AdminInitiateAuth

Anda dapat mengatur mode Penegakan untuk autentikasi kustom hanya untuk Audit, Fungsi penuh, atau Tidak ada penegakan hukum. Opsi Tidak ada penegakan menonaktifkan pemantauan ancaman untuk otentikasi khusus tanpa memengaruhi fitur keamanan lanjutan lainnya.

Prasyarat perlindungan ancaman

Sebelum memulai, Anda perlu melakukan hal berikut:

Menyiapkan fitur keamanan canggih dan perlindungan ancaman

Ikuti petunjuk ini untuk menyiapkan fitur keamanan lanjutan Amazon Cognito.

catatan

Untuk menyiapkan konfigurasi perlindungan ancaman yang berbeda untuk klien aplikasi di konsol kumpulan pengguna Amazon Cognito, pilih klien aplikasi dari tab Integrasi aplikasi dan pilih Gunakan setelan tingkat klien.

AWS Management Console
Untuk mengonfigurasi keamanan lanjutan untuk kolam pengguna
  1. Masuk ke Konsol Amazon Cognito. Jika diminta, masukkan AWS kredensil Anda.

  2. Pilih Kolam Pengguna.

  3. Pilih kolam pengguna yang ada dari daftar, atau buat kolam pengguna.

  4. Pilih tab Keamanan lanjutan dan pilih Aktifkan.

  5. Pilih metode perlindungan ancaman yang ingin Anda konfigurasikan: Otentikasi standar dan kustom. Anda dapat mengatur mode penegakan yang berbeda untuk otentikasi kustom dan standar, tetapi mereka berbagi konfigurasi respons otomatis dalam mode fungsi penuh.

  6. Pilih Edit.

  7. Pilih mode Penegakan. Untuk segera merespons risiko yang terdeteksi, pilih Fungsi lengkap dan konfigurasikan respons otomatis untuk kredensi yang dikompromikan dan otentikasi adaptif. Untuk mengumpulkan informasi di log tingkat pengguna dan masuk CloudWatch, pilih Audit saja.

    Harga keamanan tingkat lanjut berlaku dalam mode Audit saja dan fungsi penuh. Untuk informasi selengkapnya, lihat Harga Amazon Cognito.

    Kami menyarankan agar Anda menyimpan fitur keamanan tingkat lanjut dalam mode audit selama dua minggu sebelum mengaktifkan tindakan. Selama waktu ini, Amazon Cognito dapat mempelajari pola penggunaan pengguna aplikasi Anda dan Anda dapat memberikan umpan balik peristiwa untuk menyesuaikan respons.

  8. Jika Anda memilih Audit saja, pilih Simpan perubahan. Jika Anda memilih Fungsi penuh:

    1. Pilih apakah Anda akan mengambil tindakan Kustom atau menggunakan atau Cognito default untuk menanggapi dugaan kredensial Terkompromi. Cognito default adalah:

      1. Mendeteksi kredenal yang dikompromikan saat Masuk, Mendaftar, dan Perubahan Kata Sandi.

      2. Menanggapi kredenal yang dikompromikan dengan tindakan Blokir login.

    2. Jika Anda memilih Tindakan kustom untuk kredenial yang dikompromikan, pilih tindakan kumpulan pengguna yang akan digunakan Amazon Cognito untuk deteksi Peristiwa dan respons kredenal yang dikompromikan yang Anda ingin diambil oleh Amazon Cognito. Anda dapat Memblokir proses masuk atau Izinkan masuk dengan kredensyal yang dicurigai disusupi.

    3. Pilih cara menanggapi upaya masuk berbahaya di bawah Autentikasi adaptif. Pilih apakah Anda akan mengambil tindakan Kustom atau menggunakan atau Cognito default untuk menanggapi aktivitas berbahaya yang dicurigai. Saat Anda memilih Cognito default, Amazon Cognito memblokir proses masuk di semua tingkat risiko dan tidak memberi tahu pengguna.

    4. Jika Anda memilih Tindakan kustom untuk otentikasi Adaptif, pilih Tindakan respons risiko otomatis yang akan diambil Amazon Cognito sebagai respons terhadap risiko yang terdeteksi berdasarkan tingkat keparahan. Ketika Anda menetapkan respons terhadap tingkat risiko, Anda tidak dapat menetapkan respons yang kurang membatasi ke tingkat risiko yang lebih tinggi. Anda dapat menetapkan tanggapan berikut untuk tingkat risiko:

      1. Izinkan masuk - Jangan mengambil tindakan pencegahan.

      2. Opsional MFA - Jika pengguna telah MFA mengonfigurasi, Amazon Cognito akan selalu meminta pengguna untuk memberikan faktor kata sandi satu kali (TOTP) tambahan SMS atau berbasis waktu saat mereka masuk. Jika pengguna tidak MFA mengonfigurasi, mereka dapat melanjutkan masuk secara normal.

      3. Memerlukan MFA - Jika pengguna telah MFA mengonfigurasi, Amazon Cognito akan selalu meminta pengguna untuk memberikan tambahan SMS atau TOTP faktor saat mereka masuk. Jika pengguna belum MFA mengonfigurasi, Amazon Cognito akan meminta mereka untuk mengaturnya. MFA Sebelum Anda MFA meminta pengguna secara otomatis, konfigurasikan mekanisme di aplikasi Anda untuk mengambil nomor telepon SMSMFA, atau untuk mendaftarkan aplikasi autentikator. TOTP MFA

      4. Blokir masuk - Cegah pengguna masuk.

      5. Beri tahu pengguna - Kirim pesan email ke pengguna dengan informasi tentang risiko yang terdeteksi Amazon Cognito dan respons yang telah Anda ambil. Anda dapat menyesuaikan template pesan email untuk pesan yang Anda kirim.

  9. Jika Anda memilih Beri tahu pengguna pada langkah sebelumnya, Anda dapat menyesuaikan pengaturan pengiriman email dan templat pesan email untuk autentikasi adaptif.

    1. Di bawah Konfigurasi email, pilih SESWilayah, alamat FROM email, nama FROM pengirim, dan alamat email REPLY -TO yang ingin Anda gunakan dengan autentikasi adaptif. Untuk informasi selengkapnya tentang mengintegrasikan pesan email kumpulan pengguna Anda dengan Amazon Simple Email Service, lihat Pengaturan email untuk kumpulan pengguna Amazon Cognito.

      Riwayat peristiwa pengguna
    2. Perluas templat Email untuk menyesuaikan notifikasi autentikasi adaptif dengan pesan email versi teks biasa HTML dan teks biasa. Untuk mempelajari lebih lanjut tentang templat pesan email, lihatTemplate pesan.

  10. Perluas pengecualian alamat IP untuk membuat daftar Always-allow atau Always-block atau rentang IPv6 alamat yang akan selalu diizinkan IPv4 atau diblokir, terlepas dari penilaian risiko keamanan tingkat lanjut. Tentukan rentang alamat IP dalam CIDRnotasi (seperti 192.168.100.0/24).

  11. Pilih Simpan perubahan.

API (user pool)

Untuk mengatur konfigurasi keamanan lanjutan untuk kumpulan pengguna, kirim SetRiskConfigurationAPIpermintaan yang menyertakan UserPoolId parameter, tetapi bukan ClientId parameter. Berikut ini adalah contoh badan permintaan untuk kumpulan pengguna. Konfigurasi risiko ini mengambil serangkaian tindakan yang meningkat berdasarkan tingkat keparahan risiko dan memberi tahu pengguna di semua tingkat risiko. Ini menerapkan blok kredensial-dikompromikan untuk operasi pendaftaran.

Untuk menerapkan konfigurasi ini, Anda harus mengatur AdvancedSecurityMode ke ENFORCED dalam UpdateUserPoolAPIpermintaan CreateUserPoolatau terpisah. Untuk informasi selengkapnya tentang template placeholder seperti {username} dalam contoh ini, lihat. Mengkonfigurasi verifikasi dan pesan undangan

{ "AccountTakeoverRiskConfiguration": { "Actions": { "HighAction": { "EventAction": "MFA_REQUIRED", "Notify": true }, "LowAction": { "EventAction": "NO_ACTION", "Notify": true }, "MediumAction": { "EventAction": "MFA_IF_CONFIGURED", "Notify": true } }, "NotifyConfiguration": { "BlockEmail": { "Subject": "You have been blocked for suspicious activity", "TextBody": "We blocked {username} at {login-time} from {ip-address}." }, "From": "admin@example.com", "MfaEmail": { "Subject": "Suspicious activity detected, MFA required", "TextBody": "Unexpected sign-in from {username} on device {device-name}. You must use MFA." }, "NoActionEmail": { "Subject": "Suspicious activity detected, secure your user account", "TextBody": "We noticed suspicious sign-in activity by {username} from {city}, {country} at {login-time}. If this was not you, reset your password." }, "ReplyTo": "admin@example.com", "SourceArn": "arn:aws:ses:us-west-2:123456789012:identity/admin@example.com" } }, "CompromisedCredentialsRiskConfiguration": { "Actions": { "EventAction": "BLOCK" }, "EventFilter": [ "SIGN_UP" ] }, "RiskExceptionConfiguration": { "BlockedIPRangeList": [ "192.0.2.0/24","198.51.100.0/24" ], "SkippedIPRangeList": [ "203.0.113.0/24" ] }, "UserPoolId": "us-west-2_EXAMPLE" }
API (app client)

Untuk mengatur konfigurasi keamanan lanjutan untuk klien aplikasi, kirim SetRiskConfigurationAPIpermintaan yang menyertakan UserPoolId parameter dan ClientId parameter. Berikut ini adalah contoh badan permintaan untuk klien aplikasi. Konfigurasi risiko ini lebih parah daripada konfigurasi kumpulan pengguna, memblokir entri berisiko tinggi. Ini juga menerapkan blok kredensial-kompromi untuk operasi pendaftaran, masuk, dan mengatur ulang kata sandi.

Untuk menerapkan konfigurasi ini, Anda harus mengatur AdvancedSecurityMode ke ENFORCED dalam UpdateUserPoolAPIpermintaan CreateUserPoolatau terpisah. Untuk informasi selengkapnya tentang template placeholder seperti {username} dalam contoh ini, lihat. Mengkonfigurasi verifikasi dan pesan undangan

{ "AccountTakeoverRiskConfiguration": { "Actions": { "HighAction": { "EventAction": "BLOCK", "Notify": true }, "LowAction": { "EventAction": "NO_ACTION", "Notify": true }, "MediumAction": { "EventAction": "MFA_REQUIRED", "Notify": true } }, "NotifyConfiguration": { "BlockEmail": { "Subject": "You have been blocked for suspicious activity", "TextBody": "We blocked {username} at {login-time} from {ip-address}." }, "From": "admin@example.com", "MfaEmail": { "Subject": "Suspicious activity detected, MFA required", "TextBody": "Unexpected sign-in from {username} on device {device-name}. You must use MFA." }, "NoActionEmail": { "Subject": "Suspicious activity detected, secure your user account", "TextBody": "We noticed suspicious sign-in activity by {username} from {city}, {country} at {login-time}. If this was not you, reset your password." }, "ReplyTo": "admin@example.com", "SourceArn": "arn:aws:ses:us-west-2:123456789012:identity/admin@example.com" } }, "ClientId": "1example23456789", "CompromisedCredentialsRiskConfiguration": { "Actions": { "EventAction": "BLOCK" }, "EventFilter": [ "SIGN_UP", "SIGN_IN", "PASSWORD_CHANGE" ] }, "RiskExceptionConfiguration": { "BlockedIPRangeList": [ "192.0.2.1/32","192.0.2.2/32" ], "SkippedIPRangeList": [ "192.0.2.3/32","192.0.2.4/32" ] }, "UserPoolId": "us-west-2_EXAMPLE" }