Como faço para integrar o Amazon SES a um grupo de usuários do Amazon Cognito?

7 minuto de leitura
0

Preciso conhecer as etapas necessárias para integrar o Amazon Simple Email Service (Amazon SES) a um grupo de usuários do Amazon Cognito.

Descrição breve

O Amazon SES e o Amazon Cognito podem ser integrados para enviar mensagens de e-mail com um endereço de e-mail personalizado pertencente a você. Siga estas etapas de alto nível para integrar o Amazon SES a um grupo de usuários do Amazon Cognito:

  • Considere as limitações da área restrita para testes do Amazon SES.
  • Mova uma conta para fora da área restrita para testes do Amazon SES.
  • Verifique uma identidade do Amazon SES.
  • Configure um grupo de usuários do Amazon Cognito com uma identidade verificada do Amazon SES.

Resolução

Implemente as etapas a seguir para integrar o Amazon SES a um grupo de usuários do Amazon Cognito para enviar mensagens de e-mail em seu nome.

Limitações da área restrita para testes do Amazon SES

Todas as novas contas do Amazon SES são colocadas na área restrita para testes do Amazon SES para evitar fraudes e abusos. Há algumas restrições que devemos considerar ao usar uma área restrita para testes do Amazon SES. Para analisar as restrições específicas da área restrita para testes, consulte Como sair da área restrita para testes do Amazon SES. Você deve mover sua conta do Amazon SES para fora da área restrita para testes para usar totalmente o serviço Amazon SES.

Mover uma conta para fora da área restrita para testes do Amazon SES

Para mover uma conta para fora da área restrita para testes do Amazon SES, faça o seguinte:

1.    Analise a tabela de mapeamento de regiões da AWS em Configuração de e-mail do Amazon SES. A tabela de mapeamento mostra as regiões em que as identidades do Amazon SES podem ser integradas aos grupos de usuários do Amazon Cognito. Você deve se certificar de usar regiões compatíveis antes de mover a conta do Amazon SES para fora da área restrita para testes.

2.    Solicite acesso à produção para sua conta do Amazon SES. Depois que sua solicitação de acesso à produção for aprovada, você poderá enviar mensagens de e-mail para qualquer destinatário.

Importante: é necessário migrar para a nova experiência de console do Amazon Cognito para integrar o Amazon Cognito ao Amazon SES na mesma região.

Verificar uma identidade do Amazon SES

Para verificar uma identidade de domínio do Amazon SES, faça o seguinte:

1.    Crie uma identidade de domínio.

2.    Verifique um ou mais domínios no Amazon SES.

Para verificar uma identidade de e-mail do Amazon SES, siga estas etapas:

1.    Crie uma identidade de e-mail.

2.    Verifique um ou mais endereços de e-mail no Amazon SES.

Observação: integrações entre contas para o Amazon Cognito e o Amazon SES não são aceitas. Não é possível configurar um grupo de usuários do Amazon Cognito em uma conta e integrá-lo a um endereço de e-mail do Amazon SES em uma conta diferente.

Configurar um grupo de usuários do Amazon Cognito com uma identidade verificada do Amazon SES

Para integrar o grupo de usuários do Amazon Cognito com a configuração de identidade verificada do Amazon SES, siga as etapas relevantes para seu caso de uso.

Quando a identidade do domínio do Amazon SES é verificada

1.    Faça login no novo console do Amazon Cognito e escolha User Pools (Grupos de usuários).

2.    Selecione o grupo de usuários apropriado na lista.

3.    Escolha a guia Messaging (Mensagens), Email configuration (Configuração do e-mail) e, em seguida, Edit (Editar).

4.    Em FROM email address (Endereço de e-mail DE), escolha a identidade de domínio verificada do Amazon SES. (Por exemplo, example.com.)

5.    Em FROM sender name (Nome do remetente DE), insira seu endereço de e-mail. (Por exemplo, admin@example.com.)

Como o domínio já foi verificado, você poderá adicionar um endereço de e-mail personalizado para a identidade do domínio. A API UpdateUserPool configura o grupo de usuários do Amazon Cognito com uma identidade do Amazon SES.

Exemplo do comando update-user-pool:

$ aws cognito-idp update-user-pool --user-pool-id example_pool_id --email-configuration SourceArn=arn:aws:ses:example_region:example_account_number:identity/example_domain,EmailSendingAccount=DEVELOPER,From=user@example.com --region example_region

