Chapter 1 Securing Your Server and Network(5):使用SSL加密會話,securingssl

來源:互聯網
上載者:User

Chapter 1 Securing Your Server and Network(5):使用SSL加密會話,securingssl
原文出處:http://blog.csdn.net/dba_huangzj/article/details/38063823,專題目錄:http://blog.csdn.net/dba_huangzj/article/details/37906349

未經作者同意,任何人不得以“原創”形式發布,也不得已用於商業用途,本人不負責任何法律責任。

        前一篇:http://blog.csdn.net/dba_huangzj/article/details/38037457

 

前言:

 

在SQL Server和用戶端之間,資料和SQL查詢會以網路包的形式傳輸。可以使用一些包嗅探器,如Wireshark(http://www.wireshark.org/)等,把這些網路包轉換成可讀形式。

Tabular Data Stream (TDS),表格式資料流,也有譯成扁平資料流,是SQL Server在網路中傳輸包的協議。如果想保護這些資料不被嗅探器偵測,需要使用SSL加密用戶端和伺服器之間的互動。

 

準備工作:

 

如果你希望使用SSL保護通訊,需要從憑證管理中心(Certificate Authority /CA)如VeriSign, Comodo, 或者 DigiCert購買SSL認證。也可以自己產生認證,但是並不是保證效果,特別是由不被信任的第三方產生的認證,安全性不高。

為了讓SQL Server使用認證,需要以運行SQL Server服務的相同帳號安裝認證。或者,如果SQL Server服務由Windows 系統帳號、託管帳號或者虛擬帳號運行SQL Server服務,那麼要使用伺服器上有管理員權限的帳號來安裝認證。

 

實現:

 

1. 開啟SQL Server組態管理員,選擇【SQL Server 網路設定】,並選擇對應的執行個體,本例使用【SQL2012的協議】

 

 

2.右鍵對應的協議 ,選擇【屬性】:

 

3. 把【標誌】頁中的【強制加密】項設為【是】,這會使得你不允許非加密串連:

 

4. 在【認證】頁,添加已經安裝好的認證。注意,如果你沒有選擇認證,SQL Server會自動建立並使用一個【自簽名】認證。

5.點擊確定並重啟SQL Server服務。

 

原理:

 

當你選擇了強制加密之後,用戶端會自動使用SSL串連。你也可以在用戶端連接字串中指定,比如:

Driver={SQL Server Native Client 11.0};Server=myServerAddress;Database=myDataBase; Trusted_Connection=yes;Encrypt=yes;


另外還可以在SSMS中使用下面方式串連:

1. 在【串連到伺服器】的介面中,開啟【選項】:

 

2.在【串連屬性】中勾上【加密串連】:

 

3. 點擊【串連】

4.然後可以在SQL Server中查看是否已經加密:

SELECT encrypt_option FROM sys.dm_exec_connections WHERE session_id = @@SPID;


如果已加密,會顯示【True】,否則顯示【FALSE】

 

注意:認證必須有效,並且必須在認證到期前更新。




相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.