Hi!

Here comes the stactrace our customer sent us:

cause: org.apache.ws.security.WSSecurityException (The signature
verification failed)
] ACI_FAULT_TRACE[
de.jbfagree.babylon.ps0.axis.faults.client.ClientBabylonFault: Fehler beim
Verarbeiten des Security-Headers
             at
de.jbfagree.babylon.ps0.axis.faults.BabylonFaultFactory.CLIENT_ERROR_DURING_SECURITY_PROCESSING
(BabylonFaultFactory.java:1489)
             at
de.jbfagree.babylon.ps2.axis.handler.security.ExtractSecurityHandlerPS2.processSecurityHeader
(ExtractSecurityHandlerPS2.java:130)
             at
de.jbfagree.babylon.ps2.axis.handler.security.ExtractSecurityHandlerPS2.invokePS2
(ExtractSecurityHandlerPS2.java:96)
             at
de.jbfagree.babylon.ps2.axis.handler.AbstractPS2Handler.invokePS0
(AbstractPS2Handler.java:29)
             at 
de.jbfagree.babylon.ps0.axis.handler.AbstractPS0Handler.invoke
(AbstractPS0Handler.java:85)
             at org.apache.axis.strategies.InvocationStrategy.visit
(InvocationStrategy.java:32)
             at 
org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
             at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
             at org.apache.axis.strategies.InvocationStrategy.visit
(InvocationStrategy.java:32)
             at 
org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
             at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
             at org.apache.axis.strategies.InvocationStrategy.visit
(InvocationStrategy.java:32)
             at 
org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
             at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
             at org.apache.axis.handlers.soap.SOAPService.invoke
(SOAPService.java:454)
             at 
org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)
             at 
de.jbfagree.webservices.servlet.AxisWebServiceServlet.doPostImpl
(AxisWebServiceServlet.java:336)
             at 
de.jbfagree.webservices.servlet.WebServiceServletBase.doPost
(WebServiceServletBase.java:331)
             at 
javax.servlet.http.HttpServlet.service(HttpServlet.java:638)
             at 
de.jbfagree.webservices.servlet.WebServiceServletBase.service
(WebServiceServletBase.java:432)
             at 
javax.servlet.http.HttpServlet.service(HttpServlet.java:720)
             at
de.jbfagree.bootstrap.servlet.impl.DefaultProductServletManager.service
(DefaultProductServletManager.java:170)
             at de.jbfagree.bootstrap.servlet.api.BootstrapServlet.service
(BootstrapServlet.java:208)
             at 
javax.servlet.http.HttpServlet.service(HttpServlet.java:720)
             at de.jbfagree.bootstrap.servlet.api.BootstrapServlet.service
(BootstrapServlet.java:225)
             at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:199)
             at org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterChain.java:145)
             at org.apache.catalina.core.StandardWrapperValve.invoke
(StandardWrapperValve.java:210)
             at org.apache.catalina.core.StandardPipeline
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
             at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:433)
             at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:955)
             at org.apache.catalina.core.StandardContextValve.invoke
(StandardContextValve.java:139)
             at org.apache.catalina.core.StandardPipeline
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
             at org.apache.catalina.authenticator.AuthenticatorBase.invoke
(AuthenticatorBase.java:446)
             at org.apache.catalina.core.StandardPipeline
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
             at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:433)
             at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:955)
             at org.apache.catalina.core.StandardContext.invoke
(StandardContext.java:2460)
             at org.apache.catalina.core.StandardHostValve.invoke
(StandardHostValve.java:133)
             at org.apache.catalina.core.StandardPipeline
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
             at org.apache.catalina.valves.ErrorDispatcherValve.invoke
(ErrorDispatcherValve.java:119)
             at org.apache.catalina.core.StandardPipeline
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
             at org.apache.catalina.valves.ErrorReportValve.invoke
(ErrorReportValve.java:117)
             at org.apache.catalina.core.StandardPipeline
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
             at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:433)
             at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:955)
             at org.apache.catalina.core.StandardEngineValve.invoke
(StandardEngineValve.java:127)
             at org.apache.catalina.core.StandardPipeline
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
             at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:433)
             at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:955)
             at org.apache.coyote.tomcat4.CoyoteAdapter.service
(CoyoteAdapter.java:157)
             at org.apache.jk.server.JkCoyoteHandler.invoke
(JkCoyoteHandler.java:200)
             at org.apache.jk.common.HandlerRequest.invoke
(HandlerRequest.java:283)
             at org.apache.jk.common.ChannelSocket.invoke
(ChannelSocket.java:773)
             at org.apache.jk.common.ChannelSocket.processConnection
(ChannelSocket.java:703)
             at org.apache.jk.common.ChannelSocket$SocketConnection.runIt
(ChannelSocket.java:895)
             at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run
(ThreadPool.java:689)
             at java.lang.Thread.run(Thread.java:619)
