DQ NO.1 - dragon quest fans club

 找回密碼
 加入成為夥伴
搜索
熱搜: 活動 交友 discuz
查看: 2546|回復: 0

[ASP] 關閉 TLS 1.0 後,在ASP下連接SQL Server

[複製鏈接]
發表於 2017-7-26 16:43:15 | 顯示全部樓層 |閱讀模式
問題解決時間:2017/07/26
實際操作的作業系統:Windows 2016 & 2008 R2 (64位元 , 都經過Windows update到最新)
SQL Server:SQL Server 2014 Express
程式語言:ASP (這裡的ASP 指的是 classic asp 3.0 ,不是asp.net )
關鍵字:關閉TLS1.0 , CLASSIC ASP , MSSQL , ADOdb.Connect

問題描述:

為了資訊安全的理由,必須將 IIS 的 TLS 1.0 關閉(disable),但是關閉之後,ASP程式在連接資料庫的部分會因為不支援新的加密方式(TLS1.1 1.2)
出現像這樣的錯誤訊息:

(英文錯誤訊息的可能長這樣)
[Microsoft][ODBC SQL Server Driver][DBNETLIB]SSL Security error

(中文錯誤訊息會是這樣)
[Microsoft][ODBC SQL Server Driver][DBNETLIB] 用戶端不支援加密
[Microsoft][ODBC SQL Server Driver][DBNETLIB] SSL 安全設定錯誤

=============================================
這個提示已經很明顯告訴我們,原本使用的odbc driver只能支援到TLS 1.0,關閉TLS 1.0之後,變成無法跟伺服器連線,如果不想改用DSN方法來連接。
解決方法需要兩個步驟:

第一,安裝支援TLS1.2 的ODBC driver,這次使用的是ODBC Driver 13 for SQL Server
下載網址:https://www.microsoft.com/zh-TW/download/details.aspx?id=53339
本文寫作時 (20170726) 的最新版本是13.1,本次安裝的是64位元的版本,安裝完畢後 建議重開機。


第二,修改程式中的driver設定字串

原本的connect string是這樣:
"driver={sql server};database=Test;server=127.0.0.1;uid=帳號;pwd=密碼"
要改用指定的driver,因此必須把字串中的 { sql server } 改為 { ODBC Driver 13 for SQL Server }


如此,原本無法使用 TLS 1.2、1.1 連線的ASP程式,便可繼續使用。

#TLS1.2 #CLASSICASP #ASP #SQLServer #MSSQL
#ASP3.0再戰10年






您需要登錄後才可以回帖 登錄 | 加入成為夥伴

本版積分規則

Archiver|手機版|ぱふぱふ屋|DQ NO.1

GMT+8, 2019-1-21 19:58 , Processed in 0.050244 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回復 返回頂部 返回列表