SQL Server 与新 TLS 标准的兼容性

Mar*_*ain 30 security sql-server connectivity ssl

  • 主要浏览器正在超越 SSL3.0 和 TLS1.0 。
  • PCI 安全委员会已宣布将这些协议视为足够强的加密的终止日期。

我们需要摆脱这些协议,使用更新更强的协议。在 Windows 服务器上,您可以非常轻松地禁用这些旧协议,而仅提供 TLS1.1 或更高版本。但是,正如其他地方所述,如果禁用了这些较低的协议,Microsoft SQL Server 2008 R2 和 SQL Server 2012(至少是标准版)都将无法启动。但是,MS SQL Server 的版本越来越多。有 SQL Server Standard、Business Intelligence、Enterprise、Express、Web 和 Compact 版本。当然还有 SQL Server 2008、2012、2014 和(预发布)2016。

这些版本中哪些支持或将仅支持使用 TLS1.1 或更高版本的协议?

Aar*_*and 19

微软最近透露(没有大张旗鼓地)他们将投资于 TLS 1.2 并逐步淘汰 SSL。它应该与 SQL Server 的所有版本相关。

更新 2016-01-29Microsoft 已宣布在 2008、2008 R2、2012 和 2014 中正式支持 TLS 1.2。下载和其他信息可以在KB #3135244 中找到。

我在博客上写了一些已经提到的问题,如果你在 2014 年使用加密端点,我还会发出警告:

该帖子还指出了要下载(或其他操作)的正确构建,具体取决于@@version。

此举是否会影响所有现有版本,仅 2014 年及以上版本,或仅 2016 年,还有待观察。下面的引用似乎暗示至少 2014 年将成为工作的一部分 - 我怀疑大部分投资将用于客户端库,而不是引擎,因此它适用于下一个版本的任何版本都是可行的的 ODBC/本机客户端驱动程序将支持。

我从 Microsoft 的 Kevin Farlee 的 PowerPoint 演示文稿中得到了这个信息,并获得了共享信息的许可,尽管我不知道此时已重新分发了多少信息。这是甲板上的确切报价:

动态加密:保护客户端和服务器之间的数据免受窥探和中间人攻击。在 CY 15 升级到 TLS 1.2,逐步淘汰 SSL。

此外,如果您查看KB #3052404,似乎有补丁可以使其与 2012 SP+ 和 2014 一起使用(2016 不需要补丁),但没有迹象表明会向后移植到 SQL Server 2005、2008 ,或 2008 R2(坦率地说,我会很惊讶)。


Jen*_* W. 6

与其他答案一样:您需要一个最新的 TLS1.2 CU。看:

修复:您不能使用传输层安全协议版本 1.2 连接到运行 SQL Server 2014 或 SQL Server 2012 的服务器

  • SQL Server 2014 SP1 的累积更新 1
  • SQL Server 2014 累积更新 8
  • SQL Server 2012 SP3 的累积更新 1
  • SQL Server 2012 SP2 的累积更新 10

仅启用 TLS 1.2 后,您可能会遇到两个错误:

  1. SQL Server 2014 代理将无法启动。解决方案:从KB3135244中的下载链接安装SQL Server 2012 SNAC
  2. SQL Server Management Studio 无法连接。解决方案:从KB3135244安装适用的 .NET 框架修补程序

此外,您必须更新所有连接到 SQL Server 的客户端上的 SNAC/OBDC 驱动程序。

以下 Microsoft 支持知识库文章中包含 SQL Server 和客户端驱动程序版本的完整列表以及下载链接和其他可能需要的配置更改:

对 Microsoft SQL Server 的 TLS 1.2 支持