View a markdown version of this page

Applica una versione TLS minima - AWS SDK per JavaScript

La AWS SDK per JavaScript V3 API Reference Guide descrive in dettaglio tutte le operazioni API per la AWS SDK per JavaScript versione 3 (V3).

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Applica una versione TLS minima

Per aumentare la sicurezza durante la comunicazione con AWS i servizi, configura l'uso AWS SDK per JavaScript di TLS 1.2 o successivo.

Transport Layer Security (TLS) è un protocollo utilizzato dai browser Web e da altre applicazioni per garantire la privacy e l'integrità dei dati scambiati su una rete.

Importante

A partire dal 10 giugno 2024, abbiamo annunciato che TLS 1.3 è disponibile sugli endpoint delle API AWS di servizio in ciascuna regione. AWS La versione AWS SDK per JavaScript v3 non negozia la versione TLS stessa. Utilizza invece la versione TLS determinata da Node.js, che è configurabile tramite. https.Agent AWS consiglia di utilizzare la versione corrente di Active LTS di. Node.js

Verifica e applica TLS in Node.js

Quando si utilizza AWS SDK per JavaScript with Node.js, il livello di Node.js sicurezza sottostante viene utilizzato per impostare la versione TLS.

Node.js La versione 12.0.0 e successive utilizzano una versione minima di OpenSSL 1.1.1b, che supporta TLS 1.3. Node.js per impostazione predefinita utilizza TLS 1.3 quando disponibile. È possibile specificare esplicitamente una versione diversa, se necessario.

Verificare la versione di OpenSSL e TLS

Per ottenere la versione di OpenSSL utilizzata dal tuo Node.js computer, esegui il comando seguente.

node -p process.versions

La versione di OpenSSL nell'elenco è la versione utilizzata da Node.js, come mostrato nell'esempio seguente.

openssl: '1.1.1b'

Per ottenere la versione di TLS utilizzata da Node.js sul tuo computer, avvia la shell Node ed esegui i seguenti comandi, nell'ordine.

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

L'ultimo comando restituisce la versione TLS, come mostrato nell'esempio seguente.

'TLSv1.3'

Node.js per impostazione predefinita utilizza questa versione di TLS e tenta di negoziare un'altra versione di TLS se una chiamata non va a buon fine.

Verifica delle versioni TLS minime e massime supportate

Gli sviluppatori possono verificare le versioni TLS minime e massime supportate Node.js utilizzando il seguente script:

import tls from "tls"; console.log("Supported TLS versions:", tls.DEFAULT_MIN_VERSION + " to " + tls.DEFAULT_MAX_VERSION);

L'ultimo comando restituisce la versione TLS minima e massima predefinita, come mostrato nell'esempio seguente.

Supported TLS versions: TLSv1.2 to TLSv1.3

Applicazione di una versione minima di TLS

Node.js negozia una versione di TLS quando una chiamata fallisce. È possibile applicare la versione TLS minima consentita durante questa negoziazione, quando si esegue uno script dalla riga di comando o per richiesta nel codice. JavaScript

Per specificare la versione TLS minima dalla riga di comando, è necessario utilizzare Node.js la versione 11.4.0 o successiva. Per installare una Node.js versione specifica, installa prima Node Version Manager (nvm) utilizzando i passaggi disponibili in Installazione e aggiornamento del gestore di versioni di Node. Quindi esegui i seguenti comandi per installare e utilizzare una versione specifica di. Node.js

nvm install 11 nvm use 11
Enforce TLS 1.2

Per stabilire che TLS 1.2 sia la versione minima consentita, specificare l'argomento --tls-min-v1.2 durante l'esecuzione dello script, come mostrato nell'esempio seguente.

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

Per specificare la versione TLS minima consentita per una richiesta specifica nel JavaScript codice, utilizzate il minVersion parametro per specificare il protocollo, come mostrato nell'esempio seguente.

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( { minVersion: 'TLSv1.2' } ) }) });
Enforce TLS 1.3

Per far sì che TLS 1.3 sia la versione minima consentita, specificate l'--tls-min-v1.3argomento durante l'esecuzione dello script, come mostrato nell'esempio seguente.

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

Per specificare la versione TLS minima consentita per una richiesta specifica nel JavaScript codice, utilizzate il minVersion parametro per specificare il protocollo, come mostrato nell'esempio seguente.

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( { minVersion: 'TLSv1.3' } ) }) });

Verificare e applicare TLS in uno script del browser

Quando utilizzi l'SDK for JavaScript in uno script del browser, le impostazioni del browser controllano la versione di TLS utilizzata. La versione di TLS utilizzata dal browser non può essere individuata o impostata dallo script e deve essere configurata dall'utente. Per verificare e applicare la versione di TLS utilizzata in uno script del browser, consultare le istruzioni relative al browser specifico.

Microsoft Internet Explorer
  1. Apri Internet Explorer.

  2. Dalla barra dei menu, scegli Strumenti - Opzioni Internet - scheda Avanzate.

  3. Scorri verso il basso fino alla categoria Sicurezza, seleziona manualmente la casella di opzione Usa TLS 1.2.

  4. Fai clic su OK.

  5. Chiudi il browser e riavvia Internet Explorer.

Microsoft Edge
  1. Nella casella di ricerca del menu Windows, digitaInternet options.

  2. Nella sezione Migliore corrispondenza, fai clic su Opzioni Internet.

  3. Nella finestra Proprietà Internet, nella scheda Avanzate, scorri verso il basso fino alla sezione Sicurezza.

  4. Seleziona la casella di controllo User TLS 1.2.

  5. Fai clic su OK.

Google Chrome
  1. Apri Google Chrome.

  2. Fai clic su Alt F e seleziona Impostazioni.

  3. Scorri verso il basso e seleziona Mostra impostazioni avanzate... .

  4. Scorri verso il basso fino alla sezione Sistema e fai clic su Apri impostazioni proxy... .

  5. Seleziona la scheda Avanzate.

  6. Scorri verso il basso fino alla categoria Sicurezza, seleziona manualmente la casella di opzione Usa TLS 1.2.

  7. Fai clic su OK.

  8. Chiudi il browser e riavvia Google Chrome.

Mozilla Firefox
  1. Apri Firefox.

  2. Nella barra degli indirizzi, digita about:config e premi Invio.

  3. Nel campo Cerca, inserisci tls. Trova e fai doppio clic sulla voce security.tls.version.min.

  4. Imposta il valore intero su 3 per forzare il protocollo TLS 1.2 come predefinito.

  5. Fai clic su OK.

  6. Chiudi il browser e riavvia Mozilla Firefox.

Apple Safari

Non ci sono opzioni per abilitare i protocolli SSL. Se utilizzi Safari versione 7 o successiva, TLS 1.2 viene abilitato automaticamente.

Recupero della versione TLS in AWS SDK per JavaScript Richieste v3

Puoi registrare la versione TLS utilizzata in una richiesta AWS SDK con il seguente 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); });

L'ultimo comando restituisce la versione TLS in uso, come mostrato nell'esempio seguente.

Using TLS version: TLSv1.3