Wir haben eine Anwendung, in der MS SQL Server 2012 ausgeführt wird. Für einen bestimmten Anwendungsfall möchten wir die JDBC-Verbindung durch SSL schützen. Ich habe die folgenden Links überprüft:
- So aktivieren Sie die SSL-Verschlüsselung für eine Instanz von SQL Server mithilfe der Microsoft Management Console
- Verbindung mit SSL-Verschlüsselung herstellen
- Aktivieren Sie verschlüsselte Verbindungen zum Datenbankmodul
Es gibt zwei Dinge, die ich rätselhaft finde:
- Die SSL-Verbindung verwendet Port 1433, wie dies normalerweise bei der Nur-Text-Verbindung der Fall ist. Kein zusätzlicher Port für sichere Verbindungen (wie 389 für einfaches LDAP und 636 für LDAPS)?
- Der dritte Link lautet "Um den Server so zu konfigurieren, dass er verschlüsselte Verbindungen akzeptiert". Ich muss die Einstellung "ForceEncryption" auf TRUE setzen.
Damit komme ich zu meiner letzten Frage: Ist es möglich, gleichzeitig eine sichere und eine nicht sichere Verbindung zu verwenden? Oder müssen alle JDBC-Clients nach der Konfiguration SSL verwenden?
Vielen Dank Kai
sql-server
ssl
sql-server-2012
jdbc
Kaidentität
quelle
quelle
Antworten:
Ich vermute, dass dieser Artikel Ihnen helfen wird:
Das Protokoll verwendet standardmäßig weiterhin den TCP-Port 1433, unabhängig davon, welches SSL verwendet wird. Der Client kann SSL anfordern. Wenn auf dem Server ein Zertifikat installiert ist, verhandeln Server und Client SSL. Der Server kann so konfiguriert werden, dass SSL erzwungen wird, wodurch Clients, die SSL nicht unterstützen, ihre Verbindungen beendet werden. Es ist nicht erforderlich, den Server anzuweisen, SSL zum Abrufen der Verschlüsselung zu zwingen, solange der Client SSL anfordert.
quelle