2017-09-02 465 views
3

我們的客戶端最近從TLS 1.0升級到TLS 1.2,此後我們的軟件無法與SQL Server連接。它使用OLE DB提供程序連接到SQL Server。 下面是從返回的錯誤SQL服務器 -Microsoft OLE DB Provider for SQL Server是否支持TLS 1.2

[DBNETLIB] [ConnectionOpen SECDoClientHandshake()] SSL安全錯誤 SQL狀態:08001 SQL錯誤號碼:18

找不到相關的任何有用的信息以確定Microsoft OLE DB Provider for SQL Server是否支持TLS 1.2。

我發現的其中一個鏈接似乎暗示它不被支持。 https://forums.iis.net/t/1233674.aspx?connecing+SQL+server+DB+issue+after+installingTLS1+2+in+SQL+srver+with+classic+asp+application+

因此,想要檢查stackoverflow,以防有人有任何這方面的信息。

回答

7

隨Windows提供的SQLOLEDB提供程序和SQL Server ODBC驅動程序是僅爲向後兼容提供的傳統組件。自2005年SQL

這些都被棄用據this blog post by the MSSQL Tiger Team

SQLOLEDB將不會收到TLS 1.2的支持。您需要將您的驅動器開關, 在 https://support.microsoft.com/en-us/kb/3135244

列出支持的驅動程序之一,你應該能夠安裝SQL Server Native Client的2012,並使用只有一個連接字符串變化OLE DB提供程序(改變Provider=SQLOLEDBProvider=SQLNCLI11)。當然,一旦應該測試以避免意外。例如,我記得某人在使用服務器API遊標時遇到與SQL Server Native Client提供程序和ADO經典代碼存在行爲差異的情況,儘管常用的firehose遊標沒有問題。

+0

破解答案。 –

6

這可能不是你的解決方案,因爲它是一個未來解決您的客戶端可能無法等待,但顯然微軟undeprecating的OLEDB驅動程序,使用新版本支持TLS 1.2出Q1 2018: https://blogs.msdn.microsoft.com/sqlnativeclient/2017/10/06/announcing-the-new-release-of-ole-db-driver-for-sql-server/

新的Microsoft OLE DB驅動程序的SQL Server,或msoledbsql,將 也是在這第一 即將發佈推出多子網故障轉移功能,並與最新的TLS 1.2標準保持向上。

此外,這個第一個即將發佈的版本將是一個獨立安裝 包,它與SQL Server生命週期是帶外的。這也意味着 驅動程序將不會打包在SNAC庫中,也不會與 任何其他驅動程序耦合。

+0

感謝您的信息。 –

+0

明確地說,傳統的「用於SQL Server的Microsoft OLE DB提供程序」(SQLOLEDB)仍然被棄用。不贊成聲明表示將會發佈一個新的OLE DB提供程序。名稱將是「用於SQL Server的Microsoft OLE DB驅動程序」(MSOLEDBSQL)。 –

相關問題