运输安全是否是通过互联网进行WCF服务的不良做法?

时间:2010-06-03 12:58:50

标签: c# wcf http transport-security

我可以通过Internet访问WCF服务。它具有wsHttpBinding绑定和消息安全模式以及用户名凭据来验证客户端。 msdn表示我们应该为Internet方案使用消息安全性,因为它提供端到端安全性,而不是像传输安全性那样提供点对点安全性。

如果我通过互联网为wcf服务使用传输安全性怎么办?这是一种不好的做法吗?我的数据可以被恶意用户看到吗?

3 个答案:

答案 0 :(得分:8)

不,这将是一个很好的做法 - 麻烦的是:当您处理互联网连接时,无法保证在任意数量的中间跃点上建立完整的安全连接链。

所有可以保证的传输安全性是从客户端到第一跳的链接,以及从最后一跳到服务器的链接 - 介于两者之间的任何内容都超出了您的控制范围。所以基本上,互联网上的传输安全性不会起作用 - 除非你有一个严格控制的环境,你知道客户端直接连接到你的服务器。

由于这些技术限制,传输安全性仅适用于企业/ LAN环境。只要您无法控制路由和中间跃点,就需要使用消息安全性来实现端到端安全性。

答案 1 :(得分:5)

是的,当客户端(大多数客户端都这样做)验证服务器证书时,它是100%安全的。

这里提到的多跳场景是完全虚假的。只有当相同的消息通过各种应用程序时才会出现这种情况。例如几个应用程序代理。如果这些代理不能安全地通信,那么中间网络嗅探器就可以读取该消息。

换句话说,即使中间有数百万台路由器,互联网上的客户端/服务器通信也是100%安全的,但只有当客户端验证服务器证书时它才是安全的,因为客户端可以连接到man-in-可能使用虚假证书模拟服务器的中间主机。如果客户端未验证证书,则可能会泄露邮件。

答案 2 :(得分:1)

IMO可能不是100%

如果BlueCoat可以做到,那么还有谁可以做到?

http://directorblue.blogspot.com/2006/07/think-your-ssl-traffic-is-secure-if.html