SSL 2.0を使用するSystem.Web.HttpWebRequestオブジェクトを取得するにはどうすればよいですか?
-
05-07-2019 - |
質問
この質問を適切に表現するのに必要な情報がすべて揃っているかどうかわからないので、ご容赦ください。
自己署名SSL証明書で保護されているローカルWebページ(ローカルは192.168。*を意味します)があります。 System.Net.HttpWebRequestオブジェクトを使用してこのページにアクセスしようとしていますが、奇妙な問題に直面しています。
「SSL 2.0を使用」でInternet Explorerでこのページにアクセスした場合オプションをオフにすると、ブラウザは接続を確立できないかのようにエラーを返します。 (つまり、サーバー送信エラーではなく、ブラウザ接続エラーです。)「SSL 2.0を使用」がオプションがオンになっていると、ページは正常に機能し、これは自己署名証明書であるという警告を受け取ります。続行しますかなど(奇妙なことに、SSL 2.0がオンになっていないはずのFirefox罰金。)
今、私の問題は、HttpWebRequestオブジェクトを使用してこのページにアクセスしようとしていますが、返されるエラーは、「SSL 2.0を使用」IEがスローするエラーのように、接続が予期せず閉じられたことですオフになります。 (すでに自己署名証明書であるという事実を無視するためのコードを用意していますが、そこまでは到達していません。)
System.Net.HttpWebRequestを取得して、「SSL 2.0を使用」する方法を教えてください。リクエストを行っているとき
解決
Ssl3を扱っているときにこの問題を自分で解決しましたが、同じアドバイスがSSL2でも機能するかどうかわかりませんか?
この問題を回避するには、セキュリティプロトコルでSsl3フラグを次のように設定します。
ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;
詳細については、次のリンクをご覧ください。
MSDNのsystem.net.servicepointmanager.securityprotocol
運がよければ、正しい方向にあなたを指し示すかもしれません:)