SMSconfigurações de mensagem para grupos de usuários do Amazon Cognito - Amazon Cognito

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

SMSconfigurações de mensagem para grupos de usuários do Amazon Cognito

Alguns eventos do Amazon Cognito para seu grupo de usuários podem fazer com que o Amazon Cognito SMS envie mensagens de texto para seus usuários. Por exemplo, se você configurar seu grupo de usuários para exigir verificação por telefone, o Amazon Cognito enviará uma mensagem de SMS texto quando um usuário se cadastrar em uma nova conta no seu aplicativo ou redefinir a senha. Dependendo da ação que inicia a mensagem de SMS texto, a mensagem contém um código de verificação, uma senha temporária ou uma mensagem de boas-vindas.

O Amazon Cognito usa o Amazon Simple Notification Service SNS (Amazon) para entrega de SMS mensagens de texto. Se você estiver enviando uma mensagem de texto pelo Amazon Cognito ou pela Amazon SNS pela primeira vez, a Amazon o SNS colocará em um ambiente de sandbox. No ambiente sandbox, você pode testar seus aplicativos para mensagens de SMS texto. Na área restrita para testes, as mensagens só podem ser enviadas para números de telefone verificados.

A Amazon SNS cobra por mensagens de SMS texto. Para obter mais informações, consulte os SNSpreços da Amazon.

nota

Devido ao volume de SMS tráfego não solicitado em todo o mundo, alguns governos impõem barreiras entre os remetentes e os destinatários das mensagens. SMS Ao usar SMS mensagens MFA e atualizações de usuários, você deve tomar medidas adicionais para garantir que suas mensagens sejam entregues. Você também deve monitorar as regulamentações SMS relacionadas a mensagens nos países onde seus usuários possam morar e manter sua configuração de SMS mensagens atualizada. Para obter mais informações, consulte Mensagens de texto móveis (SMS) no Guia do desenvolvedor do Amazon Simple Notification Service.

O uso de SMS mensagens para autenticar e verificar usuários não é uma prática recomendada de segurança. Os números de telefone podem mudar de proprietário e podem não representar de forma confiável algo que você considera importante MFA para seus usuários. Em vez disso, implemente TOTP MFA em seu aplicativo ou com seu IdP de terceiros. Você também pode criar outros fatores de autenticação personalizados com Acionadores do Lambda de desafio personalizado de autenticação.

O Amazon Cognito envia SMS mensagens aos seus usuários com um código que eles podem inserir. A tabela a seguir mostra os eventos que podem gerar uma SMS mensagem.

Opções de mensagem

Atividade APIoperação Opções de entrega Opções de formato Personalizável Modelo de mensagem
Esqueci a senha ForgotPassword, AdminResetUserPassword E-mail, SMS Código Não N/D
Convite AdminCreateUser E-mail, SMS Código Sim Mensagem de convite
Autorregistro SignUp, ResendConfirmationCode E-mail, SMS código, link Sim Mensagem de verificação
Verificação de endereço de e-mail ou número de telefone UpdateUserAttributes, AdminUpdateUserAttributes, GetUserAttributeVerificationCode E-mail, SMS Código Sim Mensagem de verificação
Autenticação multifatorial () MFA AdminInitiateAuth, InitiateAuth SMS, aplicativo autenticador Código Sim¹ MFAmensagem

¹ Para SMS mensagens.

Configurando SMS mensagens pela primeira vez nos grupos de usuários do Amazon Cognito

O Amazon Cognito usa a Amazon SNS para enviar SMS mensagens para seus grupos de usuários. Você também pode usar a Acionador SMS Lambda personalizado do remetente para usar seus próprios recursos para enviar SMS mensagens. Na primeira vez que você configura SNS a Amazon para enviar mensagens de SMS texto em uma determinada região Região da AWS, a Amazon SNS coloca você Conta da AWS na SMS sandbox dessa região. A Amazon SNS usa a sandbox para evitar fraudes e abusos e atender aos requisitos de conformidade. Quando você Conta da AWS está na sandbox, a Amazon SNS impõe algumas restrições. Por exemplo, você pode enviar mensagens de texto para no máximo 10 números de telefone que você verificou com a AmazonSNS. Enquanto você Conta da AWS permanecer no sandbox, não use sua SNS configuração da Amazon para aplicativos que estão em produção. Quando você está na área restrita para testes, o Amazon Cognito não pode enviar mensagens para os números de telefone dos seus usuários.

