Configurações de e-mail para grupos de usuários do Amazon Cognito - Amazon Cognito

Configurações de e-mail para grupos de usuários do Amazon Cognito

Determinados eventos no aplicativo do cliente do grupo de usuários podem fazer com que o Amazon Cognito envie e-mails para os usuários. Por exemplo, se você configurar o grupo de usuários para exigir verificação por e-mail, o Amazon Cognito enviará um e-mail quando um usuário se cadastrar em uma nova conta em seu aplicativo ou redefinir a senha. Dependendo da ação que inicia o envio do e-mail, o e-mail terá um código de verificação ou uma senha temporária.

Para processar a entrega de e-mails, você pode usar uma das seguintes opções:

Essas configurações são reversíveis. Quando necessário, você pode atualizar o grupo de usuários para alternar entre elas.

Funcionalidade de e-mail padrão

O Amazon Cognito pode processar as entregas de e-mail para você por meio da funcionalidade de e-mail padrão do serviço. Quando você usa a opção padrão, o Amazon Cognito só permite um número limitado de e-mails por dia para o grupo de usuários. Para obter mais informações sobre limites do serviço, consulte Cotas no Amazon Cognito. Para ambientes de produção típicos, o limite de e-mails padrão fica abaixo do volume de entrega necessário. Para habilitar um volume de entrega maior, você deve usar a configuração de e-mail do Amazon SES.

Com a opção padrão, você pode usar um dos seguintes endereços de e-mail como endereço FROM:

  • O endereço de e-mail padrão, que é no-reply@verificationemail.com.

  • Um endereço de e-mail personalizado que seja seu. Antes de poder usar seu próprio endereço de e-mail, você deve verificá-lo no Amazon SES. Você também deve conceder permissão ao Amazon Cognito para usar esse endereço.

Configuração de e-mail do Amazon SES

O aplicativo pode exigir um volume de entrega maior do que está disponível com a opção padrão. Para habilitar um volume de entrega maior, use a configuração do Amazon SES para permitir que o grupo de usuário envie e-mail para seus usuários. O uso da sua configuração do Amazon SES também oferece uma capacidade maior de monitorar sua atividade de envio de e-mails.

Antes de poder usar a configuração do Amazon SES, você deve verificar um ou mais endereços de e-mail ou de domínio no Amazon SES. Use um endereço de e-mail ou de domínio verificado como o endereço de e-mail FROM que você atribui ao grupo de usuários. Quando o Amazon Cognito envia um e-mail a um usuário, ele usa seu endereço de e-mail chamando o Amazon SES para você.

Quando você usa a configuração do Amazon SES, os limites de entrega de e-mail para o grupo de usuários são os mesmos limites que se aplicam ao endereço de e-mail verificado do Amazon SES na sua conta da AWS.

Regiões de configuração de e-mail do Amazon SES

Ao determinar a região de configuração do Amazon SES a ser usada, você deve escolher entre as seguintes regiões: us-east-1, us-west-2 ou eu-west-1.

Por exemplo, se o grupo de usuários estiver em uma região listada na tabela a seguir, use a seguinte região de configuração recomendada do Amazon SES. Isso pode ajudá-lo a determinar qual região do Amazon SES com suporte está geograficamente mais próxima do grupo de usuários definido.

Exemplo de região Exemplo de região recomendada
us-east-1

us-east-1

ca-central-1

us-east-1

us-east-2

us-east-1

us-west-2

us-west-2

ap-northeast-1

us-west-2

ap-northeast-2

us-west-2

ap-south-1

us-west-2

ap-southeast-1

us-west-2

ap-southeast-2

us-west-2

eu-west-1

eu-west-1

eu-central-1

eu-west-1

eu-west-2

eu-west-1

Configurar e-mail para seu grupo de usuários

Execute as etapas a seguir para definir as configurações de e-mail do grupo de usuários. Dependendo das configurações que você usa, pode precisar de permissões do IAM no Amazon SES, o AWS Identity and Access Management (IAM) e o Amazon Cognito.

nota

Os recursos criados nessas etapas não podem ser compartilhados entre contas da AWS. Por exemplo, não é possível configurar um grupo de usuários em uma conta e depois usá-la com um endereço de e-mail do Amazon SES em outra conta. Se você usar o Amazon Cognito em várias contas, lembre-se de repetir essas etapas em cada uma delas.

Etapa 1: verificar seu endereço de e-mail ou domínio com o Amazon SES

Antes de configurar o grupo de usuários, você deve verificar um ou mais domínios ou endereços de e-mail com o Amazon SES se quiser executar uma das seguintes ações:

  • Usar seu endereço de e-mail como endereço FROM

  • Usar a configuração do Amazon SES para processar a entrega de e-mails

Ao verificar seu endereço de e-mail ou domínio, você confirma que é o proprietário, o que ajuda a impedir o uso não autorizado.

