在WCF客户端中加密/解密Soap Body

时间:2013-09-18 05:43:36

标签: wcf soap encryption wcf-binding wcf-security

我在IIS中托管了WCF服务。该服务被强制为 basicHttpBinding 。在WCF服务前面有IBM DataPower,它将它暴露给外部世界。

我正在编写一个WCF客户端应用程序(继承自ClientBase),它必须使用预共享公钥加密消息体,DataPower将对其进行解密并将消息转发给托管服务器。至于响应,DataPower将对其进行加密,客户端应该能够解密收到的响应。实现这一目标的一种方法(我能想到)是使用IClientMessageInspector并使用BeforeSendRequest()来加密AfterReceiveReply()来解密。在开始这条路线之前,我想知道有哪些其他选择可以实现这一目标?

2 个答案:

答案 0 :(得分:0)

通常,模式是使用SSL,它易于在DataPower和WCF客户端中使用。我不确定在DataPower中配置消息级加密有多容易。如果您坚持使用消息级加密,请首先检查DP是否支持标准的WS-Security方法,在这种情况下配置WCF客户端很容易(基本的http绑定具有消息的安全模式和客户端凭证类型的证书或用户名,但当然取决于如果你想配置客户端身份验证。)

答案 1 :(得分:0)

是datapower支持WS-Security标准,您可以使用任何部分或全部消息进行加密/解密。这里你唯一要说的是在播放消息级安全性时是使用PKI还是对称加密/解密技术。