Erzwingen Sie eine TLS Mindestversion - AWS SDK for JavaScript

Das AWS SDK for JavaScript APIV3-Referenzhandbuch beschreibt detailliert alle API Operationen für die AWS SDK for JavaScript Version 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 Sie eine TLS Mindestversion

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

Wichtig

Version AWS SDK for JavaScript 3 handelt automatisch die höchste TLS Version aus, die von einem bestimmten AWS Service-Endpunkt unterstützt wird. Sie können optional eine für Ihre Anwendung erforderliche TLS Mindestversion erzwingen, z. B. TLS 1.2 oder 1.3. Beachten Sie jedoch, dass TLS 1.3 von einigen AWS Service-Endpunkten nicht unterstützt wird, sodass einige Aufrufe fehlschlagen können, wenn Sie 1.3 erzwingenTLS.

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

TLSIn Node.js verifizieren und durchsetzen

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

Node.js 12.0.0 und höher verwenden eine Mindestversion von Open SSL 1.1.1b, die 1.3 unterstütztTLS. AWS SDK for JavaScript Version 3 verwendet standardmäßig TLS 1.3, sofern verfügbar, verwendet jedoch standardmäßig eine niedrigere Version, falls erforderlich.

Überprüfen Sie die Version von Open und SSL TLS

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

node -p process.versions

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

openssl: '1.1.1b'

Um die von Node.js TLS verwendete Version von auf Ihrem Computer abzurufen, starten Sie die Node-Shell und führen Sie die folgenden Befehle der Reihe nach 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 und versuchtTLS, eine andere Version von auszuhandeln, TLS falls ein Anruf nicht erfolgreich ist.

Erzwingen Sie eine Mindestversion von TLS

Node.js handelt eine Version aus, in der festgelegt wirdTLS, wann ein Anruf fehlschlägt. Sie können die zulässige TLS Mindestversion während dieser Verhandlung erzwingen, entweder beim Ausführen eines Skripts über die Befehlszeile oder pro Anforderung in Ihrem JavaScript Code.

Um die TLS Mindestversion ü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 zunächst Node Version Manager (nvm). Gehen Sie dabei wie unter Installation und Aktualisierung des Node Version Managers beschrieben vor. 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
Enforce TLS 1.2

Um zu erzwingen, dass TLS 1.2 die zulässige Mindestversion ist, geben Sie das --tls-min-v1.2 Argument bei der Ausführung Ihres Skripts an, wie im folgenden Beispiel gezeigt.

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

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

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

Um zu erzwingen, dass TLS 1.3 die zulässige Mindestversion ist, geben Sie das --tls-min-v1.3 Argument bei der Ausführung Ihres Skripts an, wie im folgenden Beispiel gezeigt.

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

Um die zulässige TLS Mindestversion für eine bestimmte Anfrage in Ihrem JavaScript Code anzugeben, verwenden Sie den httpOptions Parameter, um das Protokoll anzugeben, wie im folgenden Beispiel gezeigt.

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

Überprüfen und erzwingen Sie es TLS in einem Browserskript

Wenn Sie das SDK für JavaScript in einem Browserskript verwenden, steuern die Browsereinstellungen, welche Version TLS davon verwendet wird. Die vom Browser TLS verwendete Version von kann nicht durch ein Skript ermittelt oder festgelegt werden und muss vom Benutzer konfiguriert werden. Informationen zur Überprüfung und Durchsetzung der in einem Browserskript TLS verwendeten Version finden Sie in den Anweisungen für Ihren spezifischen Browser.

Microsoft Internet Explorer
  1. Öffnen Sie Internet Explorer.

  2. Wählen Sie in der Menüleiste die Option ExtrasInternetoptionen — Registerkarte Erweitert.

  3. Scrollen Sie nach unten zur Kategorie Sicherheit und aktivieren Sie manuell das Optionsfeld für Use TLS 1.2.

  4. Klicken Sie auf OK.

  5. Schließen Sie Ihren Browser und starten Sie Internet Explorer neu.

Microsoft Edge
  1. Geben Sie im Suchfeld des Windows-Menüs Folgendes ein Internet options.

  2. Klicken Sie unter Beste Übereinstimmung auf Internetoptionen.

  3. Scrollen Sie im Fenster Interneteigenschaften auf der Registerkarte Erweitert nach unten zum Abschnitt Sicherheit.

  4. Markieren Sie das Kontrollkästchen Benutzer TLS 1.2.

  5. Klicken Sie auf OK.

Google Chrome
  1. Öffnen Sie Google Chrome.

  2. Klicken Sie auf Alt F und wählen Sie Einstellungen.

  3. Scrollen Sie nach unten und wählen Sie Erweiterte Einstellungen anzeigen... .

  4. Scrollen Sie nach unten zum Abschnitt System und klicken Sie auf Proxyeinstellungen öffnen... .

  5. Wählen Sie die Registerkarte Erweitert aus.

  6. Scrollen Sie nach unten zur Kategorie Sicherheit und aktivieren Sie manuell das Optionsfeld für Use TLS 1.2.

  7. Klicken Sie auf OK.

  8. Schließen Sie Ihren Browser und starten Sie Google Chrome neu.

Mozilla Firefox
  1. Öffnen Sie Firefox.

  2. Geben Sie in der Adressleiste about:config ein und drücken Sie die Eingabetaste.

  3. Geben Sie im Suchfeld tls ein. Suchen Sie den Eintrag für security.tls.version.min und doppelklicken Sie darauf.

  4. Setzen Sie den Integer-Wert auf 3, um zu erzwingen, dass das Protokoll 1.2 als Standard verwendet wirdTLS.

  5. Klicken Sie auf OK.

  6. Schließen Sie Ihren Browser und starten Sie Mozilla Firefox neu.

Apple Safari

Es gibt keine Optionen zum Aktivieren von SSL Protokollen. Wenn Sie Safari Version 7 oder höher verwenden, wird TLS 1.2 automatisch aktiviert.