

 O [Guia de referência da API do AWS SDK para JavaScript V3](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/) descreve em detalhes todas as operações da API para o AWS SDK para 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á.

# Gerenciamento de identidades do Amazon SES
<a name="ses-examples-managing-identities"></a>

![\[JavaScript code example that applies to Node.js execution\]](http://docs.aws.amazon.com/pt_br/sdk-for-javascript/v3/developer-guide/images/nodeicon.png)

**Este exemplo de código Node.js mostra:**
+ Como verificar endereços de e-mail e domínios usados com o Amazon SES.
+ Como atribuir uma política AWS Identity and Access Management (IAM) às suas identidades do Amazon SES.
+ Como listar todas as identidades do Amazon SES para sua AWS conta.
+ Como excluir identidades usadas com o Amazon SES.

Uma *identidade* do Amazon SES é um endereço de e-mail ou domínio que o Amazon SES usa para enviar e-mails. O Amazon SES requer que você verifique suas identidades de e-mail, confirmando que você é o proprietário delas e impedindo que outras pessoas as utilizem.

Para obter detalhes sobre como verificar endereços de e-mail e domínios no Amazon SES, consulte [Verificar endereços de e-mail e domínios no Amazon SES](https://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-addresses-and-domains.html) no Guia do desenvolvedor do Amazon Simple Email Service. Para obter informações sobre autorização de envio no Amazon SES, consulte [Visão geral da autorização de envio do Amazon SES](Amazon Simple Email Service Developer Guidesending-authorization-overview.html).

## O cenário
<a name="ses-examples-verifying-identities-scenario"></a>

Neste exemplo, você usa uma série de módulos do Node.js para verificar e gerenciar identidades do Amazon SES. Os módulos Node.js usam o SDK JavaScript para verificar endereços de e-mail e domínios, usando esses métodos da classe `SES` cliente:
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ses/Class/ListIdentitiesCommand/](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ses/Class/ListIdentitiesCommand/)
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ses/Class/DeleteIdentityCommand/](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ses/Class/DeleteIdentityCommand/)
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ses/Class/VerifyEmailIdentityCommand/](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ses/Class/VerifyEmailIdentityCommand/)
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ses/Class/VerifyDomainIdentityCommand/](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ses/Class/VerifyDomainIdentityCommand/)

## Tarefas de pré-requisito
<a name="ses-examples-verifying-identities-prerequisites"></a>

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 para JavaScript e de terceiros. Siga as instruções em [ GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javascriptv3/example_code/ses/README.md).
+ 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](https://docs.aws.amazon.com/sdkref/latest/guide/file-format.html) no Guia de referência de *ferramentas AWS SDKs e ferramentas*.

**Importante**  
Esses exemplos demonstram como atender ao import/export cliente objetos e comandar usando ECMAScript6 (ES6).  
Isso requer o Node.js versão 13.x ou superior. Para baixar e instalar a versão mais recente do Node.js, consulte [Downloads do Node.js](https://nodejs.org/en/download).
Se você preferir usar a sintaxe do CommonJS, consulte [Sintaxe ES6/CommonJS de JavaScript](sdk-example-javascript-syntax.md).

## Listar suas identidades
<a name="ses-examples-listing-identities"></a>

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

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

```
import { SESClient } from "@aws-sdk/client-ses";
// Set the AWS Region.
const REGION = "us-east-1";
// Credentials are automatically resolved using the AWS SDK credential provider chain.
// For more information, see https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/setting-credentials-node.html
// Create SES service object.
const sesClient = new SESClient({ region: REGION });
export { sesClient };
```

Esse código de exemplo pode ser encontrado [aqui em GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javascriptv3/example_code/ses/src/libs/sesClient.js).

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 método `ListIdentitiesCommand`, invoque um objeto de serviço do Amazon SES passando o objeto dos parâmetros. 

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

**nota**  
*IdentityType*Substitua pelo 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](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javascriptv3/example_code/ses/src/ses_listidentities.js).

## Verificar a identidade de um endereço de e-mail
<a name="ses-examples-verifying-email"></a>

Neste exemplo, use um módulo do Node.js para verificar remetentes de e-mail para usar com o Amazon SES.

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

```
import { SESClient } from "@aws-sdk/client-ses";
// Set the AWS Region.
const REGION = "us-east-1";
// Credentials are automatically resolved using the AWS SDK credential provider chain.
// For more information, see https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/setting-credentials-node.html
// Create SES service object.
const sesClient = new SESClient({ region: REGION });
export { sesClient };
```

Esse código de exemplo pode ser encontrado [aqui em GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javascriptv3/example_code/ses/src/libs/sesClient.js).

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 método `VerifyEmailIdentityCommand`, invoque um objeto de serviço de cliente do Amazon SES, passando os parâmetros. 

**nota**  
*EMAIL\$1ADDRESS*Substitua pelo 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 ao Amazon SES a ser verificado.

```
node ses_verifyemailidentity.js 
```

Esse código de exemplo pode ser encontrado [aqui em GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javascriptv3/example_code/ses/src/ses_verifyemailidentity.js).

## Verificar uma identidade de domínio
<a name="ses-examples-verifying-domains"></a>

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

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

```
import { SESClient } from "@aws-sdk/client-ses";
// Set the AWS Region.
const REGION = "us-east-1";
// Credentials are automatically resolved using the AWS SDK credential provider chain.
// For more information, see https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/setting-credentials-node.html
// Create SES service object.
const sesClient = new SESClient({ region: REGION });
export { sesClient };
```

Esse código de exemplo pode ser encontrado [aqui em GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javascriptv3/example_code/ses/src/libs/sesClient.js).

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 método `VerifyDomainIdentityCommand`, invoque um objeto de serviço de cliente do Amazon SES, passando o objeto dos 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 async/await padrão. Em vez disso, você pode criar esse exemplo usando comandos da V2 fazendo algumas pequenas alterações. Para obter detalhes, consulte [Usar comandos da v3](migrating.md#using_v3_commands).

**nota**  
*DOMAIN\$1NAME*Substitua pelo 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 ao Amazon SES a ser verificado.

```
node ses_verifydomainidentity.js  
```

Esse código de exemplo pode ser encontrado [aqui em GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javascriptv3/example_code/ses/src/ses_verifydomainidentity.js).

## Excluir identidades
<a name="ses-examples-deleting-identities"></a>

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

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

```
import { SESClient } from "@aws-sdk/client-ses";
// Set the AWS Region.
const REGION = "us-east-1";
// Credentials are automatically resolved using the AWS SDK credential provider chain.
// For more information, see https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/setting-credentials-node.html
// Create SES service object.
const sesClient = new SESClient({ region: REGION });
export { sesClient };
```

Esse código de exemplo pode ser encontrado [aqui em GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javascriptv3/example_code/ses/src/libs/sesClient.js).

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 método `DeleteIdentityCommand`, crie uma `request` para invocar um objeto de serviço de cliente do Amazon SES, 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 async/await padrão. Em vez disso, você pode criar esse exemplo usando comandos da V2 fazendo algumas pequenas alterações. Para obter detalhes, consulte [Usar comandos da v3](migrating.md#using_v3_commands).

**nota**  
*IDENTITY\$1EMAIL*Substitua pelo 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](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javascriptv3/example_code/ses/src/ses_deleteidentity.js).