Configuración de mensajes SMS para grupos de usuarios de Amazon Cognito - Amazon Cognito

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Configuración de mensajes SMS para grupos de usuarios de Amazon Cognito

Algunos eventos de Amazon Cognito para su grupo de usuarios pueden hacer que Amazon Cognito envíe mensajes de texto SMS a sus usuarios. Por ejemplo, si configura su grupo de usuarios para que requiera la verificación por teléfono, Amazon Cognito envía un mensaje de texto SMS cuando un usuario se registra con una cuenta nueva en su aplicación o cuando restablece su contraseña. En función de la acción que inicie el mensaje de texto SMS, en este se incluirá un código de verificación, una contraseña temporal o un mensaje de bienvenida.

En Amazon Cognito, se utiliza Amazon Simple Notification Service (Amazon SNS) para el envío de mensajes de texto SMS. Si es la primera vez que envía un mensaje de texto a través de Amazon Cognito o Amazon SNS, Amazon SNS lo colocará en un entorno aislado. En el entorno aislado, puede probar los mensajes de texto SMS de sus aplicaciones. En el entorno de pruebas, los mensajes solo se pueden enviar a números de teléfono verificados.

Amazon SNS cobra por los mensajes de texto SMS. Para obtener más información, consulte Precios de Amazon SNS.

nota

Debido al volumen de tráfico de SMS no solicitado en todo el mundo, algunos gobiernos imponen barreras entre los remitentes y los destinatarios de los mensajes SMS. Cuando utilice mensajes SMS de la autenticación multifactor y las actualizaciones de usuario, debe tomar medidas adicionales para garantizar que los mensajes se entreguen. También debe supervisar las normas relacionadas con los mensajes SMS en los países en los que puedan vivir los usuarios y mantener actualizada la configuración de los mensajes SMS. Para obtener más información, consulte Mensajería de texto móvil (SMS) en la Guía para desarrolladores de Amazon Simple Notification Service.

El uso de mensajes SMS para autenticar y verificar a los usuarios no es una práctica recomendada de seguridad. Los números de teléfono pueden cambiar de propietario y es posible que no representen de manera fiable algo que tenga del factor de MFA para los usuarios. En su lugar, implemente TOTP MFA en tu aplicación o con el IdP de terceros. Además, puede crear factores adicionales de autenticación personalizados con Desencadenadores de Lambda de desafío de autenticación personalizado.

Amazon Cognito envía mensajes SMS a los usuarios con un código que pueden ingresar. En la siguiente tabla se muestran los eventos que pueden generar un mensaje SMS.

Opciones de mensajes

Actividad Operación de la API Opciones de entrega Opciones de formato Personalizable Plantilla de mensaje
Forgot password ForgotPassword Email, SMS code No N/A
Invitation AdminCreateUser Email, SMS code Yes Mensaje de invitación
Self-registration SignUp Email, SMS code, link Yes Mensaje de verificación
Email address or phone number verification UpdateUserAttributes Email, SMS code Yes Mensaje de verificación
Multi-factor authentication (MFA) AdminInitiateAuth, InitiateAuth SMS, authenticator app code Yes¹ Mensaje de MFA

¹ Para mensajes SMS.

Configuración de mensajes SMS por primera vez en grupos de usuarios de Amazon Cognito

En Amazon Cognito, se utiliza Amazon SNS para enviar mensajes SMS a los grupos de usuarios. También puede utilizar un Desencadenador de Lambda para remitentes personalizados de SMS para usar sus propios recursos para enviar mensajes SMS. La primera vez que configura Amazon SNS para enviar mensajes de texto SMS en una determinada región Región de AWS, Amazon SNS lo coloca Cuenta de AWS en el entorno limitado de SMS de esa región. Amazon SNS utiliza el entorno limitado para evitar el fraude y el abuso y para cumplir los requisitos de conformidad. Cuando estás en Cuenta de AWS un entorno de pruebas, Amazon SNS impone algunas restricciones. Por ejemplo, puede enviar mensajes de texto a un máximo de 10 números de teléfono que haya verificado con Amazon SNS. Mientras Cuenta de AWS permanezca en el entorno limitado, no utilice la configuración de Amazon SNS para aplicaciones que estén en producción. Cuando se encuentra en el entorno de pruebas, Amazon Cognito no puede enviar mensajes a los números de teléfono de sus usuarios.

