はい、SO と Google で同様の質問が多数あることは知っています。はい、私はそれらをすべて読み、そこに書かれていることをすべて試しました。はい、どの解決策も役に立ちませんでした。
ASP.NET アプリケーションのコンテキストで使用されるクラス ライブラリがあります。私のクラス ライブラリは、サード パーティの HTTPS Web サイトからデータをダウンロードします。その Web サイトにはクライアント証明書が必要です。に証明書を追加しLOCAL_MACHINE\MY
、アクセス権を付与しましたwinhttpcertcfg
。
私のLogIn
方法は、その証明書をストアで見つけます。デバッグ出力に見られるように、この段階ではすべて問題ありません。しかし、後でページを読み込もうとすると、The request was aborted: Could not create SSL/TLS secure channel.
例外が発生します。
私のコード:
client = new XHttpClient();
X509Store store;
X509CertificateCollection certificates;
store = new X509Store(StoreLocation.LocalMachine);
store.Open(OpenFlags.ReadOnly);
certificates = store.Certificates.Find(
X509FindType.FindByIssuerName,
"Xxxxxxxx Root CA", true);
// everything is fine here, certificates[0] is my certificate
client.ClientCertificates.AddRange(certificates);
store.Close();
何か案は?