我想在端口 1433 上连接到为 SSL 配置的 SQL Server 并获取其证书。我不需要执行任何 SQL,我只想设置 SSL 连接并获取 SQL Server 的证书。
以下代码可以获取 Web 服务器证书,但无法获取 SQL Server 证书 - 超时时间后连接失败。
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 返回其证书?