Prepare un rol de IAM que Amazon Cognito pueda usar para enviar mensajes SMS con Amazon SNS

Cuando envía un mensaje SMS desde su grupo de usuarios, Amazon Cognito asume un rol de IAM en su cuenta. En Amazon Cognito, se utiliza el permiso sns:Publish asignado a ese rol para enviar mensajes SMS a los usuarios. En la consola de Amazon Cognito, puede configurar una IAM role selection (Selección de roles de IAM) desde la pestaña Messaging (Mensajes) de su grupo de usuarios, en SMS o haga esta selección con el asistente de creación de grupos de usuarios.

En el ejemplo siguiente de política de confianza de rol de IAM se concede a grupos de usuarios de Amazon Cognito una capacidad limitada para que adopte un rol de IAM. Amazon Cognito solo puede adoptar el rol cuando lo hace en nombre de los grupos de usuarios en la condición aws:SourceArn y en la Cuenta de AWS en la condición aws:SourceAccount.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "cognito-idp.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "<your account number>" }, "ArnLike": { "aws:SourceArn": "<your user pool ARN>" } } }] }

Puede especificar un ARN del grupo de usuarios o un ARN comodín en el valor de la condición aws:SourceArn. Busque los ARN de sus grupos de usuarios en el AWS Management Console quirófano mediante una DescribeUserPoolsolicitud de API.

Para obtener más información sobre los roles de IAM y las políticas de confianza, consulte Términos y conceptos de roles en la Guía del usuario de AWS Identity and Access Management .

Elija el Región de AWS para los mensajes SMS de Amazon SNS

En algunas Regiones de AWS, puede elegir la región que contiene los recursos de Amazon SNS que quiere usar para los mensajes SMS de Amazon Cognito. En cualquier Región de AWS lugar donde Amazon Cognito esté disponible, excepto en Asia Pacífico (Seúl), puede utilizar los recursos de Amazon SNS en Región de AWS el lugar donde creó su grupo de usuarios. Para que la mensajería SMS sea más rápida y fiable cuando pueda elegir entre regiones, utilice los recursos de Amazon SNS en la misma región que el grupo de usuarios.

nota

En AWS Management Console, solo puede cambiar la región de los recursos de SMS después de cambiarse a la nueva experiencia de consola de Amazon Cognito.

Elija una región para los recursos SMS en el paso Configurar entrega de mensajes del nuevo asistente del grupo de usuarios. También puede elegir Edit (Editar) bajo SMS en la pestaña Messaging (Mensajería) de un grupo de usuarios existente.

En el momento del lanzamiento Regiones de AWS, Amazon Cognito envió mensajes SMS con recursos de Amazon SNS en una región alternativa. Para establecer su región preferida, utilice el SnsRegion parámetro del SmsConfigurationTypeobjeto para su grupo de usuarios. Si crea un recurso de grupos de usuarios de Amazon Cognito mediante programación en una región de Amazon Cognito de la siguiente tabla y no proporciona un parámetro SnsRegion, el grupo de usuarios puede enviar mensajes SMS con recursos de Amazon SNS en una región de Amazon SNS heredada.

Los grupos de usuarios de Amazon Cognito en Asia Pacífico (Seúl) Región de AWS deben usar su configuración de Amazon SNS en la región Asia Pacífico (Tokio).

