2012-04-04 48 views
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はSMTPでSTARTTLSがどのように機能するかと同様のことをしますか?

SQL Serverに証明書を返すためには、上記のコードをどうすればいいですか?

SELECT session_idの、あなたはまた、SQL Serverの暗号化フラグを強制することができsys.dm_exec_connections

FROM encrypt_option :すぐにSSLをチェックする

+0

FreeTDSの実装を研究します。 –

+0

このコード例では、ポートを1433に指定していますか? –

+0

@ErikPhilips私は彼の 'Port'変数が彼のサンプルコードの範囲外に設定されていると思います。 – Bridge

答えて

0

は、あなたが次のことを実行することができ、あなたのSQL Server上で設定されています。あなたはSQL Serverの設定マネージャーでそれを行うことができます

幸運にも助けになるかどうか教えてください。

関連する問題