Importante: como a API UpdateUserPool redefine a configuração existente do grupo de usuários, invoque a API DescribeUserPool primeiro. Em seguida, envie todos os parâmetros existentes do grupo de usuários para a API UpdateUserPool.

Descrições do comando update-user-pool:

  • example_pool_id corresponde ao ID do grupo de usuários do Amazon Cognito. Exemplo: ap-southeast-1_xxxxxxxx.
  • arn:aws:ses:example_region:example_account_number:identity/example_domain é o ARN da sua identidade de domínio do Amazon SES.
  • user@example.com deve ser substituído por sua identidade de e-mail.
  • example_region representa a região em que seu grupo de usuários do Amazon Cognito existe. Exemplo: ap-southeast-1.

Quando a identidade de e-mail do Amazon SES é verificada

1.    Faça login no novo console do Amazon Cognito e escolha User Pools (Grupos de usuários).

2.    Selecione o grupo de usuários apropriado na lista.

3.    Escolha a guia Messaging (Mensagens), Email configuration (Configuração do e-mail) e, em seguida, escolha Edit (Editar).

4.    Em FROM email address (Endereço de e-amil DE), escolha a identidade de domínio do e-mail do Amazon SES. (Por exemplo, admin@example.com.)

Solução de problemas

Esta seção inclui informações sobre solução de problemas que os usuários encontram ao enviar mensagens de e-mail após a integração do Amazon Cognito e do Amazon SES.

Erro para endereço de e-mail não verificado

“O endereço de e-mail não foi verificado. As seguintes identidades falharam na verificação na região AP-SOUTHEAST-1: user@example.com.”

O Amazon Cognito recebe o erro de endereço de e-mail não verificado ao tentar enviar uma mensagem de e-mail. Você pode receber esse erro ao tentar enviar uma mensagem de e-mail de uma conta em uma área restrita para testes do Amazon SES para um endereço de e-mail não verificado. Para resolver o erro, mova sua conta do Amazon SES para fora da área restrita para testes ou verifique o endereço de e-mail do destinatário no Amazon SES.

Os usuários não estão recebendo mensagens de e-mail do Amazon Cognito

Os usuários não estão recebendo mensagens de e-mail de um grupo de usuários do Amazon Cognito. Para resolver esse problema, confirme se você está usando a funcionalidade de e-mail padrão do Amazon Cognito ou a configuração de e-mail do Amazon SES para enviar mensagens de e-mail. Verifique suas atualizações via Console de Gerenciamento da AWS ou invocando a API DescribeUserPool.

Exemplo do comando describe-user-pool:

aws cognito-idp describe-user-pool --user-pool-id example_pool_id --region example_region --query 'UserPool.EmailConfiguration'

Saída:

{
  "SourceArn": "arn:aws:ses:us-east-1:123456789012:identity/admin@example.com",
  "EmailSendingAccount": "DEVELOPER",
  "From": "admin@example.com"
}

-ou-

{
  "SourceArn": "arn:aws:ses:us-east-1:123456789012:identity/admin@example.com",
  "EmailSendingAccount": "COGNITO_DEFAULT"
}

Se a configuração de EmailSendingAccount estiver definida como DEVELOPER, seu grupo de usuários do Amazon Cognito estará usando o Amazon SES para enviar mensagens de e-mail. Verifique se sua conta do Amazon SES está na área restrita para testes. Se estiver, mova o Amazon SES para fora da área restrita para testes para enviar mensagens de e-mail para identidades não verificadas. Se a conta do Amazon SES estiver em produção ou fora do modo de área restrita para testes, verifique os logs do Amazon SES para entrega de e-mail.

Se você receber a mensagem COGNITO_DEFAULT em sua saída, seu grupo de usuários do Amazon Cognito está usando a funcionalidade padrão para enviar mensagens de e-mail. Com essa funcionalidade padrão, o Amazon Cognito tem um limite de cota para o número de mensagens de e-mail enviadas por cada grupo de usuários.

A exceção LimitExceededException é lançada

“Excedeu o limite diário de e-mail para a operação ou conta. O número de operações permitidas foi excedido. Se um limite maior for necessário, configure seu grupo de usuários para usar sua própria configuração do Amazon SES para enviar mensagens de e-mail.”

Os usuários recebem o erro de limite diário de e-mail quando o Amazon Cognito usa a funcionalidade de e-mail padrão com um limite de cota diário para enviar mensagens de e-mail. Conforme sugerido na mensagem de erro, defina um volume maior de entrega de mensagens de e-mail alterando a configuração de e-mail do Amazon SES.


AWS OFICIAL
AWS OFICIALAtualizada há um ano