SMS-Regionen verwenden, um Ihre App vor SMS-Missbrauch zu schützen

In diesem Leitfaden erfahren Sie, wie Sie SMS-Regionen verwenden, um die Nutzung der SMS-Bestätigung von Identity Platform einzuschränken und Nutzungsstatistiken anzusehen.

Übersicht über SMS-Regionen

„SMS-Regionen“ ist eine Identity Platform-Funktion, mit der Sie Ihre Apps vor SMS-Missbrauch schützen können.

SMS-Missbrauch tritt in der Regel auf, wenn ein böswilliger Akteur einen Dienst dazu veranlasst, SMS über einen Mobilfunkanbieter zu senden, mit dem er eine Umsatzbeteiligungsvereinbarung hat. SMS-Missbrauch kann zu höheren Kosten führen und den Ruf Ihres Produkts bei Kunden schädigen.

Da die Identity Platform die Autorisierung per SMS ermöglicht, kann es zu SMS-Missbrauch kommen.

Mit der Funktion „SMS-Regionen“ können Sie festlegen, in welchen Regionen SMS-Telefonautorisierungen empfangen werden können.

Die Funktion bietet Folgendes:

  • Eine Firebase Console-Oberfläche, über die Sie Ihre SMS-Regionsrichtlinie einrichten können.
  • Eine API, mit der Sie Ihre SMS-Regionsrichtlinie einrichten können.
  • Messwerte, die Ihnen bei der Entscheidung helfen können, ob Sie eine Richtlinie für SMS-Regionen verwenden möchten.

Richtlinie für Speicherorte festlegen

In diesem Abschnitt wird eine Identity Platform-Regionsrichtlinie beschrieben. Sie können die folgenden Arten von Richtlinien einrichten. Es kann jeweils nur eine aktiv sein:

  • Nur Zulassungsliste:Nur die Regionen, die Sie in einer Zulassungsliste angeben, können Telefonautorisierungsanfragen erhalten.
  • Nur Sperrliste:In allen Regionen können Telefonautorisierungsanfragen empfangen werden, mit Ausnahme der Regionen, die Sie in einer Sperrliste angeben.

Nachdem Sie die Konfiguration geändert haben, beginnt das System sofort mit der Durchsetzung der Richtlinie. Es werden Telefonautorisierungsanfragen aus den Regionen blockiert, die gemäß der Richtlinie basierend auf dem Regionscode der Telefonnummer nicht zulässig sind.

Richtlinie für Zulassungslisten

So richten Sie eine Richtlinie ein, die nur Zulassungslisten verwendet:

Firebase Console

  1. Rufen Sie in der Firebase Console die Seite Firebase Auth-Einstellungen auf.

    Zu den Firebase Auth-Einstellungen

    1. Wählen Sie im Navigationsbereich SMS-Regionsrichtlinie aus.

    2. Wählen Sie Zulassen aus.

    3. Klicken Sie auf Regionen auswählen.

  2. Fügen Sie nur Regionen hinzu, in denen Sie SMS-Nachrichten senden möchten. Regionen, die nicht auf der Liste stehen, werden blockiert.

  3. Klicken Sie auf Speichern.

    Sie können entweder eine Zulassungsliste oder eine Sperrliste konfigurieren, aber nicht beides. Dadurch wird die vorherige Konfiguration überschrieben.

Identity Toolkit API

  1. Führen Sie in der Google Cloud -Konsole den folgenden Befehl aus, um ein Zugriffstoken für Ihr Projekt auszugeben:

    gcloud auth print-access-token --project=PROJECT_ID
    
  2. Aktualisieren Sie Ihre Projektkonfiguration, um Ihre neue Richtlinie mit der Identity Toolkit API einzuschließen:

    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'
    

Ersetzen Sie Folgendes:

  • ACCESS_TOKEN: das Zugriffstoken, das Sie zuvor generiert haben.
  • REGION_LIST: eine oder mehrere Regionen, z. B. IN oder US. Um Missbrauch einzuschränken, empfehlen wir, nur die Regionen zuzulassen, in denen Sie SMS-Nachrichten senden möchten.
  • PROJECT_ID: Ihre Projekt-ID.

Sie müssen eine Aktualisierungsmaske angeben, damit keine anderen Felder geändert werden.

Nur Sperrliste

So richten Sie eine Richtlinie ein, die nur eine Sperrliste enthält:

Firebase Console

  1. Rufen Sie in der Firebase Console die Seite Firebase Auth-Einstellungen auf und wählen Sie im Navigationsbereich SMS-Regionsrichtlinie aus.

    Zu den Firebase Auth-Einstellungen

    1. Wählen Sie Ablehnen aus.

    2. Klicken Sie auf Regionen auswählen.

  2. Fügen Sie alle Regionen hinzu, in denen Sie das Senden von SMS-Nachrichten blockieren möchten. Regionen, die nicht in der Liste enthalten sind, sind zulässig. Für einen besseren Schutz vor Missbrauch empfehlen wir, eine Richtlinie zu verwenden, die nur Zulassungslisten zulässt, und alle Regionen zu deaktivieren, in denen Sie keine SMS senden möchten.

  3. Klicken Sie auf Speichern.

    Sie können entweder eine Zulassungsliste oder eine Sperrliste konfigurieren, aber nicht beides. Dadurch wird die vorherige Konfiguration überschrieben.

Identity Toolkit API

  1. Führen Sie in der Google Cloud -Konsole den folgenden Befehl aus, um ein Zugriffstoken für Ihr Projekt auszugeben:

    gcloud auth print-access-token --project=PROJECT_ID
    
  2. Aktualisieren Sie Ihre Projektkonfiguration, um Ihre neue Richtlinie mit der Identity Toolkit API einzuschließen:

    curl -X PATCH -d "{'sms_region_config':{'allow_by_default':{'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'
    

Ersetzen Sie Folgendes:

  • ACCESS_TOKEN: das Zugriffstoken, das Sie zuvor generiert haben.
  • REGION_LIST: eine oder mehrere Regionen, z. B. IN oder US.
  • PROJECT_ID: Ihre Projekt-ID.

Sie müssen eine Aktualisierungsmaske angeben, damit keine anderen Felder geändert werden.

Auf Messwerte zur regionalen SMS-Nutzung zugreifen

In diesem Abschnitt wird beschrieben, wie Sie Messwerte zur SMS-Nutzung aufrufen.

So rufen Sie die Messwerte auf:

  1. Rufen Sie in der Google Cloud Console die Seite Metrics Explorer in Cloud Monitoring auf:

    Zu Cloud Monitoring

  2. Wählen Sie die folgenden Felder aus:

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

    Die Messwerte haben das Feld „region_code“. Mit diesem Code können Sie die Regionen aufrufen, in denen SMS-Autorisierungen empfangen werden.

  3. Berechnen Sie die Erfolgsrate der Bestätigung als verification_success_rate = phone_verification_count/sent_sms_count in einer bestimmten Region. In der Regel gelten Erfolgsraten bei der Bestätigung von über 75% als akzeptabel.

Eine niedrige verification_success_rate kann auf Missbrauch hindeuten, insbesondere in einer Region, in der Sie keine Nutzer erwarten. In der Regel gelten Bestätigungsraten unter 75 % als niedrig.

Wenn Sie den Verdacht haben, dass SMS missbräuchlich verwendet werden, können Sie eine Richtlinie für Regionen festlegen.