It's a bug that has only recently been fixed:

https://git-wip-us.apache.org/repos/asf?p=cxf.git;a=commit;h=eb9ea1e1c049299221f080184a346d0ae5f8aef7

You will have to upgrade to one of the latest (CXF) releases to pick it up.

Colm.


On Wed, Feb 26, 2014 at 2:53 PM, pvivacqua <[email protected]> wrote:

> *Hi,
>
> I am currently trying to implement WS-SecurityPolicy on a web service that
> uses WS-Security (Jboss 7.1.1 + jbossws-cxf-4.1.1.Final). I am trying to
> make CXF enforce tree policies: UsernameToken with Mutual X.509v3
> Authentication, Sign and Encrypt as follows:*
>
> <wsp:Policy
> xmlns:wsu="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd
> "
> xmlns:wspp="http://java.sun.com/xml/ns/wsit/policy";
> xmlns:wsp="http://www.w3.org/ns/ws-policy";
> xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata";
> xmlns:tcp="http://java.sun.com/xml/ns/wsit/2006/09/policy/soaptcp/service";
> xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702";
> xmlns:sc="http://schemas.sun.com/2006/03/wss/server";
> xmlns:fi="
> http://java.sun.com/xml/ns/wsit/2006/09/policy/fastinfoset/service";
> wsu:Id="GidWsNDSOiVendeBindingPolicy">
>         <wsp:ExactlyOne>
>                 <wsp:All>
>                         <sp:AsymmetricBinding>
>                                 <wsp:Policy>
>                                         <sp:InitiatorToken>
>                                                 <wsp:Policy>
>                                                         <sp:X509Token
> sp:IncludeToken="
> http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/IncludeToken/AlwaysToRecipient
> ">
>
> <wsp:Policy>
>
> <sp:WssX509V3Token11/>
>
> </wsp:Policy>
>                                                         </sp:X509Token>
>                                                 </wsp:Policy>
>                                         </sp:InitiatorToken>
>                                         <sp:RecipientToken>
>                                                 <wsp:Policy>
>                                                         <sp:X509Token
> sp:IncludeToken="
> http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/IncludeToken/Never
> ">
>
> <wsp:Policy>
>
> <sp:WssX509V3Token10/>
>
> <sp:RequireIssuerSerialReference/>
>
> </wsp:Policy>
>                                                         </sp:X509Token>
>                                                 </wsp:Policy>
>                                         </sp:RecipientToken>
>                                         <sp:Layout>
>                                                 <wsp:Policy>
>                                                         <sp:Strict/>
>                                                 </wsp:Policy>
>                                         </sp:Layout>
>                                         <sp:EncryptBeforeSigning/>
>                                         <sp:AlgorithmSuite>
>                                                 <wsp:Policy>
>                                                         <sp:Basic128Rsa15/>
>                                                 </wsp:Policy>
>                                         </sp:AlgorithmSuite>
>                                 </wsp:Policy>
>                         </sp:AsymmetricBinding>
>                         <sp:Wss10>
>                                 <wsp:Policy>
>                                         <sp:MustSupportRefIssuerSerial/>
>                                 </wsp:Policy>
>                         </sp:Wss10>
>                 </wsp:All>
>         </wsp:ExactlyOne>
> </wsp:Policy>
>
>
> *All the policies work fine, except for the X509Token Assertion that
> generates the following exception.*
>
> 10:59:56,636 WARNING [org.apache.cxf.phase.PhaseInterceptorChain]
> (http-localhost-127.0.0.1-8080-1) Interceptor for
> {
> http://gid.ws.nds.oiVende/}GidWsNDSOiVende#{http://gid.ws.nds.OiVende/}teste
> has thrown exception, unwinding now: org.apache.cxf.interceptor.Fault:
> These
> policy alternatives can not be satisfied:
> {http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702}X509Token: The
> received token does not match the token inclusion requirement
> {http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702}X509Token
>         at
>
> org.apache.cxf.ws.policy.AbstractPolicyInterceptor.handleMessage(AbstractPolicyInterceptor.java:47)
> [cxf-rt-ws-policy.jar:2.6.4]
>         at
>
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:262)
> [cxf-api.jar:2.6.4]
>         at
>
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
> [cxf-api.jar:2.6.4]
>         at
>
> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:236)
> [cxf-rt-transports-http.jar:2.6.4]
>         at
>
> org.jboss.wsf.stack.cxf.RequestHandlerImpl.handleHttpRequest(RequestHandlerImpl.java:95)
> [jbossws-cxf-server.jar:4.1.1.Final]
>         at
>
> org.jboss.wsf.stack.cxf.transport.ServletHelper.callRequestHandler(ServletHelper.java:156)
> [jbossws-cxf-server.jar:4.1.1.Final]
>         at
> org.jboss.wsf.stack.cxf.CXFServletExt.invoke(CXFServletExt.java:87)
> [jbossws-cxf-server.jar:4.1.1.Final]
>         at
>
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:225)
> [cxf-rt-transports-http.jar:2.6.4]
>         at
>
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:145)
> [cxf-rt-transports-http.jar:2.6.4]
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
> [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]
>         at
> org.jboss.wsf.stack.cxf.CXFServletExt.service(CXFServletExt.java:135)
> [jbossws-cxf-server.jar:4.1.1.Final]
>         at
> org.jboss.wsf.spi.deployment.WSFServlet.service(WSFServlet.java:140)
> [jbossws-spi.jar:2.1.1.Final]
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
> [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]
>         at
>
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:329)
> [jbossweb-7.0.13.Final.jar:]
>         at
>
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248)
> [jbossweb-7.0.13.Final.jar:]
>         at
>
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275)
> [jbossweb-7.0.13.Final.jar:]
>         at
>
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161)
> [jbossweb-7.0.13.Final.jar:]
>         at
>
> org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50)
> [jboss-as-jpa-7.1.1.Final.jar:7.1.1.Final]
>         at
>
> org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153)
> [jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
>         at
>
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155)
> [jbossweb-7.0.13.Final.jar:]
>         at
>
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> [jbossweb-7.0.13.Final.jar:]
>         at
>
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877)
> [jbossweb-7.0.13.Final.jar:]
>         at
>
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:671)
> [jbossweb-7.0.13.Final.jar:]
>         at
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930)
> [jbossweb-7.0.13.Final.jar:]
>         at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_21]
> Caused by: org.apache.cxf.ws.policy.PolicyException: These policy
> alternatives can not be satisfied:
> {http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702}X509Token: The
> received token does not match the token inclusion requirement
> {http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702}X509Token
>         at
>
> org.apache.cxf.ws.policy.AssertionInfoMap.checkEffectivePolicy(AssertionInfoMap.java:167)
> [cxf-rt-ws-policy.jar:2.6.4]
>         at
>
> org.apache.cxf.ws.policy.PolicyVerificationInInterceptor.handle(PolicyVerificationInInterceptor.java:101)
> [cxf-rt-ws-policy.jar:2.6.4]
>         at
>
> org.apache.cxf.ws.policy.AbstractPolicyInterceptor.handleMessage(AbstractPolicyInterceptor.java:45)
> [cxf-rt-ws-policy.jar:2.6.4]
>         ... 26 more
>
> *The request that generated the exception:*
>
> <soapenv:Envelope xmlns:gid="http://gid.ws.nds.OiVende/";
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";>
>         <soapenv:Header>
>                 <wsse:Security
> xmlns:wsse="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd
> "
> xmlns:wsu="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd
> ">
>                         <wsse:UsernameToken wsu:Id="UsernameToken-16">
>
>
> <wsse:Username>AI1qTwNjGnsE99RHFhQ6QFbao7u/fw179mU5oTwGyP6LOOMcffLGZHnlUWD62o3onuGNGbFltkAA
>
> LYVQmowJ2tfL2MdorywfON3uYdQksb0tROGj1q+dtfOEdOO0/nRB4KIPaI9iUQuLlTZTXZZLRCyL
> tfuPdNkM8ZQ/IgX8v+k=</wsse:Username>
>                                 <wsse:Password
> Type="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText
> ">GileUp2HMHBkZ3PvHk9PZFbbmOXKrDoGL/vEUVhXgBuJ5Z9U236w0J55xU645eH4RsltG3T4XmNQ
>
> e1ypi0NUbVzk2De4elkAKBF3s9bQE1rmONLoUYXQRuYDjNBbzajR2okXS80oKi7w0QOLibTFfQeO
> R04KmBo75ykchSqNwKM=</wsse:Password>
>                                 <wsse:Nonce
> EncodingType="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary
> ">ngNCqeakderQcMpmxf4DvA==</wsse:Nonce>
>
> <wsu:Created>2014-02-26T13:59:52.827Z</wsu:Created>
>                         </wsse:UsernameToken>
>                         <ds:Signature Id="SIG-15" xmlns:ds="
> http://www.w3.org/2000/09/xmldsig#";>
>                                 <ds:SignedInfo>
>                                         <ds:CanonicalizationMethod
> Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#";>
>                                                 <ec:InclusiveNamespaces
> PrefixList="gid soapenv"
> xmlns:ec="http://www.w3.org/2001/10/xml-exc-c14n#"/>
>                                         </ds:CanonicalizationMethod>
>                                         <ds:SignatureMethod
> Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
>                                         <ds:Reference URI="#id-14">
>                                                 <ds:Transforms>
>                                                         <ds:Transform
> Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#";>
>
> <ec:InclusiveNamespaces PrefixList="gid"
> xmlns:ec="http://www.w3.org/2001/10/xml-exc-c14n#"/>
>                                                         </ds:Transform>
>                                                 </ds:Transforms>
>                                                 <ds:DigestMethod
> Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
>
> <ds:DigestValue>OQqnS4HijCjWqZud07QwEnBv1ho=</ds:DigestValue>
>                                         </ds:Reference>
>                                 </ds:SignedInfo>
>
>
> <ds:SignatureValue>QW99DAhwIr/xgHnToRtPBVi87LtlUov6k/6kxGpGzqNpK4N5aI2FclAYX9AsU6Rt1mD4rvW7acvW
>
> VttWeQ73bLRtaBm9i2Kcb4/qKISWCpkbomRZO9t3G107hy57WP7SsO1m+uILMD3HqPnYX9clV4Ch
>
> kPHxpywKNdtJHd3TMBUgPHPWtHIcArm5buDfq4ptLTexq+YDcDpCbVB328S+oQpi8wZNSP9JX556
>
> zHjNpDekI+S2dIDxSi/7a7PjNDO8d4ajg7yInznVx3AZm8AU6WHevdcFvIj8hFcKf+7eWNzS/Uos
> FBr6+xuHX1C6dr/5FVgsCL2Ubr/vwPg8LdneJQ==</ds:SignatureValue>
>                                 <ds:KeyInfo
> Id="KI-6F2BD13BBF5C75E94C139342319278815">
>                                         <wsse:SecurityTokenReference
> wsu:Id="STR-6F2BD13BBF5C75E94C139342319278816">
>                                                 <ds:X509Data>
>
> <ds:X509IssuerSerial>
>
> <ds:X509IssuerName>CN=gid.ws,OU=OI,O=TNL PCS S/A,L=Rio de
> Janeiro,ST=Rio de Janeiro,C=BR</ds:X509IssuerName>
>
> <ds:X509SerialNumber>186004993</ds:X509SerialNumber>
>
> </ds:X509IssuerSerial>
>                                                 </ds:X509Data>
>                                         </wsse:SecurityTokenReference>
>                                 </ds:KeyInfo>
>                         </ds:Signature>
>                         <xenc:EncryptedKey
> Id="EK-6F2BD13BBF5C75E94C139342319278513"
> xmlns:xenc="http://www.w3.org/2001/04/xmlenc#";>
>                                 <xenc:EncryptionMethod
> Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-1_5"/>
>                                 <ds:KeyInfo xmlns:ds="
> http://www.w3.org/2000/09/xmldsig#";>
>                                         <wsse:SecurityTokenReference>
>                                                 <ds:X509Data>
>
> <ds:X509IssuerSerial>
>
> <ds:X509IssuerName>CN=gid.ws,OU=OI,O=TNL PCS S/A,L=Rio de
> Janeiro,ST=Rio de Janeiro,C=BR</ds:X509IssuerName>
>
> <ds:X509SerialNumber>2048318029</ds:X509SerialNumber>
>
> </ds:X509IssuerSerial>
>                                                 </ds:X509Data>
>                                         </wsse:SecurityTokenReference>
>                                 </ds:KeyInfo>
>                                 <xenc:CipherData>
>
>
> <xenc:CipherValue>dt7uxlbVMrE2NW7gKB22hl8SaxAY0003BaIJFrs1wCfHhCtg0AhZxGL6Qw0r1lUXPYLMuMjjKddoUbZzsyH8oZYy8umVOokfZyAsukBT4+58MjHrtfhP95f57PB/5P9KDwAYuU/34UhFJfe2PMAAaTn2Wnuk1a0PqvPIHKm7oHWb6qekaKWssGWGvPhFAFg1ea5ao3S9e9OsyXzPxjlHE/bT/aA3dKO4usnkxb+HRweYZQ2E9OK25J5kdBg+fs6195zQI2hCr5X/+cNCm6VvE7RvfPkU0VrwFXSBp0opzg8dpb1ZH17WtV09nyjIsGlMypNvDYIWJYwvKZ2B4ISQkw==</xenc:CipherValue>
>                                 </xenc:CipherData>
>                                 <xenc:ReferenceList>
>                                         <xenc:DataReference URI="#ED-13"/>
>                                 </xenc:ReferenceList>
>                         </xenc:EncryptedKey>
>                 </wsse:Security>
>         </soapenv:Header>
>         <soapenv:Body wsu:Id="id-14"
> xmlns:wsu="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd
> ">
>                 <xenc:EncryptedData Id="ED-13"
> Type="http://www.w3.org/2001/04/xmlenc#Content";
> xmlns:xenc="http://www.w3.org/2001/04/xmlenc#";>
>                         <xenc:EncryptionMethod
> Algorithm="http://www.w3.org/2001/04/xmlenc#aes128-cbc"/>
>                         <ds:KeyInfo xmlns:ds="
> http://www.w3.org/2000/09/xmldsig#";>
>                                 <wsse:SecurityTokenReference
> wsse11:TokenType="
> http://docs.oasis-open.org/wss/oasis-wss-soap-message-security-1.1#EncryptedKey
> "
> xmlns:wsse="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd
> "
> xmlns:wsse11="
> http://docs.oasis-open.org/wss/oasis-wss-wssecurity-secext-1.1.xsd";>
>                                         <wsse:Reference
> URI="#EK-6F2BD13BBF5C75E94C139342319278513"/>
>                                 </wsse:SecurityTokenReference>
>                         </ds:KeyInfo>
>                         <xenc:CipherData>
>
>
> <xenc:CipherValue>p10d5TaRMy1vspa7TjBYZXrd2ZnTIPa6e5+OWHHKO2FZDt/Gst1skyPw/WdA2qzLXtqYm9EXvlwpkcgOp6NrDKsxVgm3uymRsTtvQZ8xeb3OgaZAuW9Cu5ADCStu5N3ykOb/BLfkSFbtnOZSqNrfYEyrFgLBNOFbiY3pTPRP7jqqWaHZjlKJoPtsizt2VB2rbZxiIubbfEgAz1HITyTWa0umhMD0pFK3HewWfIyMNvPSLTHUHPH433u9pPkAROP1b+V1sYbVJpm2ED3L0lujiUujB1S/vV89hAMAHjAVq8qzLZCwOfI64IaNwxzkbZdNmf+UybPtv0+YCy9nKlUalk8lZltHMEi96xTfTHDJMTHhUFE11fS3pqcX3j3tgPJHPPkYz95ZO7Sdn/wQeJXjFL2BHs0tuHPQwY/We5IgSLWqZpCgMHaFOXj1t6XMxGy/n0Y7Y06svaXGevGejJzBixX+8Ab9lLFMqx3WdToeF3onzNCn+gYD8P7UVtV3medF7GWe0Bb/JJSq7bsO6xzDpDl0lntm3gWO3S/ChxidRtRj+rN6ZQ7rBBUXKaEO0Ce9pDnsSxeVMYxJGNwyCeL3d4NOTqG/YtmecN58sOnpsC2WXCz26YqKiWQLKkH0bBSXVGMzi6Fsk7TgSw9VcobiFTffa+tcvSEWeFE/k+YrlL+EhCgw/ez31kbTglsXn4R5UTB4exBNjX7iW/f7iQzgentAIRTOLor6AezHD1GBGB5KVJuIL/gbrsguOlLQ0nqDM31AUj6t1pz4ygCTczNk16yZ4DMEX6dcXQzexprtRbQbqxnWVtcdx4on8isUUQWJ5dKzuRfx5CJ+nYnHRPKhKv4R3oqIvm3bAIMm6kd2tFY8wniN+tkao7XXkuwxdZbD8ZLMyjFNx97c41DPdXq/B9nwkaCKRBUW05waZ3u8bFAIciC35soYzijbeCEY+31pEUkNE1HbGYyrCWrh1PRRb7YaBAHJojq3hHqjkdEbFYgHdEj3xmyHinbted0LWYeF2+0mLt3Lu3rGK9hxY0nE/SW72zl5+qKq0qdzZChivXWehlxMan+IweY1t91DL7q+dImrAoWS03AWsZasXIWmfRJDYBn8+rMJOEQndjd6nlzuZHFFek3Rc4Jx/UYMFzMD3l0qxPoYfMkBxtg7/VKyDA==</xenc:CipherValue>
>                         </xenc:CipherData>
>                 </xenc:EncryptedData>
>         </soapenv:Body>
> </soapenv:Envelope>
>
> *The jbossws-cxf.xml jaxws configuration:*
>
> <jaxws:properties>
>                 <entry key="ws-security.callback-handler"
> value="br.com.gid.ws.interfaces.callback.PasswordCallback"/>
>                 <entry key="ws-security.encryption.properties"
> value="resources/GidWsNDS_Server_Decrypt.properties"/>
>                 <entry key="ws-security.signature.properties"
> value="resources/GidWsNDS_Server_Decrypt.properties"/>
>                 <entry key="ws-security.encryption.username"
> value="useReqSigCert"/>
>                 <entry key="ws-security.validate.token" value="false"/>
>         </jaxws:properties>
>
>
> *Thanks  in advance.*
>
>
>
> --
> View this message in context:
> http://cxf.547215.n5.nabble.com/Why-is-my-X509Token-policy-not-being-satisfied-Is-this-a-bug-tp5740526.html
> Sent from the cxf-user mailing list archive at Nabble.com.
>



-- 
Colm O hEigeartaigh

Talend Community Coder
http://coders.talend.com

Reply via email to