caused by org.apache.ws.security.WSSecurityException: The signature 
verification
failed
             at
org.apache.ws.security.processor.SignatureProcessor.verifyXMLSignature
(SignatureProcessor.java:387)
             at 
org.apache.ws.security.processor.SignatureProcessor.handleToken
(SignatureProcessor.java:85)
             at 
org.apache.ws.security.WSSecurityEngine.processSecurityHeader
(WSSecurityEngine.java:284)
             at 
org.apache.ws.security.WSSecurityEngine.processSecurityHeader
(WSSecurityEngine.java:206)
             at 
org.apache.ws.security.WSSecurityEngine.processSecurityHeader
(WSSecurityEngine.java:159)
             at
de.jbfagree.babylon.ps2.axis.handler.security.ExtractSecurityHandlerPS2.processSecurityHeader
(ExtractSecurityHandlerPS2.java:126)
             at
de.jbfagree.babylon.ps2.axis.handler.security.ExtractSecurityHandlerPS2.invokePS2
(ExtractSecurityHandlerPS2.java:96)
             at
de.jbfagree.babylon.ps2.axis.handler.AbstractPS2Handler.invokePS0
(AbstractPS2Handler.java:29)
             at 
de.jbfagree.babylon.ps0.axis.handler.AbstractPS0Handler.invoke
(AbstractPS0Handler.java:85)
             at org.apache.axis.strategies.InvocationStrategy.visit
(InvocationStrategy.java:32)
             at 
org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
             at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
             at org.apache.axis.strategies.InvocationStrategy.visit
(InvocationStrategy.java:32)
             at 
org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
             at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
             at org.apache.axis.strategies.InvocationStrategy.visit
(InvocationStrategy.java:32)
             at 
org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
             at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
             at org.apache.axis.handlers.soap.SOAPService.invoke
(SOAPService.java:454)
             at 
org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)
             at 
de.jbfagree.webservices.servlet.AxisWebServiceServlet.doPostImpl
(AxisWebServiceServlet.java:336)
             at 
de.jbfagree.webservices.servlet.WebServiceServletBase.doPost
(WebServiceServletBase.java:331)
             at 
javax.servlet.http.HttpServlet.service(HttpServlet.java:638)
             at 
de.jbfagree.webservices.servlet.WebServiceServletBase.service
(WebServiceServletBase.java:432)
             at 
javax.servlet.http.HttpServlet.service(HttpServlet.java:720)
             at
de.jbfagree.bootstrap.servlet.impl.DefaultProductServletManager.service
(DefaultProductServletManager.java:170)
             at de.jbfagree.bootstrap.servlet.api.BootstrapServlet.service
(BootstrapServlet.java:208)
             at 
javax.servlet.http.HttpServlet.service(HttpServlet.java:720)
             at de.jbfagree.bootstrap.servlet.api.BootstrapServlet.service
(BootstrapServlet.java:225)
             at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:199)
             at org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterChain.java:145)
             at org.apache.catalina.core.StandardWrapperValve.invoke
(StandardWrapperValve.java:210)
             at org.apache.catalina.core.StandardPipeline
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
             at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:433)
             at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:955)
             at org.apache.catalina.core.StandardContextValve.invoke
(StandardContextValve.java:139)
             at org.apache.catalina.core.StandardPipeline
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
             at org.apache.catalina.authenticator.AuthenticatorBase.invoke
(AuthenticatorBase.java:446)
             at org.apache.catalina.core.StandardPipeline
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
             at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:433)
             at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:955)
             at org.apache.catalina.core.StandardContext.invoke
(StandardContext.java:2460)
             at org.apache.catalina.core.StandardHostValve.invoke
(StandardHostValve.java:133)
             at org.apache.catalina.core.StandardPipeline
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
             at org.apache.catalina.valves.ErrorDispatcherValve.invoke
(ErrorDispatcherValve.java:119)
             at org.apache.catalina.core.StandardPipeline
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
             at org.apache.catalina.valves.ErrorReportValve.invoke
(ErrorReportValve.java:117)
             at org.apache.catalina.core.StandardPipeline
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
             at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:433)
             at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:955)
             at org.apache.catalina.core.StandardEngineValve.invoke
(StandardEngineValve.java:127)
             at org.apache.catalina.core.StandardPipeline
$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
             at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:433)
             at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:955)
             at org.apache.coyote.tomcat4.CoyoteAdapter.service
(CoyoteAdapter.java:157)
             at org.apache.jk.server.JkCoyoteHandler.invoke
(JkCoyoteHandler.java:200)
             at org.apache.jk.common.HandlerRequest.invoke
(HandlerRequest.java:283)
             at org.apache.jk.common.ChannelSocket.invoke
(ChannelSocket.java:773)
             at org.apache.jk.common.ChannelSocket.processConnection