Para obter mais informações sobre a verificação de um endereço de e-mail com o Amazon SES, consulte Verificar um endereço de e-mail no Guia do desenvolvedor do Amazon Simple Email Service. Para mais informações sobre como verificar um domínio com o Amazon SES, consulte Verificar domínios.

Etapa 2: retirar sua conta da sandbox do Amazon SES

Essa etapa só é necessária se você não estiver usando a funcionalidade de e-mail padrão do Amazon Cognito.

Quando você usa o Amazon SES pela primeira vez, sua conta da AWS é colocada na sandbox do Amazon SES. O Amazon SES usa a sandbox para evitar fraudes e uso abusivo. Se você estiver usando a configuração do Amazon SES para processar a entrega de e-mails, deverá retirar sua conta da AWS da sandbox para que o Amazon Cognito possa enviar e-mails aos usuários.

Na sandbox, o Amazon SES impõe restrições sobre a quantidade de e-mails que você pode enviar e onde pode enviá-los. Você pode enviar e-mails somente para endereços e domínios que você já tenha verificado no Amazon SES ou pode enviá-los para endereços do simulador de caixa postal do Amazon SES. Enquanto sua conta da AWS permanecer na sandbox, não use a configuração do Amazon SES para aplicações em produção. Nessa situação, o Amazon Cognito não consegue enviar mensagens para os endereços de e-mail dos seus usuários.

Para remover sua conta da AWS da sandbox, consulte Sair da sandbox do Amazon SES no Guia do desenvolvedor do Amazon Simple Email Service.

Etapa 3: conceder permissões de e-mail ao Amazon Cognito

Talvez você precise conceder permissões específicas ao Amazon Cognito para que ele possa enviar e-mails aos usuários. As permissões que você concede e o processo usado para concedê-las dependem de você estar usando a funcionalidade de e-mail padrão ou a configuração do Amazon SES.

Essa etapa só é necessária se você não estiver usando a funcionalidade de e-mail padrão do Amazon Cognito.

Se você configurar o grupo de usuários para utilizar a funcionalidade de e-mail padrão do Amazon Cognito, use um dos seguintes endereços como o endereço FROM (DE) do qual o Amazon Cognito envia e-mails aos usuários:

  • O endereço padrão

  • Um endereço personalizado, que deve ser um endereço de e-mail verificado ou um endereço de e-mail em um domínio verificado, no Amazon SES

Se você usar um endereço personalizado, o Amazon Cognito precisará de permissões adicionais para enviar e-mail aos usuários a partir desse endereço. Essas permissões são concedidas por uma política de autorização de envio anexada ao endereço ou domínio no Amazon SES. Se você usar o console do Amazon Cognito para adicionar um endereço personalizado ao grupo de usuários, a política será anexada automaticamente ao endereço de e-mail verificado do Amazon SES. No entanto, se você configurar seu grupo de usuários fora do console, por exemplo, usando a AWS CLI ou a API do Amazon Cognito, você deverá anexar a política usando o Console do Amazon SES ou a API PutIdentityPolicy.

nota

Você só pode configurar um endereço FROM (Remetente) em um domínio verificado usando a AWS CLI ou a API do Amazon Cognito.

Uma política de autorização de envio permite ou nega o acesso com base nos recursos da conta que estão usando o Amazon Cognito para invocar o Amazon SES. Para obter mais informações sobre políticas baseadas em recursos, consulte o Manual do usuário do IAM. Você também pode encontrar exemplos de políticas baseadas em recursos no Guia do desenvolvedor do Amazon SES.

exemplo Política de autorização de envio

O exemplo de política de autorização de envio a seguir concede ao Amazon Cognito uma capacidade limitada de usar uma identidade verificada do Amazon SES. O Amazon Cognito só pode enviar mensagens de e-mail quando o fizer em nome do grupo de usuários na condição aws:SourceArn e da conta na condição aws:SourceAccount.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "stmnt1234567891234", "Effect": "Allow", "Principal": { "Service": [ "email.cognito-idp.amazonaws.com" ] }, "Action": [ "SES:SendEmail", "SES:SendRawEmail" ], "Resource": "<your SES identity ARN>", "Condition": { "StringEquals": { "AWS:SourceAccount": "<your account number>" }, "ArnLike": { "AWS:SourceArn": "<your identity pool ARN>" } } } ] }

Neste exemplo, o valor "Sid" é uma string arbitrária que identifica exclusivamente a instrução.

Para mais informações sobre sintaxe de políticas, consulte Políticas de autorização de envio do Amazon SES no Guia do desenvolvedor do Amazon Simple Email Service.

Para mais exemplos, consulte Exemplos de política de autorização de envio do Amazon SES no Guia do desenvolvedor do Amazon Simple Email Service.

Se você configurar o grupo de usuários para usar a configuração do Amazon SES, o Amazon Cognito precisará de permissões adicionais para chamar o Amazon SES em seu nome quando ele enviar e-mails aos usuários. Essa autorização é concedida com o serviço do IAM.

