SMS-Regionen verwenden, um Ihre App vor SMS-Missbrauch zu schützen
In diesem Leitfaden erfahren Sie, wie Sie mit SMS-Regionen den Zugriff auf Identity Platform-SMS einschränken Überprüfung der Nutzung und Aufrufen von Nutzungsmesswerten.
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 höhere Kosten verursachen und den Ruf Ihres Produkts bei den Kunden schädigen.
Da Identity Platform SMS-Telefonautorisierungen zulässt, kann es zu Missbrauch von SMS kommen.
Mit der Funktion für SMS-Regionen können Sie festlegen, in welchen Regionen SMS-Anrufe empfangen werden können. Autorisierungen.
Die Funktion bietet Folgendes:
- Eine Firebase Console-Oberfläche, auf der Sie Ihre Richtlinie für SMS-Regionen 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.
Regionsrichtlinie festlegen
In diesem Abschnitt wird eine Identity Platform-Regionrichtlinie beschrieben. Sie können die folgenden Arten von Richtlinien, wobei nur eine aktiv sein kann:
- 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 Telefonautorisierungsanfragen erhalten, mit Ausnahme derjenigen, die Sie in einer Sperrliste angeben.
Nachdem Sie die Konfiguration geändert haben, beginnt das System sofort damit, . 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 zulässt:
Firebase Console
Rufen Sie in der Firebase Console die Seite Firebase Auth-Einstellungen auf.
Zu den Firebase Auth-Einstellungen
Wählen Sie im Navigationsbereich Richtlinie für SMS-Region aus.
Wählen Sie Zulassen aus.
Klicken Sie auf Regionen auswählen.
Fügen Sie nur Regionen hinzu, in die SMS gesendet werden sollen. Regionen, die nicht in der Liste enthalten sind, werden blockiert.
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
Führen Sie in der Google Cloud Console den folgenden Befehl aus, um ein Zugriffstoken für Ihr Projekt zu drucken:
gcloud auth print-access-token --project=
PROJECT_ID
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 Zugriffstoken, das Sie zuvor generiert haben.REGION_LIST
: eine oder mehrere Regionen, z. B.IN
oderUS
.PROJECT_ID
: Ihre Projekt-ID.
Sie müssen eine Update-Maske angeben, um zu verhindern, dass andere Felder geändert werden.
Reine Sperrliste-Richtlinie
So richten Sie eine Richtlinie ein, die nur eine Sperrliste enthält:
Firebase Console
Rufen Sie in der Firebase Console die Seite Firebase Auth-Einstellungen auf und wählen Sie im Navigationsbereich Richtlinie für SMS-Region aus.
Zu den Firebase Auth-Einstellungen
Wählen Sie Ablehnen aus.
Klicken Sie auf Regionen auswählen.
Fügen Sie alle Regionen hinzu, in denen das Senden von SMS blockiert werden soll. Regionen, die nicht auf der Liste stehen, werden zugelassen.
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
Führen Sie in der Google Cloud Console den folgenden Befehl aus, um ein Zugriffstoken für Ihr Projekt zu drucken:
gcloud auth print-access-token --project=
PROJECT_ID
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 Zugriffstoken, das Sie zuvor generiert haben.REGION_LIST
: eine oder mehrere Regionen, z. B.IN
oderUS
.PROJECT_ID
: Ihre Projekt-ID.
Sie müssen eine Updatemaske angeben, um zu verhindern, dass andere Felder geändert werden.
Auf regionale SMS-Nutzungsmesswerte zugreifen
In diesem Abschnitt wird beschrieben, wie Sie Messwerte zur SMS-Nutzung aufrufen.
So rufen Sie die Messwerte auf:
Rufen Sie in der Google Cloud Console in Cloud Monitoring die Seite Metrics Explorer auf:
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.
Beachten Sie, dass die Messwerte das Feld „region_code“ haben. Mit diesem Code können Sie Anzeigen der Regionen, die SMS-Autorisierungen erhalten
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
die Nutzer nicht erwarten würden. Normalerweise liegt die Erfolgsquote bei der Bestätigung unter 75 %.
gelten als niedrig.
Wenn Sie den Verdacht haben, dass SMS missbraucht werden, können Sie eine regionale Richtlinie festlegen.