#sql-server #odbc #windows-xp #sql-server-2017 #windows-xp-sp3
#sql-сервер #odbc #windows-xp #sql-server-2017 #windows-xp-sp3
Вопрос:
У нас есть несколько компьютеров xp (очень старых), которые не могут подключиться к sql server 2017 (работает на Linux). Мы пытаемся протестировать соединение с помощью ODBC. Проблема связана с SSL.
Есть ли способ отключить его, чтобы он мог работать?
Error Message : Microsoft SQL Server Login
Connection failed:
SQLState: '01000'
SQL Server Error: 772
[Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen(SECDoClientHandshake()).
Connection failed:
SQLSTATE: '08001'
SQL Server Error: 18
[Microsoft][ODBC SQL Server Driver][DBNETLIB]SSL Security error
Комментарии:
1. Протестировано с помощью SQLServer 2017 как в Windows, так и в Linux
2. Компьютеры XP находятся в SP3
3. Вы пытались отключить какие-либо параметры, связанные с шифрованием, в строке подключения ODBC?
4. Я не знаю и не думаю, что есть опция шифрования. Знаете ли вы что-нибудь?
5. Наша цель — подключиться из приложения .net. Это невозможно в эфире.
Ответ №1:
У меня была такая же проблема, и я нашел решение https://www.smartftp.com/pt-br/support/kb/2754 . Вот шаги, в случае, если эта ссылка идет на юг.
Решение включает в себя добавление поддержки TLS 1.2 в XP, доступной для «Windows Embedded POSReady 2009», которая основана на Windows XP SP3 (подробнее на https://en.wikipedia.org/wiki/Windows_Embedded_Industry#Windows_Embedded_POSReady_2009 ).
Чтобы заставить его работать на «простом старом XP», вам нужно добавить следующее в реестр Windows:
[HKEY_LOCAL_MACHINESYSTEMWPAPosReady]
"Installed"=dword:00000001
Далее, записи реестра для TLS:
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocolsTLS 1.1Client]
"DisabledByDefault"=dword:00000000
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocolsTLS 1.1Server]
"DisabledByDefault"=dword:00000000
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocolsTLS 1.2Client]
"DisabledByDefault"=dword:00000000
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocolsTLS 1.2Server]
"DisabledByDefault"=dword:00000000
Далее необходимо получить необходимое обновление в Microsoft, KB4019276 (https://support.microsoft.com/en-us/help/4019276/update-to-add-support-for-tls-1-1-and-tls-1-2-in-windows). Установите обновление и перезагрузитесь.