我在阅读有关WCF安全性实现的内容时发现有2种类型的安全性: Transport Mode and Message Mode (or both)
Transport Mode and Message Mode (or both)
如果我将HTTPS用作传输模式,是否还使用了消息安全性,它是否更安全?我问这是因为我的理解如下:
https使用SSL协议对邮件进行加密…因此,为什么要添加Message Security并加密SSL加密的邮件?还是我误会了东西?
WCF中的安全性实际上包含几个功能。两者之间的区别在于如何对消息进行签名和加密。
传输安全仅提供点对点通道安全。这意味着HTTPS仅在客户端和向客户端公开的服务器之间建立安全通道。但是,如果此服务器只是负载平衡器或反向代理服务器,则可以直接访问消息的内容。
消息安全性提供端到端通道安全性。这意味着安全性是传输数据的一部分,并且只有预期的目的地才能解密数据(负载平衡器或代理仅看到加密的消息)。在大多数情况下,邮件安全性还使用证书来提供加密和签名,但是它通常较慢,因为传输安全性可以使用硬件加速。
在高级方案中,可以组合使用这些方法。例如,您可以通过HTTPS与负载均衡器进行通信,因为您信任负载均衡器之后的内部网络,但是同时您可以对消息进行签名(消息安全性),以便证明它没有被更改。
两者之间的另一个区别是传输安全性与单个传输协议有关,而消息安全性则与传输协议无关。
消息安全性基于可互操作的协议(但请注意,并非WCF中的每个配置都可互操作)。WCF至少部分支持以下协议:
WCF还支持WS-I基本安全配置文件1.0,它只是具有规定配置的以前协议的子集。
对于不可互操作的功能,WCF提供了诸如Windows安全性或TLSNego和SPNego之类的功能(两者通常都应可互操作,但在许多SOAP堆栈中不可用)以用于服务凭证交换。