Prepare uma IAM função que o Amazon Cognito possa usar para enviar SMS mensagens com a Amazon SNS

Quando você envia uma SMS mensagem do seu grupo de usuários, o Amazon Cognito assume uma IAM função na sua conta. O Amazon Cognito usa a sns:Publish permissão atribuída a essa função para enviar SMS mensagens aos seus usuários. No console do Amazon Cognito, você pode definir uma seleção de IAM função na guia Mensagens do seu grupo de usuários SMSou fazer essa seleção durante o assistente de criação do grupo de usuários.

O exemplo de política de confiança de IAM funções a seguir concede aos grupos de usuários do Amazon Cognito uma capacidade limitada de assumir a função. O Amazon Cognito só pode assumir a função quando atende às seguintes condições:

  • A operação assume-role é em nome do grupo de usuários na condição. aws:SourceArn

  • A operação assume-role é em nome de um grupo de usuários Conta da AWS definido pela condição. aws:SourceAccount

  • A operação assume-role inclui a ID externa na condição. sts:externalId

{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "cognito-idp.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "aws:SourceAccount": "111122223333" }, "ArnLike": { "aws:SourceArn": "arn:aws:cognito-idp:us-west-2:111122223333:userpool/us-west-2_EXAMPLE" } } } ] }

Você pode especificar um grupo de usuários exato ARN ou um curinga ARN no valor da aws:SourceArn condição. Pesquise seus grupos ARNs de usuários no AWS Management Console ou com uma DescribeUserPoolAPIsolicitação.

Para enviar SMS mensagens para autenticação multifator, sua política de confiança de IAM função deve ter uma sts:ExternalId condição. O valor dessa condição deve corresponder à ExternalId propriedade SmsConfigurationdo seu grupo de usuários. Quando você cria uma IAM função durante o processo de criação do grupo de usuários no console do Amazon Cognito, o Amazon Cognito configura a ID externa para você na função e nas configurações do grupo de usuários. Isso não é verdade quando você usa uma IAM função existente.

Você deve atualizar o ExternalId parâmetro do grupo de usuários em uma UpdateUserPoolAPIsolicitação e atualizar a política de confiança da IAM função com uma sts:externalId condição com o mesmo valor. Para saber como usar o API para atualizar um grupo de usuários de forma a preservar a configuração original, consulteAtualizar a configuração do grupo de usuários.

Para obter mais informações sobre IAM funções e políticas de confiança, consulte Termos e conceitos de funções no Guia AWS Identity and Access Management do usuário.

Escolha o Região da AWS para SNS SMS mensagens da Amazon

Em alguns Regiões da AWS, você pode escolher a região que contém os SNS recursos da Amazon que você deseja usar para as mensagens do Amazon CognitoSMS. Em qualquer Região da AWS lugar em que o Amazon Cognito esteja disponível, exceto na Ásia-Pacífico (Seul), você pode usar SNS os recursos da Amazon no local em Região da AWS que criou seu grupo de usuários. Para tornar suas SMS mensagens mais rápidas e confiáveis quando você tem uma escolha de regiões, use SNS os recursos da Amazon na mesma região do seu grupo de usuários.

nota

No AWS Management Console, você só pode alterar a região dos SMS recursos depois de migrar para a nova experiência de console do Amazon Cognito.

Escolha uma região para SMS recursos na etapa Configurar entrega de mensagens do novo assistente de grupo de usuários. Você também pode escolher Editar SMSna guia Mensagens de um grupo de usuários existente.

No lançamento, para alguns Regiões da AWS, o Amazon Cognito enviou SMS mensagens com SNS recursos da Amazon em uma região alternativa. Para definir sua região preferida, use o SnsRegion parâmetro do SmsConfigurationTypeobjeto para seu grupo de usuários. Quando você cria programaticamente um recurso de grupos de usuários do Amazon Cognito em uma região do Amazon Cognito a partir da tabela a seguir e não fornece SnsRegion um parâmetro, seu grupo de usuários pode enviar SMS mensagens com SNS recursos da Amazon em uma região da Amazon legada. SNS

Os grupos de usuários do Amazon Cognito na Ásia-Pacífico (Seul) Região da AWS devem usar sua SNS configuração da Amazon na região Ásia-Pacífico (Tóquio).

A Amazon SNS define a cota de gastos para todas as novas contas em $1,00 (USD) por mês. Você pode ter aumentado seu limite de gastos em um Região da AWS que você usa com o Amazon Cognito. Antes de alterar as Região da AWS SNS SMS mensagens da Amazon, abra um caso de aumento de cota no AWS Support Center para aumentar seu limite na nova região. Para obter mais informações, consulte Solicitando aumentos em sua cota de SMS gastos mensais para a Amazon SNS no Guia do desenvolvedor do Amazon Simple Notification Service.

Você pode enviar SMS mensagens para qualquer região do Amazon Cognito na tabela a seguir com SNS recursos da Amazon na região da Amazon SNS correspondente.

Região do Amazon Cognito SNSRegião Amazônica

Leste dos EUA (Ohio)

Leste dos EUA (Ohio), Leste dos EUA (Norte da Virgínia)

Leste dos EUA (Norte da Virgínia)

Leste dos EUA (N. da Virgínia)

Oeste dos EUA (N. da Califórnia)

Oeste dos EUA (N. da Califórnia)

Oeste dos EUA (Oregon)

Oeste dos EUA (Oregon)

Canadá (Central)

Canadá (Central), Leste dos EUA (Norte da Virgínia)

Oeste do Canadá (Calgary)

Oeste do Canadá (Calgary)

Europa (Frankfurt)

Europa (Frankfurt), Europa (Irlanda)

Europa (Londres)

Europa (Londres), Europa (Irlanda)

Europa (Irlanda)

Europa (Irlanda)

Europa (Paris)

Europa (Paris)

Europa (Estocolmo)

Europa (Estocolmo)

Europa (Milão)

Europa (Milão)

Europa (Espanha)

Europa (Espanha)

Europa (Zurique)

Europa (Zurique)

Ásia-Pacífico (Mumbai)

Ásia-Pacífico (Mumbai), Ásia-Pacífico (Singapura)

Ásia-Pacífico (Hyderabad)

Ásia-Pacífico (Hyderabad)

Ásia-Pacífico (Hong Kong)

Ásia-Pacífico (Singapura)

Ásia-Pacífico (Seul)

Ásia-Pacífico (Tóquio)

Ásia-Pacífico (Singapura)

Ásia-Pacífico (Singapura)

Ásia-Pacífico (Sydney)

Ásia-Pacífico (Sydney)

Ásia-Pacífico (Tóquio)

Ásia-Pacífico (Tóquio)

Ásia-Pacífico (Jacarta)

Ásia-Pacífico (Jacarta)

Ásia-Pacífico (Osaka)

Asia Pacific (Osaka)

Ásia-Pacífico (Melbourne)

Ásia-Pacífico (Melbourne)

Oriente Médio (Barém)

Oriente Médio (Barém)

Oriente Médio (UAE)

Oriente Médio (UAE)

América do Sul (São Paulo)

América do Sul (São Paulo)

Israel (Tel Aviv)

Israel (Tel Aviv)

África (Cidade do Cabo)

África (Cidade do Cabo)

Obtenha uma identidade de origem para enviar SMS mensagens para números de telefone dos EUA

Se você planeja enviar mensagens de SMS texto para números de telefone dos EUA, deve obter uma identidade de origem, independentemente de criar um ambiente de teste em SMS sandbox ou um ambiente de produção.

Desde 1.º de junho de 2021, as operadoras americanas exigem uma identidade de origem para o envio de mensagens para números de telefone dos EUA. Se você ainda não tiver uma identidade de origem, deverá obter uma. Para saber como obter uma identidade de origem, consulte Requesting a number (Solicitar um número) no Guia do usuário do Amazon Pinpoint.

Se você operar da seguinte forma Regiões da AWS, deverá abrir um AWS Support tíquete para obter uma identidade de origem. Para obter instruções, consulte Solicitação de suporte para SMS mensagens no Guia do desenvolvedor do Amazon Simple Notification Service.

  • Leste dos EUA (Ohio)

  • Europa (Estocolmo)

  • Europa (Paris)

  • Europa (Milão)

  • Oriente Médio (Bahrein)

  • South America (São Paulo)

  • Oeste dos EUA (N. da Califórnia)

Quando você tem mais de uma identidade de origem na mesma Região da AWS, a Amazon SNS escolhe um tipo de identidade de originação na seguinte ordem de prioridade: código curto, 10DLC, número gratuito. Não é possível alterar essa prioridade. Para obter mais informações, consulte Amazon SNS FAQs.

Confirme que você está na SMS sandbox

Use o procedimento a seguir para confirmar que você está na SMS sandbox. Repita o procedimento para cada um Região da AWS em que você tenha grupos de usuários de produção do Amazon Cognito.

Para confirmar que você está na SMS sandbox
  1. Acesse o console do Amazon Cognito. Se solicitado, insira suas credenciais da AWS .

  2. Escolha User Pools (Grupos de usuários).

  3. Escolha um grupo de usuários existente da lista.

  4. Selecione a guia Messaging (Sistema de mensagens).

  5. Na seção de SMSconfiguração, expanda Mover para o ambiente SNS de produção da Amazon. Se sua conta estiver na SMS sandbox, você verá a seguinte mensagem:

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

    Se você não vê essa mensagem, então alguém já configurou SMS mensagens na sua conta. Vá para Concluir a configuração do grupo de usuários no Amazon Cognito.

  6. Escolha o SNS link da Amazon na mensagem. Isso abre o SNS console da Amazon em uma nova guia.

  7. Verifique se você está no ambiente da área restrita para testes. A mensagem do console indica o status do seu sandbox e Região da AWS, da seguinte forma:

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

Mova sua conta para fora do Amazon SNS Sandbox

Se você estiver testando seu aplicativo e só precisar enviar SMS mensagens para números de telefone que seus administradores possam verificar, pule esta etapa.

Para usar seu aplicativo na produção, mova sua conta do SMS sandbox para a produção. Depois de configurar uma identidade de origem na Região da AWS que contém os SNS recursos da Amazon que você deseja que o Amazon Cognito use, você pode verificar os números de telefone dos EUA enquanto permanece na Conta da AWS SMS sandbox. Quando seu SNS ambiente Amazon está em produção, você não precisa verificar os números de telefone dos usuários na Amazon SNS para enviar SMS mensagens aos seus usuários.

Para obter instruções detalhadas, consulte Como sair do SMS sandbox no Guia do desenvolvedor do Amazon Simple Notification Service.

Verifique os números de telefone do Amazon Cognito na Amazon SNS

Se você retirou sua conta do SMS sandbox, pule esta etapa.

Quando estiver na SMS sandbox, você pode enviar mensagens para qualquer número de telefone que tenha verificado na AmazonSNS.

Para verificar um número de telefone, faça o seguinte:

  1. Adicione um número de telefone de destino do Sandbox na seção Mensagens de texto (SMS) do SNS console da Amazon.

  2. Receba uma SMS mensagem com um código no número de telefone que você forneceu.

  3. Insira o código de verificação da SMS mensagem no SNS console da Amazon.

Para obter instruções detalhadas, consulte Adicionar e verificar números de telefone na SMS sandbox no Guia do desenvolvedor do Amazon Simple Notification Service.

nota

A Amazon SNS limita o número de números de telefone de destino que você pode verificar enquanto está no SMS sandbox. Consulte o SMSsandbox no Guia do desenvolvedor do Amazon Simple Notification Service.

Concluir a configuração do grupo de usuários no Amazon Cognito

Retorne para a guia do navegador em que você estava criando ou editando o grupo de usuários. Conclua o procedimento . Quando você adiciona com sucesso a SMS configuração ao seu grupo de usuários, o Amazon Cognito envia uma mensagem de teste para um número de telefone interno para verificar se sua configuração funciona. A Amazon SNS cobra por cada SMS mensagem de teste.