Gerenciando SES identidades da Amazon - AWS SDK for JavaScript

O Guia de API referência da AWS SDK for JavaScript V3 descreve detalhadamente todas as API operações da AWS SDK for JavaScript versão 3 (V3).

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á.

Gerenciando SES identidades da Amazon

JavaScript code example that applies to Node.js execution

Este exemplo de código Node.js mostra:

  • Como verificar endereços de e-mail e domínios usados com a AmazonSES.

  • Como atribuir uma AWS Identity and Access Management (IAM) política às suas SES identidades da Amazon.

  • Como listar todas as SES identidades da Amazon para sua AWS conta.

  • Como excluir identidades usadas com a AmazonSES.

Uma SES identidade da Amazon é um endereço de e-mail ou domínio que a Amazon SES usa para enviar e-mails. A Amazon SES exige que você verifique suas identidades de e-mail, confirmando que você as possui e impedindo que outras pessoas as usem.

Para obter detalhes sobre como verificar endereços de e-mail e domínios na AmazonSES, consulte Verificação de endereços de e-mail e domínios na Amazon no Guia SES do desenvolvedor do Amazon Simple Email Service. Para obter informações sobre autorização de envio na AmazonSES, consulte Visão geral da autorização de SES envio da Amazon.

O cenário

Neste exemplo, você usa uma série de módulos Node.js para verificar e gerenciar SES as identidades da Amazon. Os módulos Node.js usam o SDK for JavaScript para verificar endereços de e-mail e domínios, usando esses métodos da classe SES cliente:

Tarefas de pré-requisito

Para configurar e executar este exemplo, você deve primeiro concluir estas tarefas:

  • Configure o ambiente do projeto para executar esses TypeScript exemplos de Node e instale os módulos necessários AWS SDK for JavaScript e de terceiros. Siga as instruções em GitHub.

  • Crie um arquivo de configurações compartilhado com as credenciais de usuário. Para obter mais informações sobre como fornecer um arquivo de credenciais compartilhado, consulte Arquivos de configuração e credenciais compartilhados no Guia de referência de ferramentas AWS SDKs e ferramentas.

Importante

Esses exemplos demonstram como importar/exportar objetos e comandos de atendimento ao cliente usando ECMAScript6 ()ES6.

Listar suas identidades

Neste exemplo, use um módulo Node.js para listar endereços de e-mail e domínios para usar com a AmazonSES.

Crie um diretório libs e um módulo Node.js com o nome de arquivo sesClient.js. Copie e cole o código abaixo nele, o que cria o objeto SES cliente da Amazon. Substituir REGION com sua AWS região.

import { SESClient } from "@aws-sdk/client-ses"; // Set the AWS Region. const REGION = "us-east-1"; // Create SES service object. const sesClient = new SESClient({ region: REGION }); export { sesClient };

Esse código de exemplo pode ser encontrado aqui em GitHub.

Crie um módulo do Node.js com o nome de arquivo ses_listidentities.js. Configure o SDK conforme mostrado anteriormente, incluindo a instalação dos clientes e pacotes necessários.

Crie um objeto para passar o IdentityType e outros parâmetros para o método ListIdentitiesCommand da classe de cliente SES. Para chamar o ListIdentitiesCommand método, invoque um objeto de SES serviço da Amazon, transmitindo o objeto de parâmetros.

O data retornado contém um array de identidades de domínio, conforme especificado pelo parâmetro IdentityType.

nota

Substituir IdentityType com o tipo de identidade, que pode ser "EmailAddress" ou “Domínio”.

import { ListIdentitiesCommand } from "@aws-sdk/client-ses"; import { sesClient } from "./libs/sesClient.js"; const createListIdentitiesCommand = () => new ListIdentitiesCommand({ IdentityType: "EmailAddress", MaxItems: 10 }); const run = async () => { const listIdentitiesCommand = createListIdentitiesCommand(); try { return await sesClient.send(listIdentitiesCommand); } catch (err) { console.log("Failed to list identities.", err); return err; } };

Para executar o exemplo, digite o seguinte no prompt de comando.

node ses_listidentities.js

Esse código de exemplo pode ser encontrado aqui em GitHub.

Verificar a identidade de um endereço de e-mail

Neste exemplo, use um módulo Node.js para verificar os remetentes de e-mail a serem usados com a AmazonSES.

Crie um diretório libs e um módulo Node.js com o nome de arquivo sesClient.js. Copie e cole o código abaixo nele, o que cria o objeto SES cliente da Amazon. Substituir REGION com sua AWS região.

import { SESClient } from "@aws-sdk/client-ses"; // Set the AWS Region. const REGION = "us-east-1"; // Create SES service object. const sesClient = new SESClient({ region: REGION }); export { sesClient };

Esse código de exemplo pode ser encontrado aqui em GitHub.

Crie um módulo do Node.js com o nome de arquivo ses_verifyemailidentity.js. Configure o SDK conforme mostrado anteriormente, incluindo o download dos clientes e pacotes necessários.

Crie um objeto para passar o parâmetro EmailAddress para o método VerifyEmailIdentityCommand da classe de cliente SES. Para chamar o VerifyEmailIdentityCommand método, invoque um objeto de atendimento SES ao cliente da Amazon, transmitindo os parâmetros.

nota

Substituir EMAIL_ADDRESS com o endereço de e-mail, como name@example.com.

