Menggunakan wilayah SMS untuk melindungi aplikasi Anda dari penyalahgunaan SMS

Panduan ini menunjukkan cara menggunakan region SMS untuk membatasi penggunaan verifikasi SMS Identity Platform dan melihat metrik penggunaan.

Ringkasan wilayah SMS

Region SMS adalah fitur Identity Platform yang dapat Anda gunakan untuk melindungi aplikasi Anda dari penyalahgunaan SMS.

Penyalahgunaan SMS biasanya terjadi saat pelaku kejahatan menyebabkan layanan mengirim SMS melalui operator yang memiliki perjanjian pembagian keuntungan dengan layanan tersebut. Penyalahgunaan SMS dapat meningkatkan biaya dan merusak reputasi produk Anda di kalangan pelanggan.

Karena Identity Platform memungkinkan otorisasi ponsel SMS, penyalahgunaan SMS dapat terjadi.

Fitur region SMS memungkinkan Anda menetapkan wilayah mana yang dapat menerima otorisasi ponsel SMS.

Fitur ini menyediakan hal berikut:

  • Antarmuka Firebase console untuk menyiapkan kebijakan region SMS.
  • API yang dapat Anda gunakan untuk menyiapkan kebijakan wilayah SMS.
  • Metrik yang dapat menginformasikan keputusan Anda untuk menggunakan kebijakan wilayah SMS.

Menetapkan kebijakan wilayah

Bagian ini menjelaskan kebijakan wilayah Identity Platform. Anda dapat menyiapkan jenis kebijakan berikut, dan hanya satu jenis kebijakan yang dapat diaktifkan:

  • Hanya daftar yang diizinkan: hanya wilayah yang Anda tentukan dalam daftar yang diizinkan yang dapat menerima permintaan otorisasi ponsel.
  • Hanya daftar yang ditolak: semua wilayah dapat menerima permintaan otorisasi telepon kecuali yang Anda tentukan dalam daftar tolak.

Setelah Anda mengubah konfigurasi, sistem akan segera mulai menerapkan kebijakan. Fitur ini memblokir permintaan otorisasi telepon dari wilayah yang tidak diizinkan oleh kebijakan berdasarkan kode wilayah nomor telepon.

Kebijakan khusus daftar yang diizinkan

Untuk menyiapkan kebijakan khusus daftar yang diizinkan, ikuti langkah-langkah berikut:

Firebase console

  1. Di Firebase console, buka halaman Setelan Firebase Auth.

    Buka setelan Firebase Auth

    1. Pilih SMS region policy di panel navigasi.

    2. Pilih Izinkan.

    3. Klik Pilih region.

  2. Tambahkan hanya wilayah yang ingin Anda kirimi pesan SMS. Wilayah yang tidak ada dalam daftar diblokir.

  3. Klik Simpan.

    Anda dapat mengonfigurasi daftar yang diizinkan atau ditolak, tetapi tidak keduanya. Tindakan ini akan menimpa konfigurasi sebelumnya.

Identity Toolkit API

  1. Di konsol Google Cloud, untuk mencetak token akses project Anda, jalankan perintah berikut:

    gcloud auth print-access-token --project=PROJECT_ID
    
  2. Perbarui konfigurasi project Anda untuk menyertakan kebijakan baru menggunakan Identity Toolkit API:

    curl -X PATCH -d "{'sms_region_config':{'allowlist_only':{'allowed_regions':['REGION_LIST']}}}" \
    -H 'Authorization: Bearer ACCESS_TOKEN' \
    -H 'Content-Type: application/json' \
    'https://identitytoolkit.googleapis.com/admin/v2/projects/PROJECT_ID/config?updateMask=sms_region_config'
    

Ganti kode berikut:

  • ACCESS_TOKEN: token akses yang Anda buat sebelumnya.
  • REGION_LIST: satu atau beberapa region, misalnya, IN atau US.
  • PROJECT_ID: project ID Anda.

Anda harus memberikan update mask untuk mencegah kolom lain diubah.

Kebijakan khusus daftar tolak

Untuk menyiapkan kebijakan khusus daftar tolak, ikuti langkah-langkah berikut:

Firebase Console

  1. Di Firebase console, buka halaman Firebase Auth Settings, lalu pilih SMS region policy di panel navigasi.

    Buka setelan Firebase Auth

    1. Pilih Tolak.

    2. Klik Pilih region.

  2. Tambahkan wilayah yang ingin Anda blokir pengiriman pesan SMSnya. Wilayah yang tidak ada dalam daftar akan diizinkan.

  3. Klik Simpan.

    Anda dapat mengonfigurasi daftar yang diizinkan atau ditolak, tetapi tidak keduanya. Tindakan ini akan menimpa konfigurasi sebelumnya.

Identity Toolkit API

  1. Di konsol Google Cloud, untuk mencetak token akses project Anda, jalankan perintah berikut:

    gcloud auth print-access-token --project=PROJECT_ID
    
  2. Perbarui konfigurasi project Anda untuk menyertakan kebijakan baru menggunakan Identity Toolkit API:

    curl -X PATCH -d "{'sms_region_config':{'denylist_only':{'disallowed_regions':['REGION_LIST']}}}" \
    -H 'Authorization: Bearer ACCESS_TOKEN' \
    -H 'Content-Type: application/json' \
    'https://identitytoolkit.googleapis.com/admin/v2/projects/PROJECT_ID/config?updateMask=sms_region_config'
    

Ganti kode berikut:

  • ACCESS_TOKEN: token akses yang Anda buat sebelumnya.
  • REGION_LIST: satu atau beberapa region, misalnya, IN atau US.
  • PROJECT_ID: project ID Anda.

Anda harus menyediakan update mask untuk mencegah kolom lain diubah.

Mengakses metrik penggunaan SMS regional

Bagian ini menjelaskan cara melihat metrik penggunaan SMS.

Untuk melihat metrik, lakukan tindakan berikut:

  1. Di konsol Google Cloud, buka halaman Metrics Explorer di Cloud Monitoring:

    Buka Cloud Monitoring.

  2. Pilih kolom berikut:

    • identitytoolkit.googleapis.com/usage/sent_sms_count,
    • identitytoolkit.googleapis.com/usage/blocked_sms_count, dan
    • firebaseauth.googleapis.com/phone_auth/phone_verification_count.

    Perhatikan bahwa metrik memiliki region_code kolom. Anda menggunakan kode ini untuk melihat wilayah yang menerima otorisasi SMS.

  3. Hitung tingkat keberhasilan verifikasi sebagai verification_success_rate = phone_verification_count/sent_sms_count, di region tertentu. Biasanya, tingkat keberhasilan verifikasi di atas 75% dianggap dapat diterima.

verification_success_rate yang rendah dapat menunjukkan penyalahgunaan, terutama di wilayah tempat Anda tidak berharap untuk memiliki pengguna. Biasanya, tingkat keberhasilan verifikasi di bawah 75% dianggap rendah.

Jika mencurigai adanya penyalahgunaan SMS, Anda dapat menyetel kebijakan wilayah.