繁体   English   中英

没有 SSL 证书的 SQL Server 2012 ForceEncryption?

[英]SQL Server 2012 ForceEncryption without SSL certificate?

使用大约 2 年前一些顾问提供的信息,我们设置了一个 SQL Server 2012 框以始终具有加密连接(至少我们是这样认为的)。 一周前,SSL 证书已过期,并且一切正常,这令人费解。

我们通过执行以下操作强制加密:

获取 SSL 证书并通过 MMC 将其安装在 SQL Server 上。 此步骤的明确说明在此处。

  1. 打开 SQL Server 配置管理器并展开左侧窗格中的 SQL Server 网络配置节点。
  2. 右键单击 MSSQLServer 的协议并选择属性。
  3. 转到证书选项卡并从下拉列表中选择已安装的 SSL 证书。
  4. 转到标志选项卡并将强制加密设置为是。

现在,由于 SSL 证书已过期,因此当我访问上面的第 3 步时,下拉列表中不再选择任何证书。 但是,我将WireShark放在DB服务器上并使用SSMS请求一些数据。 TDS(表格数据流)数据包仍然加密? 当我将 WireShark 放在不同的数据库服务器上时,我将 ForceEncryption 设置为 NO,这些 TDS 数据包未按预期加密。

所以我的问题是:

  1. 如果证书过期,TDS 数据包如何仍然加密?
  2. 即使证书有效,为什么我不必选择选项 > 加密连接来连接到我的加密数据库服务器? 我认为设置 ForceEncryption=Yes 需要所有客户端连接在其连接字符串(或 SSMS 复选框)中指定加密?
  3. 如果 Web API 是访问我的数据库的唯一方法,并且它们是通过 SSL 进行的,那么是否有必要对 SQL 协议进行加密?

1)如果证书过期,TDS数据包如何仍然加密?

您不需要有效的证书来加密,您仍然可以使用过期的证书进行加密。

2)即使证书有效,为什么我不必选择选项 > 加密连接来连接到我的加密数据库服务器? 我认为设置 ForceEncryption=Yes 需要所有客户端连接在其连接字符串(或 SSMS 复选框)中指定加密?

不要在客户端和服务器上都启用强制协议加密选项,如果您在 SQL 服务器上启用了强制加密,则不需要在任何客户端执行

3)如果 Web API 是访问我的数据库的唯一方法,并且它们是通过 SSL 进行的,那么是否有必要对 SQL 协议进行加密?

要启用 SSL,您需要在 SQL 服务器上安装证书,以便访问 DBusing SSL,您正在做同样的工作。

谢谢

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM