当使用具有消息安全性的 WSDUALHTTPBINDING 时,是否建议也使用传输安全性 [即 SSL]?也许这取决于场景。就我而言,客户端和服务都位于 Intranet 上。如果该服务位于互联网上的网络服务器上,答案会有所不同吗?
现在更新,我知道 wsduallhttpbinding 不支持传输安全,消息安全是否安全,或者我应该在我的场景下使用另一个支持 ssl 的绑定
当使用具有消息安全性的 WSDUALHTTPBINDING 时,是否建议也使用传输安全性 [即 SSL]?也许这取决于场景。就我而言,客户端和服务都位于 Intranet 上。如果该服务位于互联网上的网络服务器上,答案会有所不同吗?
现在更新,我知道 wsduallhttpbinding 不支持传输安全,消息安全是否安全,或者我应该在我的场景下使用另一个支持 ssl 的绑定
wsDualHttpBinding
不支持传输级安全性,这意味着 SSL/TLS 加密是不可能的。以下参考资料确认传输安全不是wsDualHttpBinding
绑定的选项:
MSDN:枚举WSDualHttpSecurityMode
仅限于两个选项:Message
& None
http://msdn.microsoft.com/en-us/library/ms731363(v=vs.110).aspx
http://msdn.microsoft.com/en-us /library/system.servicemodel.wsdualhttpsecuritymode(v=vs.110).aspx
注意:我还检查了 Microsoft® 服务配置编辑器(下图)以验证选项。
以下在线资源提供了很好的背景信息:
http ://wcfsecurityguide.codeplex.com/
注意:方案 Intranet 与 Internet Web 服务不会影响答案,因为无论哪种方式,建议的配置都是无效的。因此,除非您更改绑定,否则没有 SSL。
问候,
wsDualHttpBinding 不支持传输安全性,如下所述:http: //msdn.microsoft.com/en-us/library/ff648589.aspx
绑定限制:传输安全性不适用于wsDualHttpBinding。
您可以依赖消息安全性。它使用 WS-Security 来保护每条消息。
更新: 正如我所说,您可以依赖消息安全性,它提供端到端的安全性。你可以在这里找到详细的解释:http: //msdn.microsoft.com/en-us/library/ff648863.aspx
消息安全性的缺点主要是每条消息都被加密有点慢,但不要担心它足够安全,您不需要更改绑定。
根据原始问题:
当使用具有消息安全性的 WSDUALHTTPBINDING 时,是否建议也使用传输安全性 [即 SSL]?
如前所述,WSDualHttpBinding
不支持该Transport
级别的安全性。所以最初的问题有点失败。
根据问题的更新:
现在更新,我知道 wsduallhttpbinding 不支持传输安全,消息安全是否安全,或者我应该在我的场景下使用另一个支持 ssl 的绑定
Message
级别的安全性实际上是优越的,因为它提供了端到端的安全性。Transport
级别安全仅提供点对点安全。
消息安全直接对消息进行加密和签名,因此即使通过中间系统路由消息也不会破坏安全性。您还可以获得额外的好处,即消息安全性与传输无关,因此它可以与任何传输协议一起使用。
MSDN 实际上建议在互联网场景中使用消息安全:
在以下场景中使用消息安全性:
- 您正在向 WCF 服务发送消息,并且该消息可能会被转发到其他 WCF 服务或可能通过中间系统进行路由。
- 您的 WCF 客户端正在通过 Internet 访问 WCF 服务,并且消息可能会通过中间系统进行路由。
MSDN 上的这篇消息和传输安全文章将对您非常有帮助。