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

In diesem Leitfaden erfahren Sie, wie Sie mithilfe von SMS-Regionen die Nutzung der SMS-Bestätigung von Identity Platform einschränken und Nutzungsmesswerte aufrufen.

SMS-Regionen – Übersicht

SMS-Regionen sind 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 den Kunden beeinträchtigen.

Da die Identity Platform SMS-Autorisierungen zulässt, kann es zu SMS-Missbrauch kommen.

Mit der Funktion „SMS-Regionen“ können Sie festlegen, in welchen Regionen SMS-Autorisierungen für Smartphones empfangen werden können.

Die Funktion bietet folgende Vorteile:

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

Richtlinie für Speicherorte festlegen

In diesem Abschnitt wird eine Identity Platform-Regionrichtlinie 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 Anfragen zur Autorisierung von Anrufen erhalten.
  • Nur Sperrliste:Alle Regionen können Anfragen zur Autorisierung von Telefonnummern erhalten, mit Ausnahme derjenigen, die Sie in einer Sperrliste angeben.

Nachdem Sie die Konfiguration geändert haben, beginnt das System sofort, die Richtlinie durchzusetzen. Es werden Autorisierungsanfragen für Smartphones aus Regionen blockiert, die gemäß der Richtlinie nicht zulässig sind. Dabei wird der Regionscode der Telefonnummer verwendet.

Richtlinie mit Zulassungsliste

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

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 die SMS gesendet werden sollen. Regionen, die nicht in der Liste enthalten sind, werden blockiert.

  3. Klicken Sie auf Speichern.

    Sie können entweder eine Zulassungsliste oder eine Sperrliste konfigurieren, aber nicht beides. Dadurch wird jede 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 zu drucken:

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

    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 zuvor generierte Zugriffstoken.
  • REGION_LIST: eine oder mehrere Regionen, z. B. IN oder US.
  • PROJECT_ID: Ihre Projekt-ID.

Sie müssen eine Updatemaske angeben, um zu verhindern, dass andere Felder geändert werden.

Richtlinie mit ausschließlich 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 die keine SMS gesendet werden sollen. Regionen, die nicht in der Liste enthalten sind, sind zulässig.

  3. Klicken Sie auf Speichern.

    Sie können entweder eine Zulassungsliste oder eine Sperrliste konfigurieren, aber nicht beides. Dadurch wird jede 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 zu drucken:

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

    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'
    

Ersetzen Sie Folgendes:

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

Sie müssen eine Updatemaske angeben, um zu verhindern, dass andere Felder geändert werden.

Auf regionale Messwerte zur 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 -Konsole die Seite Metrics Explorer in Cloud Monitoring auf:

    Rufen Sie Cloud Monitoring auf.

  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 Erfolgsquote der Überprüfung in einer bestimmten Region als verification_success_rate = phone_verification_count/sent_sms_count. In der Regel gelten Erfolgsquoten von über 75% als akzeptabel.

Ein niedriger verification_success_rate kann auf Missbrauch hinweisen, insbesondere in einer Region, in der Sie keine Nutzer erwarten würden. In der Regel gelten Erfolgsraten unter 75 % als niedrig.

Wenn Sie den Verdacht haben, dass SMS missbraucht werden, können Sie eine regionale Richtlinie festlegen.