Imponha uma versão mínima TLS - 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á.

Imponha uma versão mínima TLS

Para aumentar a segurança ao se comunicar com AWS os serviços, configure o AWS SDK for JavaScript para usar TLS 1.2 ou posterior.

Importante

A AWS SDK for JavaScript v3 negocia automaticamente a TLS versão de nível mais alto suportada por um determinado endpoint AWS de serviço. Opcionalmente, você pode aplicar uma TLS versão mínima exigida pelo seu aplicativo, como TLS 1.2 ou 1.3, mas observe que a 1.3 não é compatível com alguns endpoints de AWS serviço, portanto, algumas chamadas podem falhar se você aplicar a TLS 1.3. TLS

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 em uma rede.

Verifique e aplique TLS em Node.js

Quando você usa o AWS SDK for JavaScript com o Node.js, a camada de segurança subjacente do Node.js é usada para definir a TLS versão.

O Node.js 12.0.0 e versões posteriores usam uma versão mínima do Open SSL 1.1.1b, que suporta 1.3. TLS A AWS SDK for JavaScript v3 usa como padrão TLS 1.3 quando disponível, mas usa como padrão uma versão inferior, se necessário.

Verifique a versão do Open SSL and TLS

Para obter a versão do Open SSL usada pelo Node.js em seu computador, execute o comando a seguir.

node -p process.versions

A versão de Abrir SSL na lista é a versão usada pelo Node.js, conforme mostrado no exemplo a seguir.

openssl: '1.1.1b'

Para obter a versão TLS usada pelo Node.js em seu computador, inicie o shell do Node e execute os seguintes comandos, na ordem.

> var tls = require("tls"); > var tlsSocket = new tls.TLSSocket(); > tlsSocket.getProtocol();

O último comando gera a TLS versão, conforme mostrado no exemplo a seguir.

'TLSv1.3'

Por padrãoTLS, o Node.js usa essa versão do e tenta negociar outra versão do TLS se uma chamada não for bem-sucedida.

Aplique uma versão mínima do TLS

O Node.js negocia uma versão de TLS quando uma chamada falha. Você pode aplicar a TLS versão mínima permitida 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 TLS versão mínima na linha de comando, você deve usar a versão 11.0.0 ou posterior do Node.js. Para instalar uma versão específica do Node.js, primeiro instale o Gerenciador de versão do Node (nvm) usando as etapas encontradas em Instalação e atualização do Gerenciador de versão do Node. Execute os comandos a seguir para instalar e usar uma versão específica do Node.js.

nvm install 11 nvm use 11
Enforce TLS 1.2

Para garantir que TLS 1.2 seja a versão mínima permitida, especifique o --tls-min-v1.2 argumento ao executar seu script, conforme mostrado no exemplo a seguir.

node --tls-min-v1.2 yourScript.js

Para especificar a TLS versão mínima permitida para uma solicitação específica em seu JavaScript código, use o httpOptions parâmetro para especificar o protocolo, conforme mostrado no exemplo a seguir.

import https from "https"; import { NodeHttpHandler } from "@smithy/node-http-handler"; import { DynamoDBClient } from "@aws-sdk/client-dynamodb"; const client = new DynamoDBClient({ region: "us-west-2", requestHandler: new NodeHttpHandler({ httpsAgent: new https.Agent( { secureProtocol: 'TLSv1_2_method' } ) }) });
Enforce TLS 1.3

Para garantir que TLS 1.3 seja a versão mínima permitida, especifique o --tls-min-v1.3 argumento ao executar seu script, conforme mostrado no exemplo a seguir.

node --tls-min-v1.3 yourScript.js

Para especificar a TLS versão mínima permitida para uma solicitação específica em seu JavaScript código, use o httpOptions parâmetro para especificar o protocolo, conforme mostrado no exemplo a seguir.

import https from "https"; import { NodeHttpHandler } from "@smithy/node-http-handler"; import { DynamoDBClient } from "@aws-sdk/client-dynamodb"; const client = new DynamoDBClient({ region: "us-west-2", requestHandler: new NodeHttpHandler({ httpsAgent: new https.Agent( { secureProtocol: 'TLSv1_3_method' } ) }) });

Verificar e aplicar TLS em um script de navegador

Quando você usa o SDK for JavaScript em um script de navegador, as configurações do navegador TLS controlam a versão usada. A versão TLS usada pelo navegador não pode ser descoberta ou definida por script e deve ser configurada pelo usuário. Para verificar e aplicar a versão TLS usada em um script de navegador, consulte as instruções do seu navegador específico.

Microsoft Internet Explorer
  1. Abra o Internet Explorer.

  2. Na barra de menu, escolha a guia Ferramentas - Opções da Internet - Avançado.

  3. Role para baixo até a categoria Segurança, marque manualmente a caixa de opção para Uso TLS 1.2.

  4. Clique em OK.

  5. Feche o navegador e reinicie o Internet Explorer.

Microsoft Edge
  1. Na caixa de pesquisa do menu do Windows, digite Internet options.

  2. Em Melhor correspondência, clique em Opções da Internet.

  3. Na janela Propriedades da Internet, na guia Avançado, role para baixo até a seção Segurança.

  4. Marque a caixa de seleção Usuário TLS 1.2.

  5. Clique em OK.

Google Chrome
  1. Abra o Google Chrome.

  2. Clique em Alt F e selecione Configurações.

  3. Role para baixo e selecione Mostrar configurações avançadas....

  4. Role para baixo até a seção Sistema e clique em Abrir configurações de proxy....

  5. Selecione a guia Avançado.

  6. Role para baixo até a categoria Segurança, marque manualmente a caixa de opção para Uso TLS 1.2.

  7. Clique em OK.

  8. Feche seu navegador e reinicie o Google Chrome.

Mozilla Firefox
  1. Abra o Firefox.

  2. Na barra de endereço, digite about:config e pressione Enter.

  3. No campo Pesquisar, digite tls. Localize e clique duas vezes na entrada de security.tls.version.min.

  4. Defina o valor inteiro como 3 para forçar o protocolo de TLS 1,2 a ser o padrão.

  5. Clique em OK.

  6. Feche seu navegador e reinicie o Mozilla Firefox.

Apple Safari

Não há opções para habilitar SSL protocolos. Se você estiver usando o Safari versão 7 ou superior, a TLS 1.2 será ativada automaticamente.