【问题标题】:Using TLS 1.2 with C#.Net Winform App and SQL Server 2008将 TLS 1.2 与 C#.Net Winform App 和 SQL Server 2008 一起使用
【发布时间】:2017-09-26 09:39:30
【问题描述】:

我们有一个内部 C#.Net WinForm 应用程序,它安装在用户计算机上并连接到 SQL Server 2008 数据库。我们进行了一次安全审查,发现从数据库发送回应用程序的通信是纯文本的,因此可能会被嗅探工具拦截。

我需要采取哪些步骤来确保 WinForm 应用使用 TLS 1.2 协议与数据库进行通信?

【问题讨论】:

  • 看看 ServicePointManager.SecurityProtocol。这可能会满足您的需求。
  • 安全审查没有发现您使用的是不支持的数据库版本?您可以使用 SSL 连接到 SQL Server,但 TLS1.2 在客户端需要 至少 .NET 4.5.2。您必须在服务器上启用加密连接。检查Encrypting Connections to SQL Server
  • @Wheels73 这与数据库连接无关。
  • 有一个Microsoft KB Article 解释了您需要安装哪些补丁才能启用 TLS1.2 一直到 2008 年
  • 同时查看ConnectionString 文档。你需要在你的连接字符串中设置Encrypted=true,也可能是TrustServerCertificate

标签: c# .net sql-server winforms tls1.2


【解决方案1】:

根据 Panagiotis Kanavos 的 cmets,我执行以下操作以使用 TLS 1.2:

  • 确认 SP3 已安装在 SQL Server 2008 上。
  • 将 winform 应用升级到 .NET 4.5.2
  • 将 Encrypt=true;TrustServerCertificate=true 设置为连接字符串

【讨论】:

    猜你喜欢
    • 2016-10-15
    • 1970-01-01
    • 1970-01-01
    • 2019-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多