Amazon SNS establece la cuota de gasto para todas las cuentas nuevas en 1,00 USD al mes. Es posible que haya aumentado el límite de gasto en uno Región de AWS que utiliza con Amazon Cognito. Antes de cambiar Región de AWS los mensajes SMS de Amazon SNS, abre un caso de aumento de cuota en el AWS Support Center para aumentar tu límite en la nueva región. Para obtener más información, consulte Requesting increases to your monthly SMS spending quota for Amazon SNS (Solicitud de aumento de la cuota de gasto mensual de SMS para Amazon SNS) en Amazon Simple Notification Service Developer Guide (Guía para desarrolladores de Amazon Simple Notification Service).

Puede enviar mensajes SMS a cualquier región de Amazon Cognito de la siguiente tabla con los recursos de Amazon SNS en la correspondiente región de Amazon SNS.

Región de Amazon Cognito Región de Amazon SNS
Este de EE. UU. (Ohio) EE. UU. Este (Ohio), EE. UU. Este (Norte de Virginia)
Asia-Pacífico (Bombay) Asia Pacífico (Mumbai), Asia Pacífico (Singapur)
Canadá (centro) Canadá (centro), este de EE. UU. (Norte de Virginia)
Europa (Fráncfort) Europa (Fráncfort), Europa (Irlanda)
Europa (Londres) Europa (Londres), Europa (Irlanda)
Asia-Pacífico (Seúl) Asia-Pacífico (Tokio)
Este de EE. UU. (Norte de Virginia) Este de EE. UU. (Norte de Virginia)
Oeste de EE. UU. (Norte de California) Oeste de EE. UU. (Norte de California)
Oeste de EE. UU. (Oregón) Oeste de EE. UU. (Oregón)
Asia-Pacífico (Singapur) Asia-Pacífico (Singapur)
Asia-Pacífico (Sídney) Asia-Pacífico (Sídney)
Asia-Pacífico (Tokio) Asia-Pacífico (Tokio)
Europa (Irlanda) Europa (Irlanda)
Europa (París) Europa (París)
Europa (Estocolmo) Europa (Estocolmo)
Europa (Milán) Europe (Milan)
Middle East (Bahrain) Medio Oriente (Baréin)
América del Sur (São Paulo) América del Sur (São Paulo)
Asia-Pacífico (Osaka) Asia-Pacífico (Osaka)
Israel (Tel Aviv) Israel (Tel Aviv)
África (Ciudad del Cabo) África (Ciudad del Cabo)
Asia-Pacífico (Yakarta) Asia-Pacífico (Yakarta)
Medio Oriente (EAU) Medio Oriente (EAU)
Europa (Zúrich) Europa (Zúrich)

Obtener una identidad de origen para enviar mensajes SMS a números de teléfono de EE. UU.

Si tiene previsto enviar mensajes de texto SMS a números de teléfono de EE. UU., debe obtener una identidad de origen, independientemente de si crea un entorno de pruebas aislado de SMS o un entorno de producción.

A partir del 1 de junio de 2021, los operadores estadounidenses exigen una identidad de origen para enviar mensajes a números de teléfono de EE. UU. Si no dispone de una identidad de origen, debe obtener una. Para saber cómo obtener una identidad de origen, consulte Solicitud de un número en la Guía del usuario de Amazon Pinpoint.

Si opera de la siguiente manera Regiones de AWS, debe abrir un AWS Support ticket para obtener una identidad de origen. Para obtener instrucciones, consulte Solicitud de soporte para mensajería SMS en la Guía para desarrolladores de Amazon Simple Notification Service.

  • Este de EE. UU. (Ohio)

  • Europa (Estocolmo)

  • Europa (París)

  • Europe (Milan)

  • Middle East (Bahrain)

  • América del Sur (São Paulo)

  • Oeste de EE. UU. (Norte de California)

Si tiene más de una identidad de origen en la misma Región de AWS, Amazon SNS elige un tipo de identidad de origen en el siguiente orden de prioridad: código corto, 10 DLC, número gratuito. No puede cambiar este valor. Para obtener más información, consulte las preguntas frecuentes de Amazon SNS.

Confirmar que se encuentra en el entorno de pruebas de SMS

Utilice el procedimiento siguiente para confirmar que está en el entorno aislado de SMS. Repita el procedimiento para cada uno de los Región de AWS lugares en los que tenga grupos de usuarios de Amazon Cognito de producción.

Confirmar que se encuentra en el entorno de pruebas de SMS
  1. Vaya a la consola de Amazon Cognito. Si se le solicita, escriba sus credenciales de AWS .

  2. ElegirUser Pools (Grupos de usuarios).

  3. Elija en la lista un usuario existente.

  4. Elija el iconoMensajeríapestaña.

  5. En el navegadorConfiguración de SMSsección, expandirMover al entorno de producción de Amazon SNS. Si su cuenta se encuentra en el entorno de pruebas de SMS, verá el siguiente mensaje en Amazon Cognito.

    You are currently in the SMS Sandbox and cannot send SMS messages to unverified numbers.

    Si no ve este mensaje, signfica que alguien ya ha realizado los pasos necesarios para configurar los mensajes SMS en su cuenta. Vaya a Completar la configuración del grupo de usuarios en Amazon Cognito.

  6. Elija el enlace de Amazon SNS en el mensaje. Esto abre la consola de Amazon SNS en una pestaña nueva.

  7. Compruebe que se encuentre en el entorno de pruebas. El mensaje de la consola indica el estado de su entorno aislado y Región de AWS, de la siguiente manera:

    This account is in the SMS sandbox in US East (N. Virginia).

Quitar la cuenta del entorno de pruebas de Amazon SNS

Si está probando la aplicación y solo necesita enviar mensajes SMS a números de teléfono que los administradores puedan verificar, omita este paso.

Para utilizar su aplicación en producción, quite la cuenta del entorno aislado de SMS y entre en producción. Tras configurar una identidad de origen Región de AWS que contenga los recursos de Amazon SNS que desea que utilice Amazon Cognito, podrá verificar los números de teléfono de EE. UU. mientras permanece en el entorno limitado de Cuenta de AWS SMS. Cuando su entorno de Amazon SNS esté en producción, no tendrá que verificar los números de teléfono de los usuarios en Amazon SNS para enviar mensajes SMS a sus usuarios.

Para obtener instrucciones detalladas, consulte la sección de salida del entorno aislado de Amazon SNS en la Guía para desarrolladores de Amazon Simple Notification Service.

Verificar los números de teléfono de Amazon Cognito en Amazon SNS

Si ha quitado la cuenta del entorno aislado de SMS, omita este paso.

Cuando esté en el entorno aislado de SMS, podrá enviar mensajes a cualquier número de teléfono que haya verificado con Amazon SNS.

Para verificar un número de teléfono, haga lo siguiente:

  1. Añada un Sandbox destination phone number (Número de teléfono de destino de entorno aislado) en la sección de mensajería de texto (SMS) de la consola de Amazon SNS.

  2. Reciba un mensaje SMS con un código en el número de teléfono que ha proporcionado.

  3. Escriba el Código de verificación del mensaje SMS en la consola de Amazon SNS.

Para obtener instrucciones detalladas, consulte Agregar y verificar números de teléfono en el entorno de pruebas de SMS en la Guía para desarrolladores de Amazon Simple Notification Service.

nota

Amazon SNS limita la cantidad de números de teléfono de destino que puede verificar mientras se encuentra en el entorno aislado de SMS. Consulte el sección sobre el entorno aislado de SMS en la Guía para desarrolladores de Amazon Simple Notification Service.

Completar la configuración del grupo de usuarios en Amazon Cognito

Vuelva a la pestaña del navegador donde estaba creando o editando su grupo de usuarios. Complete el procedimiento . Cuando haya añadido correctamente la configuración de SMS a su grupo de usuarios, Amazon Cognito envía un mensaje de prueba a un número de teléfono interno para comprobar que la configuración funciona. Amazon SNS cobra por cada mensaje SMS de prueba.