Aktualisierung von Anwendungen für die Verbindung mit Microsoft SQL Server-DB-Instances mithilfe neuer SSL TLS /-Zertifikate - Amazon Relational Database Service

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.

Aktualisierung von Anwendungen für die Verbindung mit Microsoft SQL Server-DB-Instances mithilfe neuer SSL TLS /-Zertifikate

Seit dem 13. Januar 2023 RDS hat Amazon neue Certificate Authority (CA) -Zertifikate für die Verbindung zu Ihren RDS DB-Instances über Secure Socket Layer oder Transport Layer Security (SSL/TLS) veröffentlicht. Im Folgenden finden Sie Informationen dazu, wie Sie Ihre Anwendungen aktualisieren, um die neuen Zertifikate verwenden zu können.

Anhand dieses Themas können Sie feststellen, ob Client-AnwendungenSSL/verwenden, TLS um eine Verbindung zu Ihren DB-Instances herzustellen. Wenn dies der Fall ist, können Sie weiter überprüfen, ob diese Anwendungen zur Herstellung von Verbindungen Zertifikatverifizierungen erfordern.

Anmerkung

Einige Anwendungen sind so konfiguriert, dass sie nur dann eine Verbindung zu SQL Server-DB-Instances herstellen, wenn sie das Zertifikat auf dem Server erfolgreich verifizieren können.

Für solche Anwendungen müssen Sie die Trust Stores Ihrer Client-Anwendung aktualisieren, damit diese die neuen CA-Zertifikate enthalten.

Nach der Aktualisierung der CA-Zertifikate in den Trust Stores Ihrer Client-Anwendung können Sie die Zertifikate auf Ihren DB-Instances rotieren. Es wird nachdrücklich empfohlen, diese Verfahren vor der Implementierung in Produktionsumgebungen in einer Entwicklungs- oder Testumgebung zu testen.

Weitere Informationen zur Zertifikatrotation finden Sie unter Ihr SSL TLS /-Zertifikat rotieren. Weitere Informationen zum Herunterladen von Zertifikaten finden Sie unter . Hinweise zur Verwendung vonSSL/TLSmit Microsoft SQL Server-DB-Instances finden Sie unterVerwendung SSL mit einer Microsoft SQL Server-DB-Instance.

Ermitteln, ob Anwendungen eine Verbindung zu Ihrer Microsoft SQL Server-DB-Instance herstellen mithilfe SSL

Prüfen Sie die DB-Instance-Konfiguration auf den Wert des Parameters rds.force_ssl. Standardmäßig ist der Parameter rds.force_ssl auf 0 (aus) festgelegt. Wenn der rds.force_ssl Parameter auf 1 (on) gesetzt ist, müssen ClientsSSL/TLSfür Verbindungen verwenden. Weitere Informationen zu Parametergruppen finden Sie unter Parametergruppen für Amazon RDS.

Führen Sie die folgende Abfrage durch, um die aktuelle Verschlüsselungsoption für alle offenen Verbindungen zu einer DB-Instance zu erhalten. Die Spalte ENCRYPT_OPTION zeigt TRUE, wenn die Verbindung verschlüsselt ist.

select SESSION_ID, ENCRYPT_OPTION, NET_TRANSPORT, AUTH_SCHEME from SYS.DM_EXEC_CONNECTIONS

Diese Abfrage zeigt nur die aktuellen Verbindungen. Es wird nicht angezeigt, ob Anwendungen, die in der Vergangenheit eine Verbindung hergestellt oder getrennt haben, diese verwendet SSL haben.

Ermitteln, ob ein Client zum Herstellen von Verbindungen Zertifikatverifizierungen erfordert

Sie können überprüfen, ob verschiedene Arten von Clients zum Herstellen von Verbindungen Zertifikatverifizierungen erfordern.

Anmerkung

Wenn Sie andere als die aufgeführten Konnektoren verwenden, konsultieren Sie deren Dokumentation für Informationen zur Durchsetzung verschlüsselter Verbindungen. Weitere Informationen finden Sie unter Verbindungsmodule für SQL Microsoft-Datenbanken in der Microsoft SQL Server-Dokumentation.

SQLServer Management Studio

Überprüfen Sie, ob die Verschlüsselung für SQL Server Management Studio-Verbindungen erzwungen wird:

  1. Starten Sie SQL Server Management Studio.

  2. Geben Sie für Connect to server (Mit Server verbinden) die Serverinformationen, den Anmeldebenutzernamen und das Passwort ein.

  3. Wählen Sie Optionen aus.

  4. Prüfen Sie, ob auf der Verbindungsseite Encrypt connection (Verbindung verschlüsseln) ausgewählt ist.

