我不知道我是否掌握了很好地表达这个问题所需的所有信息,所以请耐心等待。

我有一个受自签名SSL证书保护的本地网页(本地意义为192.168。*)。我正在尝试使用System.Net.HttpWebRequest对象访问此页面,但我遇到了一个奇怪的问题。

如果在Internet Explorer中使用“使用SSL 2.0”访问此页面,选项关闭后,浏览器返回错误,就好像它无法建立连接一样。 (换句话说,浏览器连接错误,而不是服务器发送的错误。)如果“使用SSL 2.0”选项打开,页面工作正常,你得到标准警告,这是一个自签名证书,你想继续,等等。(奇怪的是,Firefox,据说没有打开SSL 2.0,只能工作细。)

现在我的问题是我正在尝试使用HttpWebRequest对象访问此页面,并且它返回的错误是连接意外关闭,就像错误IE在“使用SSL 2.0”时抛出的那样。被关闭了。 (我已经有代码来忽略它是一个自签名证书的事实,但它甚至没有达到那么远。)

如何将System.Net.HttpWebRequest设置为“使用SSL 2.0”。何时提出要求?

有帮助吗?

解决方案

我在处理Ssl3时遇到过这个问题,虽然我不确定相同的建议是否适用于SSL2?

要解决此问题,我在安全协议上设置了Ssl3标志,如下所示:

  

ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;

查看这些链接了解更多详情:

在MSDN上 system.net.servicepointmanager.securityprotocol

MSDN上的安全协议枚举

如果你很幸运,他们可能会指出你正确的方向:)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top