Definir credenciais em Node.js - AWS SDK for JavaScript

Anunciamos o próximo fim do suporte para o AWS SDK for JavaScript v2. Recomendamos migrar para o AWS SDK for JavaScript v3. Para saber as datas e receber detalhes adicionais e informações sobre como migrar, consulte o anúncio vinculado.

Definir credenciais em Node.js

Há várias maneiras em Node.js de fornecer as credenciais para o SDK. Algumas dessas são mais seguras e outras oferecem mais comodidade durante o desenvolvimento de aplicativos. Ao obter credenciais em Node.js, tome cuidado ao confiar em mais de uma origem como uma variável de ambiente e um arquivo JSON carregado. Altere as permissões em que o código é executado sem perceber a alteração que aconteceu.

Aqui estão as maneiras como é possível fornecer as credenciais em ordem de recomendação:

  1. Carregado a partir dos perfis do AWS Identity and Access Management (IAM) para o Amazon EC2

  2. Carregadas a partir do arquivo de credenciais compartilhado (~/.aws/credentials)

  3. Carregadas de variáveis de ambiente

  4. Carregadas de um arquivo JSON no disco

  5. Outras classes de provedor de credenciais fornecidas pelo SDK do JavaScript

Se mais de uma fonte de credenciais estiver disponível para o SDK, a precedência padrão da seleção será a seguinte:

  1. Credenciais que são explicitamente definidas por meio do construtor do cliente de serviço

  2. Variáveis de ambiente

  3. O arquivo de credenciais compartilhado

  4. Credenciais carregadas do provedor de credenciais do ECS (se aplicável)

  5. Credenciais obtidas por meio de um processo de credenciais especificado no arquivo de configuração da AWS compartilhado ou no arquivo de credenciais compartilhado. Para ter mais informações, consulte Carregamento de credenciais no Node.js usando um processo de credenciais configuradas.

  6. Credenciais carregadas do IAM da AWS usando o provedor de credenciais da instância do Amazon EC2 (se configurado nos metadados da instância).

Para obter mais informações, consulte Class: AWS.Credentials e Class: AWS.CredentialProviderChain na Referência da API do .

Atenção

Embora seja possível fazer isso, não recomendamos codificar as credenciais da AWS no aplicativo. Codificar credenciais oferece um risco de expor o ID de chave de acesso e a chave de acesso secreta.

Os tópicos nesta seção descrevem como carregar credenciais em Node.js.