Quando você configura o grupo de usuários com essa opção, o Amazon Cognito cria uma função vinculada ao serviço, que é um tipo de função do IAM, na sua conta da AWS. Essa função contém as permissões para que o Amazon Cognito acesse o Amazon SES e envie mensagens de e-mail com seu endereço.

Antes que o Amazon Cognito possa criar essa função, as permissões do IAM que você usa para configurar o grupo de usuários devem incluir a ação iam:CreateServiceLinkedRole. Para mais informações sobre como atualizar permissões no IAM, consulte Alterar permissões para um usuário do IAM no Guia do usuário do IAM.

Para obter mais informações sobre a função vinculada ao serviço criada pelo Amazon Cognito, consulte Como usar funções vinculadas a serviço para o Amazon Cognito.

Etapa 4: configurar o grupo de usuários

Execute as etapas a seguir para configurar o grupo de usuários com qualquer um dos seguintes:

  • Um endereço FROM personalizado exibido como remetente de e-mail

  • Um endereço REPLY-TO personalizado que recebe as mensagens que os usuários enviam ao endereço FROM

  • Sua configuração do Amazon SES

Você não precisa realizar este procedimento se quiser usar o endereço e a funcionalidade de e-mail padrão do Amazon Cognito.

Original console

Configurar o grupo de usuários para usar um endereço de e-mail personalizado

  1. Abra o console do Amazon Cognito em https://console.aws.amazon.com/cognito. Se solicitado, insira suas credenciais da AWS.

  2. Selecione Manage User Pools.

  3. Na página Your User Pools (Seus Grupos de Usuários), escolha o grupo de usuários que deseja configurar.

  4. No menu de navegação à esquerda, escolha Message customizations (Personalizações de mensagens).

  5. Para usar um endereço FROM (DE) personalizado, escolha Add custom FROM address (Adicionar endereço FROM (DE) personalizado) e faça o seguinte:

    1. Em SES Region (Região do SES), escolha a região que contém o endereço de e-mail verificado.

    2. Em Source ARN (ARN de origem), escolha seu endereço de e-mail. Você deve usar um endereço de e-mail verificado com o Amazon SES na região selecionada.

    3. Para FROM email address (Endereço de e-mail FROM), escolha seu endereço de e-mail. Você pode fornecer apenas seu endereço de e-mail ou seu endereço de e-mail e um nome amigável no formato Jane Doe <janedoe@example.com>.

  6. Em Do you want to send emails through your Amazon SES Configuration? (Deseja enviar e-mails por meio da configuração do Amazon SES?), escolha Yes - Use Amazon SES (Sim - Usar o Amazon SES) ou No - Use Cognito (Default) (Não - Usar o Cognito (padrão)).

    Se você optar por usar o Amazon SES, o Amazon Cognito criará uma função vinculada ao serviço depois que as alterações forem salvas.

  7. Para usar um endereço REPLY-TO personalizado, escolha Add custom REPLY-TO address (Adicionar endereço REPLY-TO personalizado). Depois, informe o endereço de e-mail no qual você deseja receber mensagens enviadas pelos usuários para o seu endereço FROM.

  8. Quando terminar de definir as opções da conta de e-mail, escolha Save changes (Salvar alterações).

New console

Configurar o grupo de usuários para usar um endereço de e-mail personalizado

  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. Escolha a guia Messaging (Sistema de mensagens), localize Email configuration (Configuração de e-mail), escolha Edit (Editar).

  5. Na página Edit email configuration (Editar configuração do e-mail), selecione Send email from Amazon SES (Enviar e-mail do Amazon SES) ou Send email with Amazon Cognito (Enviar e-mail com o Amazon Cognito). Só é possível personalizar a SES Region (Região SES), o Configuration Set (Conjunto de configurações) e o FROM sender name (Nome do remetente) quando você seleciona Send email from Amazon SES (Enviar e-mail do Amazon SES).

  6. Para usar um endereço FROM (remetente) personalizado, conclua as seguintes etapas:

    1. Em SES Region (Região do SES), escolha a região que contém seu endereço de e-mail verificado.

    2. Em FROM email address (Endereço do e-mail remetente), escolha seu endereço de e-mail. Você deverá usar um endereço de e-mail verificado com o Amazon SES.

    3. (Opcional) Em Configuration set (Conjunto de configurações), escolha um conjunto de configurações para usar com o Amazon SES. Isso criará uma função vinculada ao serviço depois que você salvar as alterações.

    4. (Opcional) Em FROM sender address (Endereço do remetente), insira um endereço de e-mail. Você pode fornecer apenas um endereço de e-mail ou um endereço de e-mail e um nome amigável no formato Jane Doe <janedoe@example.com>.

    5. (Opcional) Em REPLY-TO email address (Endereço de e-mail para resposta), insira o endereço de e-mail no qual você deseja receber mensagens enviadas pelos usuários para o seu endereço FROM (Remetente).

  7. Selecione Save changes.

Tópicos relacionados