Uso de regiones de SMS para proteger su aplicación del abuso de SMS
Esta guía le muestra cómo utilizar regiones de SMS para restringir el uso de verificación de SMS de Identity Platform y ver métricas de uso.
Descripción general de las regiones de SMS
Las regiones de SMS son una función de Identity Platform que puede utilizar para proteger sus aplicaciones del abuso de SMS.
El abuso de SMS suele ocurrir cuando un actor malintencionado hace que un servicio envíe SMS a través de un operador con el que tiene un acuerdo de reparto de ingresos. El abuso de SMS puede generar mayores costos y dañar la reputación de su producto ante los clientes.
Debido a que Identity Platform permite autorizaciones telefónicas por SMS, se puede producir abuso de SMS.
La función de regiones de SMS le permite establecer qué regiones pueden recibir autorizaciones telefónicas por SMS.
La característica proporciona lo siguiente:
- Una interfaz de consola de Firebase para que puedas configurar tu política de región de SMS.
- Una API para que usted pueda configurar su política de región de SMS.
- Métricas que pueden informar su decisión de utilizar una política de región de SMS.
Establecer una política de región
Esta sección describe una política de región de Identity Platform. Puede configurar los siguientes tipos de políticas y solo una puede estar activa:
- Solo lista de permitidos: solo las regiones que especifique en una lista de permitidos pueden recibir solicitudes de autorización telefónica.
- Solo lista de denegados: todas las regiones pueden recibir solicitudes de autorización telefónica, excepto las que usted especifique en una lista de denegados.
Después de cambiar la configuración, el sistema comienza inmediatamente a aplicar la política. Bloquea las solicitudes de autorización telefónica de las regiones que no están permitidas por la política según el código de región del número de teléfono.
Política de solo lista blanca
Para configurar una política de lista únicamente permitida, siga estos pasos:
Consola de base de fuego
En Firebase console, vaya a la página Configuración de autenticación de Firebase .
Vaya a la configuración de autenticación de Firebase
Seleccione la política de región de SMS en el panel de navegación.
Seleccione Permitir .
Haga clic en Seleccionar regiones .
Agregue solo las regiones a las que desea que se envíen los mensajes SMS. Las regiones que no están en la lista están bloqueadas.
Haga clic en Guardar .
Puede configurar una lista permitida o una lista prohibida, pero no ambas. Al hacerlo, se sobrescribe cualquier configuración anterior.
API del kit de herramientas de identidad
En el Google Cloud consola, para imprimir un token de acceso para su proyecto, ejecute el siguiente comando:
gcloud auth print-access-token --project=
PROJECT_ID
Actualice la configuración de su proyecto para incluir su nueva política usando la API Identity Toolkit :
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'
Reemplace lo siguiente:
-
ACCESS_TOKEN
: el token de acceso que generaste anteriormente. -
REGION_LIST
: una o más regiones, por ejemplo,IN
oUS
. -
PROJECT_ID
: su ID de proyecto.
Debe proporcionar una máscara de actualización para evitar que se cambien otros campos.
Política de lista exclusiva de denegados
Para configurar una política solo de lista negra, siga estos pasos:
Consola de base de fuego
En Firebase console, vaya a la página Configuración de autenticación de Firebase y seleccione la política de región de SMS en el panel de navegación.
Vaya a la configuración de autenticación de Firebase
Seleccione Denegar .
Haga clic en Seleccionar regiones .
Agregue las regiones a las que desee bloquear el envío de mensajes SMS. Se permitirán regiones que no estén en la lista.
Haga clic en Guardar .
Puede configurar una lista permitida o una lista prohibida, pero no ambas. Al hacerlo, se sobrescribe cualquier configuración anterior.
API del kit de herramientas de identidad
En el Google Cloud consola, para imprimir un token de acceso para su proyecto, ejecute el siguiente comando:
gcloud auth print-access-token --project=
PROJECT_ID
Actualice la configuración de su proyecto para incluir su nueva política usando la API Identity Toolkit :
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'
Reemplace lo siguiente:
-
ACCESS_TOKEN
: el token de acceso que generaste anteriormente. -
REGION_LIST
: una o más regiones, por ejemplo,IN
oUS
. -
PROJECT_ID
: su ID de proyecto.
Debe proporcionar una máscara de actualización para evitar que se cambien otros campos.
Acceda a métricas regionales de uso de SMS
Esta sección describe cómo ver las métricas de uso de SMS.
Para ver las métricas, haga lo siguiente:
En el Google Cloud consola, vaya a la página del explorador de métricas en Cloud Monitoring:
Seleccione los siguientes campos:
- identidadtoolkit.googleapis.com/usage/sent_sms_count,
- identidadtoolkit.googleapis.com/usage/blocked_sms_count, y
- firebaseauth.googleapis.com/phone_auth/phone_verification_count.
Tenga en cuenta que las métricas tienen un campo código_región. Utilice este código para ver las regiones que reciben autorizaciones por SMS.
Calcule la tasa de éxito de la verificación como
verification_success_rate = phone_verification_count/sent_sms_count
, en una región particular. Normalmente, las tasas de éxito de la verificación superiores al 75 % se consideran aceptables.
Una verification_success_rate
baja puede indicar abuso, especialmente en una región en la que no se esperaría tener usuarios. Normalmente, las tasas de éxito de la verificación inferiores al 75 % se consideran bajas.
Si sospecha de abuso de SMS, puede establecer una política regional .