IISでホストされるWCFアプリケーションを作成しようとしています。このWCFアプリは、サードパーティのWebサイトを呼び出してCSVファイルをダウンロードします。サードパーティのWebサイトは、WCF呼び出しを認証するための証明書を提供しています。私の開発環境は、
-OS:Windows 2008R2 -ツール:Visual Studio 2010(.Net 4.x)
開発中、HttpWebRequestを使用して呼び出しを行うのに問題はありませんが、IISに同じものを展開した後、IISを開発サーバーとして使用してVisual Studio 2010を実行した場合でも、次のエラーが発生します。
「\r\n証明書情報がログインと一致しません。接続が拒否されました。」
インストール中の証明書にはパスワードが必要です。「マイユーザーアカウント」と「コンピューターアカウント」にインストールしました。IEにもインストールされています。すべてのインストールで、「信頼されたルート証明機関」にインストールされます。しかし、それでもエラーメッセージが表示されます。以下にコードスニペットを示します。
X509Certificate2 xc = new X509Certificate2(CertPath, GetCertificatePassword());
HttpWebRequest wc = (HttpWebRequest)WebRequest.Create(QryUrl);
wc.ClientCertificates.Add(xc);
Stream str = wc.GetResponse().GetResponseStream();
誰かが私に情報を提供してくれるなら、いいでしょう、もう一度ありがとう、