在 WCF 客户端中加密/解密 SOAP 正文



我有一个在 IIS 中承载的 WCF 服务。该服务被强制要求为 basicHttpBinding。WCF 服务前面有 IBM DataPower,它向外界公开。

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

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

是的,

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

最新更新