(ChannelSocket.java:703)
             at org.apache.jk.common.ChannelSocket$SocketConnection.runIt
(ChannelSocket.java:895)
             at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run
(ThreadPool.java:689)
             at java.lang.Thread.run(Thread.java:619)]


Greetings
Hans


> From:
> 
> Nandana Mihindukulasooriya <nandana....@gmail.com>
> 
> To:
> 
> axis-user@ws.apache.org
> 
> Date:
> 
> 15.02.2010 23:52
> 
> Subject:
> 
> Re: Receive WSSecurityException (The signature verification failed)
> 
> Hans,
>      Can you post the stacktrace too. Might be helpful to figure out
> what exactly is happening. 
> 
> regards,
> Nandana 

> On Mon, Feb 15, 2010 at 7:17 PM, Hans-Bernhard Friedrich <
> h.friedr...@levigo.de> wrote:
> Hi, 
> 
> I work on a webservice client and I always receive the same error 
> when I try to make a request to our clients webservice. 
> 
> "org.apache.ws.security.WSSecurityException (The signature 
> verification failed)" 
> 
> - Our client's webservice is axis-based, more I don't know 
> 
> - I use rampart 1.3 and Axis2 1.4.1, EclipseEE 
> - I generated the customers WSDLs with axis2 1.4.1 in EclipseEE 
> - I received certificates of our customer and imported them to a 
keystore 
> - I set up the the security using outflow configuration. I know it's
> deprecated but it seemed easier to me than using a policy.xml. 
> - I also set up a client using a policy.xml signing the body but 
> reveice the same error. I will change to policy in the next step. 
> 
> - I read all I could find on the web and in mailinglists but nothing 
helped: 
> - XML is UTF-B 
> - JVM argument "language=EN" didn't help 
> - Mixing different Axis2 and rampart versions didn't help 
> - Changing xmlsec1.4.0. jar to  1.4.1 or 1.4.2 didn't help 
> - The certs are have not expired 
> - Eclipse' Workspace encoding is UTF-8 
> 
> Question: 
> - Does the exception really mean the SOAP-Envelope has been changed 
> after is was singed? Are there any other reasons this exception 
> could be thrown? 
> 
> - What is about the "Pretty Printing" of the XML issue I've found on
> the mailing list. This this really solved in axis2 1.4.1? 
> - Is there a way to set up namespace optimation and pretty printing 
> manually in axis2 like in axis 1? 
> - Could somethig else be wrong with the certificates? 
> 
> The thing is when I use the a modified sample using a policy.xml I 
> get the same Exception 
> 
> - Is there anything I could tell our client to changed what could help 
me? 
> 
> What did I do special: 
> - Wrote a little handler to avoid "mustunderstand"-Problem in the 
> response: I Set all headers in the response to processed. The error 
> also occurs if I don't engage my handler 
> 
> Here is my Security setup using outflowConfiguration: 
> 
> ...options.setProperty(WSSHandlerConstants.OUTFLOW_SECURITY, 
> getOutflowConfiguration()); 
> ... 
> private  Parameter getOutflowConfiguration() { 
>         OutflowConfiguration ofc = new OutflowConfiguration(); 
>         ofc.setActionItems("Timestamp Signature"); 
>         ofc.setSignatureParts("{Element}{http://docs.oasis-open.org/
> wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd}Timestamp"); 
>         ofc.setUser("fcms-aci"); 
>         ofc.setPasswordCallbackClass("de.aci.handler.PWCBHandler"); 
>         ofc.setSignaturePropRefId("cyrpto_props");               
>         
ofc.setSignatureKeyIdentifier(WSSHandlerConstants.X509_KEY_IDENTIFIER)
> ; 
>         return ofc.getProperty(); 
>     } 
> 
> 
> 
> The PWCBHandler is the same as in all Samples. I just changed the 
> alias and the password 
> 
> I set the properties programmatically, because they should change 
> dynamically later: 
>             
> Properties prop1 = getProps(); 
> serviceclient.getOptions.options.setProperty("cyrpto_props", prop1); 
> ... 
>     private Properties getProps() { 
>                 Properties prop1 =  new Properties(); 
>                 
prop1.setProperty("org.apache.ws.security.crypto.provider", 
> "org.apache.ws.security.components.crypto.Merlin"); 
>                 prop1.setProperty(
> "org.apache.ws.security.crypto.merlin.keystore.type", "jks"); 
>                 prop1.setProperty(
> "org.apache.ws.security.crypto.merlin.keystore.password", 
"l7uzjx1ju...@+w2");
>                 
prop1.setProperty("org.apache.ws.security.crypto.merlin.file"
> , "fcms.keystore"); 
>                 return prop1; 
>           } 
>         
> 
> 
> Does anybody has an idea what I do wrong? 
> 
> Thank you so very much in advance for any ideas!!!! 
> 
> Greetings 
> Hans 

Reply via email to