// Import required AWS SDK clients and commands for Node.js import { VerifyEmailIdentityCommand } from "@aws-sdk/client-ses"; import { sesClient } from "./libs/sesClient.js"; const EMAIL_ADDRESS = "name@example.com"; const createVerifyEmailIdentityCommand = (emailAddress) => { return new VerifyEmailIdentityCommand({ EmailAddress: emailAddress }); }; const run = async () => { const verifyEmailIdentityCommand = createVerifyEmailIdentityCommand(EMAIL_ADDRESS); try { return await sesClient.send(verifyEmailIdentityCommand); } catch (err) { console.log("Failed to verify email identity.", err); return err; } };

Para executar o exemplo, digite o seguinte no prompt de comando. O domínio é adicionado à Amazon SES para ser verificado.

node ses_verifyemailidentity.js

Esse código de exemplo pode ser encontrado aqui em GitHub.

Verificar uma identidade de domínio

Neste exemplo, use um módulo Node.js para verificar os domínios de e-mail a serem usados com a AmazonSES.

Crie um diretório libs e um módulo Node.js com o nome de arquivo sesClient.js. Copie e cole o código abaixo nele, o que cria o objeto SES cliente da Amazon. Substituir REGION com sua AWS região.

import { SESClient } from "@aws-sdk/client-ses"; // Set the AWS Region. const REGION = "us-east-1"; // Create SES service object. const sesClient = new SESClient({ region: REGION }); export { sesClient };

Esse código de exemplo pode ser encontrado aqui em GitHub.

Crie um módulo do Node.js com o nome de arquivo ses_verifydomainidentity.js. Configure o SDK conforme mostrado anteriormente, incluindo a instalação dos clientes e pacotes necessários.

Crie um objeto para passar o parâmetro Domain para o método VerifyDomainIdentityCommand da classe de cliente SES. Para chamar o VerifyDomainIdentityCommand método, invoque um objeto de atendimento SES ao cliente da Amazon, passando o objeto de parâmetros.

nota

Este exemplo importa e usa os clientes do pacote AWS Service V3 necessários, os comandos V3 e usa o send método em um padrão async/await. Em vez disso, você pode criar esse exemplo usando comandos da V2 fazendo algumas pequenas alterações. Para obter detalhes, consulte Usando comandos v3.

nota

Substituir DOMAIN_NAME com o nome do domínio.

import { VerifyDomainIdentityCommand } from "@aws-sdk/client-ses"; import { getUniqueName, postfix, } from "@aws-doc-sdk-examples/lib/utils/util-string.js"; import { sesClient } from "./libs/sesClient.js"; /** * You must have access to the domain's DNS settings to complete the * domain verification process. */ const DOMAIN_NAME = postfix(getUniqueName("Domain"), ".example.com"); const createVerifyDomainIdentityCommand = () => { return new VerifyDomainIdentityCommand({ Domain: DOMAIN_NAME }); }; const run = async () => { const VerifyDomainIdentityCommand = createVerifyDomainIdentityCommand(); try { return await sesClient.send(VerifyDomainIdentityCommand); } catch (err) { console.log("Failed to verify domain.", err); return err; } };

Para executar o exemplo, digite o seguinte no prompt de comando. O domínio é adicionado à Amazon SES para ser verificado.

node ses_verifydomainidentity.js

Esse código de exemplo pode ser encontrado aqui em GitHub.

Excluir identidades

Neste exemplo, use um módulo Node.js para excluir endereços de e-mail ou domínios usados com a AmazonSES.

Crie um diretório libs e um módulo Node.js com o nome de arquivo sesClient.js. Copie e cole o código abaixo nele, o que cria o objeto SES cliente da Amazon. Substituir REGION com sua AWS região.

import { SESClient } from "@aws-sdk/client-ses"; // Set the AWS Region. const REGION = "us-east-1"; // Create SES service object. const sesClient = new SESClient({ region: REGION }); export { sesClient };

Esse código de exemplo pode ser encontrado aqui em GitHub.

Crie um módulo do Node.js com o nome de arquivo ses_deleteidentity.js. Configure o SDK conforme mostrado anteriormente, incluindo a instalação dos clientes e pacotes necessários.

Crie um objeto para passar o parâmetro Identity para o método DeleteIdentityCommand da classe de cliente SES. Para chamar o DeleteIdentityCommand método, crie um request para invocar um objeto de atendimento SES ao cliente da Amazon, passando os parâmetros.

nota

Este exemplo importa e usa os clientes do pacote AWS Service V3 necessários, os comandos V3 e usa o send método em um padrão async/await. Em vez disso, você pode criar esse exemplo usando comandos da V2 fazendo algumas pequenas alterações. Para obter detalhes, consulte Usando comandos v3.

nota

Substituir IDENTITY_EMAIL com o e-mail da identidade a ser excluída.

import { DeleteIdentityCommand } from "@aws-sdk/client-ses"; import { sesClient } from "./libs/sesClient.js"; const IDENTITY_EMAIL = "fake@example.com"; const createDeleteIdentityCommand = (identityName) => { return new DeleteIdentityCommand({ Identity: identityName, }); }; const run = async () => { const deleteIdentityCommand = createDeleteIdentityCommand(IDENTITY_EMAIL); try { return await sesClient.send(deleteIdentityCommand); } catch (err) { console.log("Failed to delete identity.", err); return err; } };

Para executar o exemplo, digite o seguinte no prompt de comando.

node ses_deleteidentity.js

Esse código de exemplo pode ser encontrado aqui em GitHub.