Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
1.5.10
-
None
-
None
Description
On an inbound request, WSS4J currently iterates through each security token in the security header and processes each one. However it also requires the entire SOAP request be converted into a DOM structure, even though it might not be necessary to access the SOAP body as part of processing the security header, e.g. processing a Timestamp, or a Username Token.
This task is to enhance WSS4J on the processing side, so that it does not require access to the SOAP body. If it needs to find an element in the SOAP request, it should use a callback mechanism, to obtain e.g. the SOAP body if required. This mechanism could potentially provide support for signed MTOM. WSS4J should supply a default implementation that more or less parallels the current implementation. CXF/Rampart etc. could define their own callback implementations for their specific needs.
The callback class could look something like:
public abstract class LookupCallbacks {
//for the wsu:ID, get the element
Element getElementForID(Object msgContext, String i) {
return null;
}
//for processing of MTOM things eventually
InputStream getAttachment(Object msgContext, String contentId) {
return null;
}
}
Attachments
Issue Links
- is blocked by
-
CXF-3366 Avoid parsing the SOAP Body to DOM in WS-Security processing unless necessary
-
- Closed
-