Невозможно подключиться к sql server 2012 с включенным шифрованием SSL с использованием sqljdbc4

3291
QuakeCore

Я пытаюсь подключить свое веб-приложение к SQL Server 2012 с включенным шифрованием SSL с использованием sqljdbc4, но я получаю следующую ошибку:

com.microsoft.sqlserver.jdbc.SQLServerException: драйверу не удалось установить безопасное соединение с SQL Server с использованием шифрования Secure Sockets Layer (SSL). Ошибка: «SQL Server не вернул ответ. Соединение было закрыто. ClientConnectionId: aae3c3a9-9b39-4141-aeda-577e06a28dfd». по адресу com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate (SQLServerConnection.java:1667) по адресу com.microsoft.sqlserver.jdbc.TDSChannel.enableSSL (IOBuffer.java:1668) по адресу com.microsoft.sqlserver.jdbc.converserver. (SQLServerConnection.java:1323) по адресу com.microsoft.sqlserver.jdbc.SQLServerConnection.login (SQLServerConnection.java:991) по адресу com.microsoft.sqlserver.jdbc.SQLServerConnection.connect (SQLServerConnection.java.msoft по адресу). sqlserver.jdbc.SQLServerDriver.connect (SQLServerDriver.java: 1012) в java.sql.DriverManager.getConnection (DriverManager.java:571) в java.sql.DriverManager.getConnection (DriverManager.java:215) ... еще 41 причина: java.io.IOException: SQL Server не сделал вернуть ответ. Соединение было закрыто. ClientConnectionId: aae3c3a9-9b39-4141-aeda-577e06a28dfd по адресу com.microsoft.sqlserver.jdbc.TDSChannel $ SSLHandshakeInputStream.ensureSSLPayload (IOBuffer.java:651) по адресу com.microsoft.sqlerjDjDjDHDDWDIHDHDDHDDHDIHDHDHDHDHDHDHDHDHDHDHDHDHDHDHDHDKHDHDKHD_HDKHDKHD.js_D_W_D_W_W_W_W_D_D_W_D_W_W_D_W_D_W_D_W_D_W_D_W_D_W_D_W_D_W_D_W_W_D_W_D_W_D_T_W_D_D_D_D_D_T_T.JT.HD ).JD) .HD.HD.HD.HD.HD.HD.HD.W.WD : 708) на com.microsoft.sqlserver.jdbc.TDSChannel $ SSLHandshakeInputStream.read (IOBuffer.java:700) на com.microsoft.sqlserver.jdbc.TDSChannel $ ProxyInputStream.readInternal (IOBuffer.java:895) на com.microsoft. sqlserver.jdbc.TDSChannel $ ProxyInputStream.read (IOBuffer.java:883) в sun.security.ssl.InputRecord.readFully (InputRecord.

обратите внимание, что размер ключа сертификата сервера превышает 4 КБ. когда я пытаюсь подключиться к серверу SQL с помощью студии управления SQL, я получаю следующую ошибку:

Соединение с сервером было успешно установлено, но во время входа в систему произошла ошибка. (поставщик: поставщик SSL, ошибка: 0 - существующее соединение было принудительно закрыто удаленным хостом.) (Microsoft SQL Server, ошибка: 10054)

но когда я использую сертификат с размером ключа менее 4 КБ, я смог подключиться без каких-либо ошибок. Уменьшение размера сертификата не является приемлемым решением, так что я могу сделать, чтобы иметь возможность подключиться к SQL Server 2012, используя sqljdbc 4 с включенным SSL и используя сертификат с размером ключа больше 4k.

0
Похоже, используемая вами версия SQL Management Studio не поддерживает сертификаты с размером ключа, который вам необходимо использовать. Я предлагаю использовать другой инструмент, чтобы убедиться, что это так. Ramhound 8 лет назад 0
что может быть альтернативным инструментом, отличным от sql Management Studio, который может поддерживать мой размер ключа сертификата? Во всяком случае, даже если SQL Management Studio не поддерживает большой размер сертификата, почему при подключении из Java я получаю ту же ошибку? QuakeCore 8 лет назад 0
Если честно, я подозреваю, что это несовместимость с Java или SQLServer. Наличие сертификата ключа 4k было почти неслыханным в 2011 году, когда были выпущены и SQLServer 2012, и Management Studio 2012. отсюда и предложение использовать другой инструмент. Ramhound 8 лет назад 0

0 ответов на вопрос

Похожие вопросы