2015-08-14 381 views
0

我在尝试获取桌面胖客户端应用程序与服务器之间的Https连接时遇到问题。客户端与服务器之间不支持TLS 1.0

经过我在服务器系统日志中发现的大量搜索后,出现以下错误消息:“从远程客户端应用程序接收到TLS1.0连接,但客户端支持的密码套件都不受服务器支持。连接请求失败。“

在Internet Explorer中检查连接失败并在输入https地址时显示相同的错误消息。但是,如果我在Chrome或Firefox中输入地址,则连接将起作用,并且我会得到一个成功的json响应。在Wireshark中,我注意到IE提供的密码算法的数量比Firefox和chrome少得多。

有没有办法解决这个问题?我必须使用的应用程序是一个现有的应用程序,并且需要是https才能与来自新应用程序的新的宁静服务链接。

我一直在这个问题上撞了几天,并用尽了想法。

回答

0

你有一个密码套件不匹配。

服务器和客户端(浏览器)将尝试商定一个密码套件。就你而言,听起来像Internet Explorer和.NET没有使用服务器支持的密码套件。

Internet Explorer和.NET Framework都使用SChannel作为HTTPS连接。更具体地说,属于BCL一部分的.NET Framework类。完全有可能重新实现SSL/TLS而不使用SChannel。

不知道客户端和服务器实际的密码套件是什么,这很难说。

SChannel可以通过组策略进行配置,以调整启用哪些密码套件。并非SChannel不能完成服务器可能支持的每个密码套件。这需要应用于运行胖客户端的桌面。

或者,您可以将服务器配置为接受客户端支持的密码套件。如何做到这一点取决于你的网络服务器。

+0

感谢您的回复,并且您对我感兴趣。该应用程序运行在.net 4.0中,并在Windows Server 2008 R2上调用iis服务器。我们的服务台支持服务器和台式机。我知道他们可能会设置一些影响ie和后来胖客户端的gpo设置。有没有更多的信息可以让iis服务器接受所有的密码套件? – Andy5

+0

证书是使用visual studio 2010 makecert实用程序生成的 – Andy5

相关问题