Ale*_*lex 10 c# sql-server tls1.2
在实时系统中,我们使用SqlConnectionC# 中的对象与各种 MSSQL 服务器建立多个连接。
由于客户端正在将其 SQL 服务器更新到 TLS 1.2,我想知道是否有办法确定活动连接上正在使用哪种 TLS 实现。
如果可能的话,我想完全用 C# 实现这一点,但可以使用其他语言,只要最终结果是一个独立的应用程序。
这样做的目的是为客户端提供一个快速测试工具,这将有助于确保软件在对实时系统进行更改之前在集成环境中与 TLS 1.2 一起正常工作。
我花了几个小时研究这个,但到目前为止我找不到任何有用的东西。我找到的所有资源都是针对 ASP 开发人员的,并没有详细介绍如何在桌面应用程序中直接连接到 SQL 服务器。
该应用程序使用 .NET 4.5,因此 TLS 1.2 应该可用。
非常感谢
为了任何偶然发现这个问题并寻找同一问题解决方案的人的利益,Ed Harper 发表的评论是正确的 - I don't think there's a way to determine the TLS version in use by a connection from within SQL Server. You might have to resort to packet capture to determine the TLS version。
使用 .NET 4.5 及更高版本时,支持 TLS 1.2,并且如果与显式指定 TLS 1.2 的服务建立连接,则该连接应该正常工作。
由于 TLS 适用于传输 OSI 层,因此数据包捕获是确认 TLS 版本的正确方法,如 Ed Harper 发布的链接中所述 - https://networkengineering.stackexchange.com/questions/20227/find-ssl-建立的 tcp 连接中的 tcp 数据包版本
由于我们的代码是为 .NET 4.5 编写的,因此切换到强制执行 TLS 1.2 不需要任何代码更改。
| 归档时间: |
|
| 查看次数: |
14185 次 |
| 最近记录: |