O Guia de referência da API do AWS SDK para JavaScript V3 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á.
Aplicar uma versão mínima do TLS
Para aumentar a segurança ao se comunicar com AWS os serviços, configure o AWS SDK para JavaScript para usar o TLS 1.2 ou posterior.
O Transport Layer Security (TLS) é um protocolo usado por navegadores da web e outros aplicativos para garantir a privacidade e a integridade dos dados trocados por meio de uma rede.
Importante
Em 10 de junho de 2024, anunciamos https.Agent AWS recomenda usar a versão atual do Active LTS do Node.js.
Verifique e aplique o TLS em Node.js
Quando você usa o AWS SDK para JavaScript with Node.js, a camada de Node.js segurança subjacente é usada para definir a versão do TLS.
Node.js 12.0.0 e versões posteriores usam uma versão mínima do OpenSSL 1.1.1b, que suporta TLS 1.3. Node.js o padrão é usar o TLS 1.3 quando disponível. É possível especificar explicitamente um perfil diferente, se necessário.
Verificar a versão do OpenSSL e do TLS
Para obter a versão do OpenSSL usada pelo Node.js em seu computador, execute o seguinte comando.
node -p process.versions
A versão do OpenSSL na lista é a versão usada por Node.js, conforme mostrado no exemplo a seguir.
openssl: '1.1.1b'
Para obter a versão do TLS usada pelo seu Node.js computador, inicie o shell do Node e execute os seguintes comandos, em ordem.
>var tls = require("tls");>var tlsSocket = new tls.TLSSocket();>tlsSocket.getProtocol();
O último comando gera a versão do TLS, como mostrado no exemplo a seguir.
'TLSv1.3'
Node.js usa como padrão essa versão do TLS e tenta negociar outra versão do TLS se uma chamada não for bem-sucedida.
Como verificar as versões mínima e máxima compatíveis do TLS
Os desenvolvedores podem verificar as versões mínima e máxima de TLS suportadas Node.js usando o seguinte script:
import tls from "tls"; console.log("Supported TLS versions:", tls.DEFAULT_MIN_VERSION + " to " + tls.DEFAULT_MAX_VERSION);
O último comando indica a versão mínima e máxima padrão do TLS, como mostrado no exemplo a seguir.
Supported TLS versions: TLSv1.2 to TLSv1.3
Impor uma versão mínima do TLS
Node.js negocia uma versão do TLS quando uma chamada falha. Você pode aplicar a versão mínima permitida do TLS durante essa negociação, seja ao executar um script na linha de comando ou por solicitação em seu código. JavaScript
Para especificar a versão mínima do TLS na linha de comando, você deve usar a Node.js versão 11.4.0 ou posterior. Para instalar uma Node.js versão específica, primeiro instale o Node Version Manager (nvm) usando as etapas encontradas em Instalação e atualização do gerenciador de versões do Node.
nvm install 11 nvm use 11
Verificar e impor o TLS em um script de navegador
Quando você usa o SDK para JavaScript em um script de navegador, as configurações do navegador controlam a versão do TLS usada. A versão do TLS usada pelo navegador não pode ser descoberta nem definida por script e deve ser configurada pelo usuário. Para verificar e impor a versão do TLS usada em um script de navegador, consulte as instruções para seu navegador específico.
Recuperando a versão TLS em AWS SDK para JavaScript Solicitações v3
Você pode registrar a versão do TLS usada em uma solicitação do AWS SDK com o seguinte script:
import { S3Client, ListBucketsCommand } from "@aws-sdk/client-s3"; import tls from "tls"; const client = new S3Client({ region: "us-east-1" }); const tlsSocket = new tls.TLSSocket(); client.middlewareStack.add((next, context) => async (args) => { console.log(`Using TLS version: ${tlsSocket.getProtocol()}`); return next(args); });
O último comando gera a versão do TLS em uso, como mostrado no exemplo a seguir.
Using TLS version: TLSv1.3