从已建立的 SqlConnection 确定 TLS 版本

2024-03-09

在实时系统中,我们使用以下命令与各种 MSSQL 服务器建立多个连接SqlConnectionC# 中的对象。

由于客户端正在将其 SQL 服务器更新到 TLS 1.2,我想知道是否有办法确定活动连接上正在使用哪种 TLS 实现。

如果可能的话,我希望完全用 C# 来实现这一点,但只要最终结果是一个独立的应用程序,就可以使用替代语言。

这样做的目的是为客户提供一个快速测试工具,有助于确保在对实时系统进行更改之前,软件能够在集成环境中与 TLS 1.2 正常工作。

我花了几个小时研究这个问题,但到目前为止找不到任何有用的东西。我找到的所有资源都是针对 ASP 开发人员的,并没有详细介绍如何在桌面应用程序中直接连接到 SQL 服务器。

该应用程序使用 .NET 4.5,因此 TLS 1.2 应该可用。

非常感谢


为了任何偶然发现这个问题并寻找同一问题解决方案的人的利益,埃德·哈珀发表的评论是正确的 -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-version-in-tcp-packets-in-builted-tcp-connection https://networkengineering.stackexchange.com/questions/20227/find-ssl-version-in-tcp-packets-in-established-tcp-connection

由于我们的代码是为 .NET 4.5 编写的,因此切换到强制执行 TLS 1.2 不需要任何代码更改。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从已建立的 SqlConnection 确定 TLS 版本 的相关文章

随机推荐

  • JMeter 在性能测试期间挂起

    我试图模拟 4 个不同用户的 100 个线程请求 所有 97 个请求均已发送和接收 但其余 3 个请求仍显示为正在执行 我必须手动停止 Jmeter 然后只传递剩余的请求 为什么会发生这种情况 您的计算机可能没有资源来执行请求 或者 Jav
  • 关于数独求解

    有人可以帮我理解吗这个解决方案 http en wikipedia org wiki Algorithmics of Sudoku Example of a brute force Sudoku solver 28in C 29 Initi
  • 多行 Tkinter 按钮?

    我有以下按钮 option1 tkinter Button opt1 text this is a test to see how many words we can fit in a button and stuff so heres s
  • nginx 不会自动获取 swarm 中的 dns 更改

    我通过运行 nginx让 nginx https github com smashwilson lets nginx在 docker swarm 的默认 nginx 配置中 根据 let nginx 项目 服务 ssl image smas
  • 如何将对象编写为人类可读的文本文件

    我想在文本文件中以人类可读的形式写入对象 该文件被保存为带有不需要的字符的普通序列化对象 如何重写程序以保存到人类可读的文本文件中 import java io class book implements Serializable Stri
  • MPMediaItems 的 NSMutableArray 更快排序?代码审查

    我进入 iOS 编程已经几周了 还有很多东西要学 我有一种包含 MPMediaItems 的 NSMutableArray 正在工作 但是对于 1200 个项目 它大约慢 10 秒 我正在寻找一种更快的方法 我的最终目标是拥有一系列 MPM
  • 升级 jquery 后表单发布警告消息

    我已经升级到jquery 1 10 2 我正在使用 jquery migrate 并且收到警告消息 jQuery parseJSON 需要有效的 JSON 字符串 我不明白如何纠正这个问题 任何人都可以帮我找到如何删除警告消息的最佳解决方案
  • 如何使用 Vim 根据模式将文本拆分为多行?

    假设你有这样的文本 name1 John age1 41 name2 Jane age2 32 name3 Mike age3 36 并且您希望将每一行分成两行以给出如下结果 name1 John age1 41 name2 Jane ag
  • 如何禁用 Kivy 中的小部件?

    我阅读了 Kivy 教程 但找不到如何禁用小部件 例如按钮 def foo self instance args main business logic and then instance disable False type instan
  • 如何在弹性搜索中对多个索引的结果进行排序和限制

    我有 4 个索引 分别称为index1 idndex2 index3 和index4 假设结果集中有数百个结果 现在我只想 top 10 rows result from index1 top 10 rows result from ind
  • 比较 R 中的两个表以查找客户未购买的产品

    我有两个表如下 Cust list lt data frame stringsAsFactors FALSE Customer c Mike S Tim P Type c Shoes Socks Product ID c 233 6546
  • 在 Android 中将 JSON 对象传递给 parse.com

    这是一个相当简单的问题 但由于我没有使用 parse com Android 内置 SDK 所以我陷入了困境 我试图通过 Android 中的以下内容将数据传递到 parse com 即使该对象是在没有数据的情况下创建的 但当我包含数据时它
  • 软件“发行版”和“版本”之间有什么区别(如果有)?

    标题说明了一切 软件 发行版 和 版本 之间有什么区别 如果有 这两个定义有重叠吗 是否所有版本和候选版本都是版本 但并非所有版本都是版本 这是一个简单的解释 构建 可执行文件或通过编译源代码创建的库 版本 软件版本 新版本是不同的版本 发
  • GroupBy - 如何使用 diff() 从 DateTime 中提取秒数

    我有以下数据框 In 372 df 2 Out 372 A ID3 DATETIME 0 B 028 b76cd912ff 2014 10 08 13 43 27 1 B 054 4a57ed0b02 2014 10 08 14 26 19
  • 如何以编程方式锁定 BLACKBERRY 设备(6.0)?

    如何以编程方式锁定黑莓设备 6 0 有一个API叫做 ApplicationManger locksystem true 但在 6 0 中已不再使用 根据BlackBerry OS 7 1 API 文档 http www blackberr
  • 无法使用 TagBuilder 组合标签

    我正在尝试构建一个组合标签 第一个标签 span class requiredInidicator span 第二个标签
  • 访问另一个 osgi 包中的资源?

    我使用 eclipse 插件项目向导 使用 eclipse Helios 创建了两个 OSGI 包 A 和 B 在捆绑包 B 的清单文件中 我添加了捆绑包 A 作为依赖项 此外 我已导出 A 中的包 以便它们对 B 可见 我在捆绑包 A 中
  • 一列中有多个值的 SQL 查询

    我一直在桌子上敲着头试图解决这个问题 我有一个表 用于存储作业信息以及作业未完成的原因 原因为数字 01 02 03 等 待处理的工作可能有两个原因 如果您选择两个原因 它们将存储在同一列中 并以逗号分隔 这是一个来自JOBID table
  • .one() 和 .scalar() 有什么区别

    之间的主要区别是什么 one and scalar 在 SQLAlchemy 中 因为两者都执行相同的工作 我看到一些网站 例如教程点 com https www tutorialspoint com sqlalchemy sqlalche
  • 从已建立的 SqlConnection 确定 TLS 版本

    在实时系统中 我们使用以下命令与各种 MSSQL 服务器建立多个连接SqlConnectionC 中的对象 由于客户端正在将其 SQL 服务器更新到 TLS 1 2 我想知道是否有办法确定活动连接上正在使用哪种 TLS 实现 如果可能的话