Weitere Informationen zu SQL Server Management Studio finden Sie unter Verwenden von SQL Server Management Studio.

Sqlcmd

Das folgende Beispiel mit dem sqlcmd Client zeigt, wie die SQL Serververbindung eines Skripts überprüft wird, um festzustellen, ob erfolgreiche Verbindungen ein gültiges Zertifikat erfordern. Weitere Informationen finden Sie unter Connecting with sqlcmd in der Microsoft SQL Server-Dokumentation.

Bei der Verwendung muss eine SSL Verbindung anhand des Serverzertifikats überprüft werdensqlcmd, wenn Sie das -N Befehlsargument verwenden, um Verbindungen zu verschlüsseln, wie im folgenden Beispiel gezeigt.

$ sqlcmd -N -S dbinstance.rds.amazon.com -d ExampleDB
Anmerkung

Wenn sqlcmd mit der Option -C aufgerufen wird, wird dem Serverzertifikat vertraut, auch wenn dieses nicht mit dem clientseitigen Trust Store übereinstimmt.

ADO.NET

Im folgenden Beispiel stellt die Anwendung mithilfe des Serverzertifikats eine Verbindung herSSL, und das Serverzertifikat muss verifiziert werden.

using SQLC = Microsoft.Data.SqlClient; ... static public void Main() { using (var connection = new SQLC.SqlConnection( "Server=tcp:dbinstance.rds.amazon.com;" + "Database=ExampleDB;User ID=LOGIN_NAME;" + "Password=YOUR_PASSWORD;" + "Encrypt=True;TrustServerCertificate=False;" )) { connection.Open(); ... }

Java

Im folgenden Beispiel stellt die Anwendung SSL eine Verbindung her und das Serverzertifikat muss verifiziert werden.

String connectionUrl = "jdbc:sqlserver://dbinstance.rds.amazon.com;" + "databaseName=ExampleDB;integratedSecurity=true;" + "encrypt=true;trustServerCertificate=false";

Um die SSL Verschlüsselung für Clients zu aktivierenJDBC, die eine Verbindung herstellen, müssen Sie möglicherweise das RDS Amazon-Zertifikat zum Java CA-Zertifikatsspeicher hinzufügen. Anweisungen finden Sie in der Microsoft SQL Server-Dokumentation unter Konfiguration des Clients für die Verschlüsselung. Sie können den Namen der Datei für das vertrauenswürdige CA-Zertifikat auch direkt bereitstellen, indem Sie der Verbindungszeichenfolge trustStore=path-to-certificate-trust-store-file anfügen.

Anmerkung

Wenn Sie in der Verbindungszeichenfolge TrustServerCertificate=true (oder entsprechend) verwenden, wird im Verbindungsvorgang die Vertrauenskettenvalidierung übersprungen. In diesem Fall stellt die Anwendung Verbindungen her, auch wenn das Zertifikat nicht verifiziert werden kann. Die Verwendung von TrustServerCertificate=false erzwingt die Zertifikatvalidierung und stellt eine bewährte Methode dar.

Aktualisieren des Trust Stores Ihrer Anwendung

Sie können den Trust Store für Anwendungen aktualisieren, die Microsoft SQL Server verwenden. Detaillierte Anweisungen finden Sie unter Verschlüsseln spezifischer Verbindungen. Weitere Informationen finden Sie in der Microsoft SQL Server-Dokumentation unter Konfiguration des Clients für die Verschlüsselung.

Wenn Sie ein anderes Betriebssystem als Microsoft Windows verwenden, finden Sie in der Softwareverteilungsdokumentation fürSSL/TLSimplementation Informationen zum Hinzufügen eines neuen Stammzertifizierungsstellenzertifikats. Beispielsweise TLS sind Open SSL und Gnu beliebte Optionen. Verwenden Sie die Implementierungsmethode, um dem RDS Root-CA-Zertifikat Vertrauen zu verleihen. Microsoft stellt Anweisungen zum Konfigurieren von Zertifikaten auf bestimmten Systemen bereit.

Informationen zum Herunterladen des Stammverzeichnisses finden Sie unter .

Beispiele für Skripte, die Zertifikate importieren, finden Sie unter Beispielskript für den Import von Zertifikaten in Ihren Trust Store.

Anmerkung

Wenn Sie den Trust Store aktualisieren, können Sie ältere Zertifikate beibehalten und die neuen Zertifikate einfach hinzufügen.