Applicazione di una versione minima di TLS - AWS SDK for JavaScript

Abbiamo annunciato l'imminente uscita end-of-support per la AWS SDK for JavaScript v2. Ti consigliamo di migrare alla AWS SDK for JavaScript v3. Per date, dettagli aggiuntivi e informazioni su come effettuare la migrazione, consulta l'annuncio collegato.

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à.

Applicazione di una versione minima di TLS

Importante

La AWS SDK for JavaScript v2 negozia automaticamente la versione TLS di più alto livello supportata da un determinato endpoint del servizio. AWS Facoltativamente, puoi imporre una versione TLS minima richiesta dall'applicazione, ad esempio TLS 1.2 o 1.3, ma tieni presente che TLS 1.3 non è supportato da alcuni endpoint del AWS servizio, quindi alcune chiamate potrebbero non riuscire se applichi TLS 1.3.

Per aumentare la sicurezza durante la comunicazione con i AWS servizi, configurali per utilizzare TLS 1.2 o versioni successive. AWS SDK for JavaScript

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.

Verificare e applicare TLS in Node.js

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

Node.js 12.0.0 e versioni successive utilizzano una versione minima di OpenSSL 1.1.1b, che supporta TLS 1.3. Per impostazione predefinita, la AWS SDK for JavaScript v3 utilizza TLS 1.3 quando disponibile, ma utilizza per impostazione predefinita una versione precedente se necessario.

Verificare la versione di OpenSSL e TLS

Per ottenere la versione di OpenSSL utilizzata da Node.js sul computer, eseguire il seguente comando.

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 computer, avviare la shell Node ed eseguire i seguenti comandi, in 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 utilizza per impostazione predefinita questa versione di TLS e tenta di negoziare un'altra versione di TLS se una chiamata non ha esito positivo.

Applicazione di una versione minima di TLS

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

Per specificare la versione TLS minima dalla riga di comando, è necessario utilizzare Node.js versione 11.0.0 o successiva. Per installare una versione specifica di Node.js, installare prima Node Version Manager (nvm) utilizzando la procedura indicata nell'argomento relativo all'installazione e all'aggiornamento di Node Version Manager. Quindi eseguire i seguenti comandi per installare e utilizzare una versione specifica di Node.js.

nvm install 11 nvm use 11
Enforcing 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 httpOptions parametro per specificare il protocollo, come illustrato nell'esempio seguente.

const https = require("https"); const {NodeHttpHandler} = require("@aws-sdk/node-http-handler"); const {DynamoDBClient} = require("@aws-sdk/client-dynamodb"); const client = new DynamoDBClient({ region: "us-west-2", requestHandler: new NodeHttpHandler({ httpsAgent: new https.Agent( { secureProtocol: 'TLSv1_2_method' } ) }) });
Enforcing 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 illustrato 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 httpOptions parametro per specificare il protocollo, come illustrato nell'esempio seguente.

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

Verificare e applicare TLS in uno script del browser

Quando utilizzate l'SDK per 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, digita Opzioni Internet.

  2. In Best match, 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 a diventare quello 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 la versione 7 o successiva di Safari, TLS 1.2 viene abilitato automaticamente.