Erzwingen von TLS 1.2 - AWS SDK for JavaScript

Helfen Sie uns, dasAWS SDK for JavaScriptVersion 3 (V3) -Dokumentation durch Feedback unter Verwendung derFeedbackLink oder erstellen Sie ein Problem oder ziehen Sie eine Anfrage anGitHubaus.

DieAWS SDK for JavaScriptReferenzhandbuch zur V3-API-Referenzbeschreibt ausführlich alle API-Operationen für dieAWS SDK for JavaScriptVersion 3 (V3).

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Erzwingen von TLS 1.2

Um die Sicherheit bei der Kommunikation mit AWS-Services zu erhöhen, konfigurieren Sie den AWS SDK for JavaScript für die Verwendung von TLS 1.2 oder höher.

Transport Layer Security (TLS) ist ein Protokoll, das von Webbrowsern und anderen Anwendungen verwendet wird, um die Privatsphäre und Integrität der über ein Netzwerk ausgetauschten Daten zu gewährleisten.

Überprüfen und Erzwingen von TLS in Node.js

Wenn Sie den AWS SDK for JavaScript mit Node.js verwenden, wird die zugrunde liegende Node.js-Sicherheitsebene verwendet, um die TLS-Version festzulegen.

Node.js 8.0.0 und höher verwenden eine Mindestversion von OpenSSL 1.0.2, die TLS 1.2 unterstützt. Standardmäßig verwendet das SDK für JavaScript TLS 1.2, sofern verfügbar.

Überprüfen der Version von OpenSSL und TLS

Führen Sie den folgenden Befehl aus, um die von Node.js verwendete Version von OpenSSL auf Ihrem Computer abzurufen.

node -p process.versions

Die Version von OpenSSL in der Liste ist die von Node.js verwendete Version, wie im folgenden Beispiel gezeigt.

openssl: '1.1.1d'

Um die von Node.js verwendete Version von TLS auf Ihrem Computer abzurufen, starten Sie die Knoten-Shell und führen Sie die folgenden Befehle in der angegebenen Reihenfolge aus.

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

Der letzte Befehl gibt die TLS-Version aus, wie im folgenden Beispiel gezeigt.

'TLSv1.3'

Node.js verwendet standardmäßig diese Version von TLS und versucht, eine andere Version von TLS auszuhandeln, wenn ein Aufruf nicht erfolgreich ist.

Erzwingen einer Mindestversion von TLS

Node.js verhandelt eine Version von TLS, wenn ein Aufruf fehlschlägt. Sie können die minimal zulässige TLS-Version während dieser Aushandlung erzwingen, entweder wenn Sie ein Skript über die Befehlszeile oder pro Anforderung im JavaScript-Code ausführen.

Um die minimale TLS-Version über die Befehlszeile anzugeben, müssen Sie Node.js Version 11.0.0 oder höher verwenden. Um eine bestimmte Version von Node.js zu installieren, installieren Sie zuerst Node Version Manager (nvm) mit den Schritten unterNode Versionsmanager installieren und aktualisierenaus. Führen Sie dann die folgenden Befehle aus, um eine bestimmte Version von Node.js zu installieren und zu verwenden.

nvm install 11 nvm use 11

Um zu erzwingen, dass TLS 1.2 die minimal zulässige Version ist, geben Sie beim Ausführen des Skripts das Argument --tls-min-v1.2 an, wie im folgenden Beispiel gezeigt.

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

Um die minimal zulässige TLS-Version für eine bestimmte Anforderung im JavaScript-Code anzugeben, verwenden Sie den Parameter httpOptions, um das Protokoll anzugeben, wie im folgenden Beispiel gezeigt.

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' } ) }) });

Überprüfen und Erzwingen von TLS in einem Browserskript

Wenn Sie das SDK für JavaScript in einem Browserskript verwenden, steuern die Browsereinstellungen die verwendete Version von TLS. Die vom Browser verwendete Version von TLS kann nicht vom Skript erkannt oder festgelegt werden und muss vom Benutzer konfiguriert werden. Informationen zur Überprüfung und Erzwingung der in einem Browserskript verwendeten Version von TLS finden Sie in den Anweisungen für den jeweiligen Browser.