3
我想连接到在端口1433上为SSL配置的SQL Server并获取其证书。我不需要做任何SQL,我只想设置SSL连接并获得SQL Server的证书。通过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返回证书?
SELECT SESSION_ID,encrypt_option FROM sys.dm_exec_connections
您还可以强制加密标记为SQL Server:
研究FreeTDS的实施。 – 2012-04-04 09:29:17
你在这个代码示例中指定的端口是1433? – 2012-04-04 09:30:04
@ErikPhilips我假设他的'Port'变量设置在他的示例代码范围之外。 – Bridge 2012-04-04 09:31:31