SOAP错误错误

时间:2010-01-28 15:48:15

标签: .net soap

当我尝试进行SOAP调用时,出现以下错误。

soap:ClientGeneral安全错误(WSSecurityEngine:No 提供用于解密的加密属性文件)

任何人都可以解释可能触发它的原因吗? 谢谢,

            UsernameForCertificateAssertion assertion = new UsernameForCertificateAssertion();


            // Set the X509 Certifcate onto the assertion.

            assertion.X509TokenProvider = new X509TokenProvider(StoreLocation.LocalMachine,
                                                                StoreName.My,
                                                                "3264763f000100000745",
                                                                X509FindType.FindBySerialNumber);



            UsernameTokenProvider token = new UsernameTokenProvider("wsibtITStest-200024932", "T3sting!+$");


            assertion.UsernameTokenProvider = token;
            Policy  policy = new Policy();
            policy.Assertions.Add(assertion);
            service.SetPolicy(policy);                                             

           X509SecurityToken secToken = new X509SecurityToken(col[0]);                
           service.RequestSoapContext.Security.Tokens.Add(secToken);

service.ping();

服务是Web服务的实例。 我不知道我是否遗漏了什么。

谢谢,

2 个答案:

答案 0 :(得分:1)

听起来您正在调用的Web Service使用X.509证书实现WS-Security。

您必须联系Web服务的作者进行验证,并让他们为您提供加密请求所需的证书。

答案 1 :(得分:0)

这是一个通用的加密消息。我之前没有正确设置解密处理程序时就已经看过了。我要说验证它的设置正确,并确保你使用与加密相同的解密(我已经看到了我工作的一些人)。

如果这不起作用,您可以发布您的配置以及错误的所有详细信息吗?