[ https://issues.apache.org/jira/browse/WSS-616?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Russell Orf updated WSS-616:
----------------------------
Description:
In Apache CXF v3.1.7, I have a JAX-WS web service client calling a service that requires a
HolderOfKey SAML Assertion. The assertions are from a custom service that does not adhere
to the WS-Trust SecureTokenService standard, so I am adding them manually in a SAMLCallbackHander,
using the callback.setAssertionElement() method.
When invoking the client, the WSS4J framework is unable to compute the signature for the SecurityTokenReference
header block, throwing the below error:
{{
javax.xml.crypto.dsig.XMLSignatureException: javax.xml.crypto.dsig.TransformException: org.apache.wss4j.common.ext.WSSecurityException:
Referenced token "id-of-SAML-assertion" not found
at org.apache.wss4j.dom.str.STRParserUtil.getTokenElement(StrParserUtil.java:314)
at org.apache.wss4j.dom.transform.STRTransformUtil.dereferenceSTR(STRTransformUtil.java:98)
at org.apache.wss4j.dom.transform.STRTransform.transformIt(STRTransform.java:195)}}
It appears that the SAML assertion DOM that is added via the callback.setAssertionElement()
method is not getting searched by the STRParserUtil.getTokenElement() method.
was:
In Apache CXF v3.1.7, I have a JAX-WS web service client calling a service that requires a
HolderOfKey SAML Assertion. The assertions are from a custom service that does not adhere
to the WS-Trust SecureTokenService standard, so I am adding them manually in a SAMLCallbackHander,
using the callback.setAssertionElement() method.
When invoking the client, the WSS4J framework is unable to compute the signature for the SecurityTokenReference
header block, throwing the below error:
{{
javax.xml.crypto.dsig.XMLSignatureException: javax.xml.crypto.dsig.TransformException: org.apache.wss4j.common.ext.WSSecurityException:
Referenced token "id-of-SAML-assertion" not found
at org.apache.wss4j.dom.str.STRParserUtil.getTokenElement(StrParserUtil.java:314)
at org.apache.wss4j.dom.transform.STRTransformUtil.dereferenceSTR(STRTransformUtil.java:98)
at org.apache.wss4j.dom.transform.STRTransform.transformIt(STRTransform.java:195)}}
> STRTransform TransformException when manually adding SAML Assertion via SAMLCallback.setAssertionElement()
> ----------------------------------------------------------------------------------------------------------
>
> Key: WSS-616
> URL: https://issues.apache.org/jira/browse/WSS-616
> Project: WSS4J
> Issue Type: Bug
> Components: WSS4J Core
> Affects Versions: 2.1.7
> Environment: Apache Tomcat 8.0.37
> Reporter: Russell Orf
> Assignee: Colm O hEigeartaigh
> Labels: security
>
> In Apache CXF v3.1.7, I have a JAX-WS web service client calling a service that requires
a HolderOfKey SAML Assertion. The assertions are from a custom service that does not adhere
to the WS-Trust SecureTokenService standard, so I am adding them manually in a SAMLCallbackHander,
using the callback.setAssertionElement() method.
> When invoking the client, the WSS4J framework is unable to compute the signature for
the SecurityTokenReference header block, throwing the below error:
> {{
> javax.xml.crypto.dsig.XMLSignatureException: javax.xml.crypto.dsig.TransformException:
org.apache.wss4j.common.ext.WSSecurityException: Referenced token "id-of-SAML-assertion" not
found
> at org.apache.wss4j.dom.str.STRParserUtil.getTokenElement(StrParserUtil.java:314)
> at org.apache.wss4j.dom.transform.STRTransformUtil.dereferenceSTR(STRTransformUtil.java:98)
> at org.apache.wss4j.dom.transform.STRTransform.transformIt(STRTransform.java:195)}}
> It appears that the SAML assertion DOM that is added via the callback.setAssertionElement()
method is not getting searched by the STRParserUtil.getTokenElement() method.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ws.apache.org
For additional commands, e-mail: dev-help@ws.apache.org
|