2011-02-11 9 views
0

SslStreamを使用してサーバーに接続しようとしています。私はサーバーの所有者からPFXファイルを受け取りました。クライアントにインストールしましたが、コードから証明書にアクセスする方法がわかりません。具体的にPFXファイルを使用するSslStream AuthenticateAsClient

、私は次のコードを持っていることを想像...

var serverName = "?"; 
var stream = new SslStream(); 
stream.AuthenticateAsClient(serverName); 

serverNameの値は何でしょうか?私は、これらの値の

どれも動作するようには思えない
"CN = MyServerを" をサーバー
"MyServerを" の
IPアドレスを試みました。マシン上の証明書ストアにアクセスするために何か追加する必要がありますか、またはserverNameの必要性を理解できませんか?

+0

この回答は見つかりましたか? – Fantius

答えて

0

接続先のホストのサーバのサーバ証明書の共通名(通常はfully qualified domain name)である必要があります。例えば

サーバ証明書の件名は次のように見える場合:あなたが使用する必要があります

CN = www.verisign.com, OU = Production Security Services, O = VeriSign, Inc ... 

stream.AuthenticateAsClient("www.verisign.com"); 

を接続先のホストがクライアント証明書の検証なしで接続が許可されている場合、あなたはできるはずです(HTTPSの場合はブラウザなどで)接続し、サーバー証明書を確認するか、OpenSSL clientを試してみてください。