1

我有这段代码可以将 X509Certificate 添加到 SOAP 消息并对其进行签名:

//Convert X509Certificate (Config.clientCertificate) to X509Certifica2 to use later on security token.
X509Certificate2 certificate = new X509Certificate2(Config.clientCertificate);

//Create security token
X509SecurityToken certToken = new X509SecurityToken(certificate);

//Add WS-Security to proxy class client and sign message
webserviceClient.RequestSoapContext.Security.Tokens.Add(certToken);
webserviceClient.RequestSoapContext.Security.Elements.Add(new MessageSignature(certToken));

但是 Visual Studio 会显示一条带有此消息的警告:

SoapContext.Security 已过时。考虑从 SendSecurityFilter 或 ReceiveSecurityFilter 派生并创建生成这些过滤器的自定义策略断言。

我正在使用这个程序集:Windows dll 项目(不是 WCF)上的 Microsoft.Web.Services3。

拜托,任何人都可以提供一些帮助来实现 SendSecurityFilter 以及如何使用客户端证书创建自定义策略断言?

我在互联网上找到了一些关于这种技术的教程,但都使用了 UsernameToken,我不知道如何翻译它以使用 X509Certificate。

它正在工作,但我想要一个没有此警告的更新代码。

非常感谢。此致。

4

0 回答 0