C# 通过SSL连接到SQL Server并获取服务器证书
我想连接到端口1433上为SSL配置的SQL Server并获取其证书。我不需要执行任何SQL操作,我只想设置SSL连接并获取SQL Server的证书 以下代码可以获取web服务器证书,但无法获取SQL server证书-连接在超时后失败C# 通过SSL连接到SQL Server并获取服务器证书,c#,sql-server,ssl,C#,Sql Server,Ssl,我想连接到端口1433上为SSL配置的SQL Server并获取其证书。我不需要执行任何SQL操作,我只想设置SSL连接并获取SQL Server的证书 以下代码可以获取web服务器证书,但无法获取SQL server证书-连接在超时后失败 using (client = new TcpClient()) { client.Connect(Hostname, Port); var callback = new RemoteCertificateValidationCallback
using (client = new TcpClient())
{
client.Connect(Hostname, Port);
var callback = new RemoteCertificateValidationCallback(ValidateServerCertificate);
using (stream = new SslStream(client.GetStream(), false, callback))
{
stream.AuthenticateAsClient(Hostname);
}
}
SQL Server客户端是否必须使用一些初始协商才能让服务器切换到SSL?换句话说,SQL Server是否与STARTTLS与SMTP的工作方式类似
要让SQL Server返回其证书,我必须对上述代码执行什么操作?要快速检查SQL Server上是否配置了SSL,可以运行以下操作: 选择会话\u id、加密\u选项 从sys.dm_exec_连接 您还可以强制SQL Server使用加密标志。您可以在SQLServer配置管理器中执行此操作
祝你好运,让我知道这是否有用。研究FreeTDS的实现。在这个代码示例中,你在哪里指定端口是1433?@ErikPhilips我假设他的
port
变量设置在示例代码的范围之外。它现在在那里,在一些编辑过程中丢失了。嗨,这是自签名证书吗?