You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ws.apache.org by co...@apache.org on 2017/02/10 17:22:23 UTC
svn commit: r1782492 - in /webservices/wss4j/trunk/ws-security-dom/src:
main/java/org/apache/wss4j/dom/engine/
main/java/org/apache/wss4j/dom/handler/
main/java/org/apache/wss4j/dom/processor/
main/java/org/apache/wss4j/dom/saml/ main/java/org/apache/w...
Author: coheigea
Date: Fri Feb 10 17:22:22 2017
New Revision: 1782492
URL: http://svn.apache.org/viewvc?rev=1782492&view=rev
Log:
Refactor of WSDocInfo + the Processor interface
Modified:
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/engine/WSSecurityEngine.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/handler/RequestData.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/BinarySecurityTokenProcessor.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/DerivedKeyTokenProcessor.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/EncryptedAssertionProcessor.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/EncryptedDataProcessor.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/EncryptedKeyProcessor.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/Processor.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/ReferenceListProcessor.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SAMLTokenProcessor.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SecurityContextTokenProcessor.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SignatureConfirmationProcessor.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SignatureProcessor.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/TimestampProcessor.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/UsernameTokenProcessor.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/saml/WSSSAMLKeyInfoProcessor.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/saml/WSSecSignatureSAML.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/DerivedKeyTokenSTRParser.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/EncryptedKeySTRParser.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/STRParserParameters.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/STRParserUtil.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/SecurityTokenRefSTRParser.java
webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/SignatureSTRParser.java
webservices/wss4j/trunk/ws-security-dom/src/test/java/org/apache/wss4j/dom/common/CustomProcessor.java
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/engine/WSSecurityEngine.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/engine/WSSecurityEngine.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/engine/WSSecurityEngine.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/engine/WSSecurityEngine.java Fri Feb 10 17:22:22 2017
@@ -317,6 +317,7 @@ public class WSSecurityEngine {
wsDocInfo.setCallbackLookup(callbackLookupToUse);
wsDocInfo.setCrypto(requestData.getSigVerCrypto());
wsDocInfo.setSecurityHeader(securityHeader);
+ requestData.setWsDocInfo(wsDocInfo);
final WSSConfig cfg = getWssConfig();
Node node = securityHeader.getFirstChild();
@@ -341,8 +342,7 @@ public class WSSecurityEngine {
//
Processor p = cfg.getProcessor(el);
if (p != null) {
- List<WSSecurityEngineResult> results =
- p.handleToken((Element) node, requestData, wsDocInfo);
+ List<WSSecurityEngineResult> results = p.handleToken((Element) node, requestData);
if (!results.isEmpty()) {
returnResults.addAll(0, results);
}
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/handler/RequestData.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/handler/RequestData.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/handler/RequestData.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/handler/RequestData.java Fri Feb 10 17:22:22 2017
@@ -41,6 +41,7 @@ import org.apache.wss4j.common.crypto.Pa
import org.apache.wss4j.common.ext.WSSecurityException;
import org.apache.wss4j.dom.SOAPConstants;
import org.apache.wss4j.dom.WSConstants;
+import org.apache.wss4j.dom.WSDocInfo;
import org.apache.wss4j.dom.engine.WSSConfig;
import org.apache.wss4j.dom.message.WSSecHeader;
import org.apache.wss4j.dom.validate.Validator;
@@ -91,6 +92,7 @@ public class RequestData {
private boolean requireTimestampExpires;
private boolean storeBytesInAttachment;
private Serializer encryptionSerializer;
+ private WSDocInfo wsDocInfo;
/**
* Whether to add an InclusiveNamespaces PrefixList as a CanonicalizationMethod
@@ -750,4 +752,12 @@ public class RequestData {
public void setAddUsernameTokenNonce(boolean addUsernameTokenNonce) {
this.addUsernameTokenNonce = addUsernameTokenNonce;
}
+
+ public WSDocInfo getWsDocInfo() {
+ return wsDocInfo;
+ }
+
+ public void setWsDocInfo(WSDocInfo wsDocInfo) {
+ this.wsDocInfo = wsDocInfo;
+ }
}
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/BinarySecurityTokenProcessor.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/BinarySecurityTokenProcessor.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/BinarySecurityTokenProcessor.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/BinarySecurityTokenProcessor.java Fri Feb 10 17:22:22 2017
@@ -32,7 +32,6 @@ import org.apache.wss4j.common.token.PKI
import org.apache.wss4j.common.token.X509Security;
import org.apache.wss4j.common.util.XMLUtils;
import org.apache.wss4j.dom.WSConstants;
-import org.apache.wss4j.dom.WSDocInfo;
import org.apache.wss4j.dom.engine.WSSecurityEngineResult;
import org.apache.wss4j.dom.handler.RequestData;
import org.apache.wss4j.dom.message.token.KerberosSecurity;
@@ -51,15 +50,14 @@ public class BinarySecurityTokenProcesso
*/
public List<WSSecurityEngineResult> handleToken(
Element elem,
- RequestData data,
- WSDocInfo wsDocInfo
+ RequestData data
) throws WSSecurityException {
// See if the token has been previously processed
String id = elem.getAttributeNS(WSConstants.WSU_NS, "Id");
if (!"".equals(id)) {
- Element foundElement = wsDocInfo.getTokenElement(id);
+ Element foundElement = data.getWsDocInfo().getTokenElement(id);
if (elem.equals(foundElement)) {
- WSSecurityEngineResult result = wsDocInfo.getResult(id);
+ WSSecurityEngineResult result = data.getWsDocInfo().getResult(id);
return java.util.Collections.singletonList(result);
} else if (foundElement != null) {
throw new WSSecurityException(
@@ -81,7 +79,7 @@ public class BinarySecurityTokenProcesso
WSSecurityEngineResult result =
new WSSecurityEngineResult(WSConstants.BST, token, certs);
- wsDocInfo.addTokenElement(elem);
+ data.getWsDocInfo().addTokenElement(elem);
if (!"".equals(id)) {
result.put(WSSecurityEngineResult.TAG_ID, id);
}
@@ -121,7 +119,7 @@ public class BinarySecurityTokenProcesso
}
}
- wsDocInfo.addResult(result);
+ data.getWsDocInfo().addResult(result);
return java.util.Collections.singletonList(result);
}
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/DerivedKeyTokenProcessor.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/DerivedKeyTokenProcessor.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/DerivedKeyTokenProcessor.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/DerivedKeyTokenProcessor.java Fri Feb 10 17:22:22 2017
@@ -24,7 +24,6 @@ import java.util.List;
import org.w3c.dom.Element;
import org.apache.wss4j.dom.WSConstants;
-import org.apache.wss4j.dom.WSDocInfo;
import org.apache.wss4j.dom.engine.WSSecurityEngineResult;
import org.apache.wss4j.common.crypto.AlgorithmSuite;
import org.apache.wss4j.common.crypto.AlgorithmSuiteValidator;
@@ -43,8 +42,7 @@ public class DerivedKeyTokenProcessor im
public List<WSSecurityEngineResult> handleToken(
Element elem,
- RequestData data,
- WSDocInfo wsDocInfo
+ RequestData data
) throws WSSecurityException {
// Deserialize the DKT
DerivedKeyToken dkt = new DerivedKeyToken(elem, data.getBSPEnforcer());
@@ -64,7 +62,6 @@ public class DerivedKeyTokenProcessor im
if (secRefElement != null) {
STRParserParameters parameters = new STRParserParameters();
parameters.setData(data);
- parameters.setWsDocInfo(wsDocInfo);
parameters.setStrElement(secRefElement);
STRParser strParser = new DerivedKeyTokenSTRParser();
@@ -83,7 +80,7 @@ public class DerivedKeyTokenProcessor im
byte[] keyBytes = dkt.deriveKey(length, secret);
WSSecurityEngineResult result =
new WSSecurityEngineResult(WSConstants.DKT, null, keyBytes, null);
- wsDocInfo.addTokenElement(elem);
+ data.getWsDocInfo().addTokenElement(elem);
String tokenId = dkt.getID();
if (!"".equals(tokenId)) {
result.put(WSSecurityEngineResult.TAG_ID, tokenId);
@@ -91,7 +88,7 @@ public class DerivedKeyTokenProcessor im
result.put(WSSecurityEngineResult.TAG_DERIVED_KEY_TOKEN, dkt);
result.put(WSSecurityEngineResult.TAG_SECRET, secret);
result.put(WSSecurityEngineResult.TAG_TOKEN_ELEMENT, dkt.getElement());
- wsDocInfo.addResult(result);
+ data.getWsDocInfo().addResult(result);
return Collections.singletonList(result);
}
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/EncryptedAssertionProcessor.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/EncryptedAssertionProcessor.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/EncryptedAssertionProcessor.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/EncryptedAssertionProcessor.java Fri Feb 10 17:22:22 2017
@@ -31,7 +31,6 @@ import org.apache.wss4j.common.ext.WSSec
import org.apache.wss4j.common.util.XMLUtils;
import org.apache.wss4j.dom.WSConstants;
import org.apache.wss4j.dom.WSDataRef;
-import org.apache.wss4j.dom.WSDocInfo;
import org.apache.wss4j.dom.engine.WSSecurityEngineResult;
import org.apache.wss4j.dom.handler.RequestData;
@@ -45,8 +44,7 @@ public class EncryptedAssertionProcessor
public List<WSSecurityEngineResult> handleToken(
Element elem,
- RequestData request,
- WSDocInfo wsDocInfo
+ RequestData request
) throws WSSecurityException {
if (LOG.isDebugEnabled()) {
LOG.debug("Found EncryptedAssertion element");
@@ -74,7 +72,7 @@ public class EncryptedAssertionProcessor
((Element)currentChild).getLocalName());
Processor proc = request.getWssConfig().getProcessor(el);
if (proc != null) {
- completeResults.addAll(proc.handleToken(((Element)currentChild), request, wsDocInfo));
+ completeResults.addAll(proc.handleToken(((Element)currentChild), request));
}
}
}
@@ -98,8 +96,7 @@ public class EncryptedAssertionProcessor
if (LOG.isDebugEnabled()) {
LOG.debug("Processing decrypted element with: " + proc.getClass().getName());
}
- List<WSSecurityEngineResult> results =
- proc.handleToken(decryptedElem, request, wsDocInfo);
+ List<WSSecurityEngineResult> results = proc.handleToken(decryptedElem, request);
completeResults.addAll(0, results);
return completeResults;
}
@@ -128,7 +125,7 @@ public class EncryptedAssertionProcessor
if (LOG.isDebugEnabled()) {
LOG.debug("Processing decrypted element with: " + proc.getClass().getName());
}
- return proc.handleToken(encryptedDataElement, request, wsDocInfo);
+ return proc.handleToken(encryptedDataElement, request);
}
return Collections.emptyList();
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/EncryptedDataProcessor.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/EncryptedDataProcessor.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/EncryptedDataProcessor.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/EncryptedDataProcessor.java Fri Feb 10 17:22:22 2017
@@ -38,7 +38,6 @@ import org.apache.wss4j.common.util.KeyU
import org.apache.wss4j.common.util.XMLUtils;
import org.apache.wss4j.dom.WSConstants;
import org.apache.wss4j.dom.WSDataRef;
-import org.apache.wss4j.dom.WSDocInfo;
import org.apache.wss4j.dom.engine.WSSConfig;
import org.apache.wss4j.dom.engine.WSSecurityEngineResult;
import org.apache.wss4j.dom.handler.RequestData;
@@ -63,8 +62,7 @@ public class EncryptedDataProcessor impl
public List<WSSecurityEngineResult> handleToken(
Element elem,
- RequestData request,
- WSDocInfo wsDocInfo
+ RequestData data
) throws WSSecurityException {
if (LOG.isDebugEnabled()) {
LOG.debug("Found EncryptedData element");
@@ -82,7 +80,7 @@ public class EncryptedDataProcessor impl
}
String symEncAlgo = X509Util.getEncAlgo(elem);
- checkBSPCompliance(symEncAlgo, request.getBSPEnforcer());
+ checkBSPCompliance(symEncAlgo, data.getBSPEnforcer());
// Get the Key either via a SecurityTokenReference or an EncryptedKey
Element secRefToken =
@@ -98,9 +96,9 @@ public class EncryptedDataProcessor impl
kiElem, "RetrievalMethod", WSConstants.SIG_NS
);
- if (request.isRequireSignedEncryptedDataElements()) {
+ if (data.isRequireSignedEncryptedDataElements()) {
List<WSSecurityEngineResult> signedResults =
- wsDocInfo.getResultsByTag(WSConstants.SIGN);
+ data.getWsDocInfo().getResultsByTag(WSConstants.SIGN);
SignatureUtils.verifySignedElement(elem, signedResults);
}
@@ -109,8 +107,7 @@ public class EncryptedDataProcessor impl
Principal principal = null;
if (secRefToken != null) {
STRParserParameters parameters = new STRParserParameters();
- parameters.setData(request);
- parameters.setWsDocInfo(wsDocInfo);
+ parameters.setData(data);
parameters.setStrElement(secRefToken);
if (symEncAlgo != null) {
parameters.setDerivationKeyLength(KeyUtils.getKeyLength(symEncAlgo));
@@ -122,10 +119,10 @@ public class EncryptedDataProcessor impl
principal = parserResult.getPrincipal();
key = KeyUtils.prepareSecretKey(symEncAlgo, secretKey);
encrKeyResults = new ArrayList<>();
- } else if (encryptedKeyElement != null && request.getWssConfig() != null) {
- WSSConfig wssConfig = request.getWssConfig();
+ } else if (encryptedKeyElement != null && data.getWssConfig() != null) {
+ WSSConfig wssConfig = data.getWssConfig();
Processor encrKeyProc = wssConfig.getProcessor(WSConstants.ENCRYPTED_KEY);
- encrKeyResults = encrKeyProc.handleToken(encryptedKeyElement, request, wsDocInfo);
+ encrKeyResults = encrKeyProc.handleToken(encryptedKeyElement, data);
byte[] symmKey =
(byte[])encrKeyResults.get(0).get(WSSecurityEngineResult.TAG_SECRET);
key = KeyUtils.prepareSecretKey(symEncAlgo, symmKey);
@@ -134,7 +131,7 @@ public class EncryptedDataProcessor impl
retrievalMethodElement.getAttributeNS(null, "Type"))) {
String uri = retrievalMethodElement.getAttributeNS(null, "URI");
uri = XMLUtils.getIDFromReference(uri);
- WSSecurityEngineResult result = wsDocInfo.getResult(uri);
+ WSSecurityEngineResult result = data.getWsDocInfo().getResult(uri);
if (result != null) {
byte[] symmKey = (byte[])result.get(WSSecurityEngineResult.TAG_SECRET);
key = KeyUtils.prepareSecretKey(symEncAlgo, symmKey);
@@ -146,7 +143,7 @@ public class EncryptedDataProcessor impl
}
// Check for compliance against the defined AlgorithmSuite
- AlgorithmSuite algorithmSuite = request.getAlgorithmSuite();
+ AlgorithmSuite algorithmSuite = data.getAlgorithmSuite();
if (algorithmSuite != null) {
AlgorithmSuiteValidator algorithmSuiteValidator = new
AlgorithmSuiteValidator(algorithmSuite);
@@ -165,15 +162,15 @@ public class EncryptedDataProcessor impl
WSDataRef dataRef = EncryptionUtils.decryptEncryptedData(
elem.getOwnerDocument(), encryptedDataId, elem, key, symEncAlgo,
- request.getAttachmentCallbackHandler(), request.getEncryptionSerializer());
+ data.getAttachmentCallbackHandler(), data.getEncryptionSerializer());
WSSecurityEngineResult result =
new WSSecurityEngineResult(WSConstants.ENCR, Collections.singletonList(dataRef));
if (!"".equals(encryptedDataId)) {
result.put(WSSecurityEngineResult.TAG_ID, encryptedDataId);
}
- wsDocInfo.addResult(result);
- wsDocInfo.addTokenElement(elem);
+ data.getWsDocInfo().addResult(result);
+ data.getWsDocInfo().addTokenElement(elem);
List<WSSecurityEngineResult> completeResults = new LinkedList<>();
if (encrKeyResults != null) {
@@ -181,19 +178,18 @@ public class EncryptedDataProcessor impl
}
completeResults.add(result);
- WSSConfig wssConfig = request.getWssConfig();
+ WSSConfig wssConfig = data.getWssConfig();
if (wssConfig != null) {
// Get hold of the plain text element
Element decryptedElem = dataRef.getProtectedElement();
if (decryptedElem != null) { //is null if we processed an attachment
QName el = new QName(decryptedElem.getNamespaceURI(), decryptedElem.getLocalName());
- Processor proc = request.getWssConfig().getProcessor(el);
+ Processor proc = data.getWssConfig().getProcessor(el);
if (proc != null) {
if (LOG.isDebugEnabled()) {
LOG.debug("Processing decrypted element with: " + proc.getClass().getName());
}
- List<WSSecurityEngineResult> results =
- proc.handleToken(decryptedElem, request, wsDocInfo);
+ List<WSSecurityEngineResult> results = proc.handleToken(decryptedElem, data);
completeResults.addAll(0, results);
return completeResults;
}
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/EncryptedKeyProcessor.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/EncryptedKeyProcessor.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/EncryptedKeyProcessor.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/EncryptedKeyProcessor.java Fri Feb 10 17:22:22 2017
@@ -74,16 +74,14 @@ public class EncryptedKeyProcessor imple
public List<WSSecurityEngineResult> handleToken(
Element elem,
- RequestData data,
- WSDocInfo wsDocInfo
+ RequestData data
) throws WSSecurityException {
- return handleToken(elem, data, wsDocInfo, data.getAlgorithmSuite());
+ return handleToken(elem, data, data.getAlgorithmSuite());
}
public List<WSSecurityEngineResult> handleToken(
Element elem,
RequestData data,
- WSDocInfo wsDocInfo,
AlgorithmSuite algorithmSuite
) throws WSSecurityException {
if (LOG.isDebugEnabled()) {
@@ -93,7 +91,7 @@ public class EncryptedKeyProcessor imple
// See if this key has already been processed. If so then just return the result
String id = elem.getAttributeNS(null, "Id");
if (!"".equals(id)) {
- WSSecurityEngineResult result = wsDocInfo.getResult(id);
+ WSSecurityEngineResult result = data.getWsDocInfo().getResult(id);
if (result != null
&& WSConstants.ENCR == (Integer)result.get(WSSecurityEngineResult.TAG_ACTION)
) {
@@ -146,7 +144,6 @@ public class EncryptedKeyProcessor imple
&& WSConstants.WSSE_NS.equals(keyInfoChildElement.getNamespaceURI())) {
STRParserParameters parameters = new STRParserParameters();
parameters.setData(data);
- parameters.setWsDocInfo(wsDocInfo);
parameters.setStrElement(keyInfoChildElement);
STRParser strParser = new EncryptedKeySTRParser();
@@ -208,16 +205,16 @@ public class EncryptedKeyProcessor imple
}
if (symmetricKeyWrap) {
- decryptedBytes = getSymmetricDecryptedBytes(data, wsDocInfo, keyInfoChildElement,
+ decryptedBytes = getSymmetricDecryptedBytes(data, data.getWsDocInfo(), keyInfoChildElement,
refList, encryptedEphemeralKey);
} else {
PrivateKey privateKey = getPrivateKey(data, certs, publicKey);
- decryptedBytes = getAsymmetricDecryptedBytes(data, wsDocInfo, encryptedKeyTransportMethod,
+ decryptedBytes = getAsymmetricDecryptedBytes(data, data.getWsDocInfo(), encryptedKeyTransportMethod,
encryptedEphemeralKey, refList,
elem, privateKey);
}
- List<WSDataRef> dataRefs = decryptDataRefs(refList, wsDocInfo, decryptedBytes, data);
+ List<WSDataRef> dataRefs = decryptDataRefs(refList, data.getWsDocInfo(), decryptedBytes, data);
WSSecurityEngineResult result = new WSSecurityEngineResult(
WSConstants.ENCR,
@@ -241,8 +238,8 @@ public class EncryptedKeyProcessor imple
if (publicKey != null) {
result.put(WSSecurityEngineResult.TAG_PUBLIC_KEY, publicKey);
}
- wsDocInfo.addResult(result);
- wsDocInfo.addTokenElement(elem);
+ data.getWsDocInfo().addResult(result);
+ data.getWsDocInfo().addTokenElement(elem);
return Collections.singletonList(result);
}
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/Processor.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/Processor.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/Processor.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/Processor.java Fri Feb 10 17:22:22 2017
@@ -19,7 +19,6 @@
package org.apache.wss4j.dom.processor;
-import org.apache.wss4j.dom.WSDocInfo;
import org.apache.wss4j.dom.engine.WSSecurityEngineResult;
import org.apache.wss4j.common.ext.WSSecurityException;
import org.apache.wss4j.dom.handler.RequestData;
@@ -31,8 +30,7 @@ public interface Processor {
List<WSSecurityEngineResult> handleToken(
Element elem,
- RequestData request,
- WSDocInfo wsDocInfo
+ RequestData request
) throws WSSecurityException;
}
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/ReferenceListProcessor.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/ReferenceListProcessor.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/ReferenceListProcessor.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/ReferenceListProcessor.java Fri Feb 10 17:22:22 2017
@@ -41,7 +41,6 @@ import org.apache.wss4j.common.util.KeyU
import org.apache.wss4j.common.util.XMLUtils;
import org.apache.wss4j.dom.WSConstants;
import org.apache.wss4j.dom.WSDataRef;
-import org.apache.wss4j.dom.WSDocInfo;
import org.apache.wss4j.dom.engine.WSSecurityEngineResult;
import org.apache.wss4j.dom.handler.RequestData;
import org.apache.wss4j.dom.str.STRParser;
@@ -58,21 +57,20 @@ public class ReferenceListProcessor impl
public List<WSSecurityEngineResult> handleToken(
Element elem,
- RequestData data,
- WSDocInfo wsDocInfo
+ RequestData data
) throws WSSecurityException {
if (LOG.isDebugEnabled()) {
LOG.debug("Found reference list element");
}
- List<WSDataRef> dataRefs = handleReferenceList(elem, data, wsDocInfo);
+ List<WSDataRef> dataRefs = handleReferenceList(elem, data);
WSSecurityEngineResult result =
new WSSecurityEngineResult(WSConstants.ENCR, dataRefs);
String tokenId = elem.getAttributeNS(null, "Id");
if (!"".equals(tokenId)) {
result.put(WSSecurityEngineResult.TAG_ID, tokenId);
}
- wsDocInfo.addTokenElement(elem);
- wsDocInfo.addResult(result);
+ data.getWsDocInfo().addTokenElement(elem);
+ data.getWsDocInfo().addResult(result);
return Collections.singletonList(result);
}
@@ -84,8 +82,7 @@ public class ReferenceListProcessor impl
*/
private List<WSDataRef> handleReferenceList(
Element elem,
- RequestData data,
- WSDocInfo wsDocInfo
+ RequestData data
) throws WSSecurityException {
List<WSDataRef> dataRefs = new ArrayList<>();
for (Node node = elem.getFirstChild();
@@ -99,10 +96,9 @@ public class ReferenceListProcessor impl
dataRefURI = XMLUtils.getIDFromReference(dataRefURI);
// See whether we have already processed the encrypted node
- if (!wsDocInfo.hasResult(WSConstants.ENCR, dataRefURI)) {
+ if (!data.getWsDocInfo().hasResult(WSConstants.ENCR, dataRefURI)) {
WSDataRef dataRef =
- decryptDataRefEmbedded(
- elem.getOwnerDocument(), dataRefURI, data, wsDocInfo);
+ decryptDataRefEmbedded(elem.getOwnerDocument(), dataRefURI, data);
dataRefs.add(dataRef);
}
}
@@ -118,8 +114,7 @@ public class ReferenceListProcessor impl
private WSDataRef decryptDataRefEmbedded(
Document doc,
String dataRefURI,
- RequestData data,
- WSDocInfo wsDocInfo
+ RequestData data
) throws WSSecurityException {
if (LOG.isDebugEnabled()) {
LOG.debug("Found data reference: " + dataRefURI);
@@ -128,11 +123,11 @@ public class ReferenceListProcessor impl
// Find the encrypted data element referenced by dataRefURI
//
Element encryptedDataElement =
- EncryptionUtils.findEncryptedDataElement(doc, wsDocInfo, dataRefURI);
+ EncryptionUtils.findEncryptedDataElement(doc, data.getWsDocInfo(), dataRefURI);
if (encryptedDataElement != null && data.isRequireSignedEncryptedDataElements()) {
List<WSSecurityEngineResult> signedResults =
- wsDocInfo.getResultsByTag(WSConstants.SIGN);
+ data.getWsDocInfo().getResultsByTag(WSConstants.SIGN);
SignatureUtils.verifySignedElement(encryptedDataElement, signedResults);
}
//
@@ -167,7 +162,6 @@ public class ReferenceListProcessor impl
} else {
STRParserParameters parameters = new STRParserParameters();
parameters.setData(data);
- parameters.setWsDocInfo(wsDocInfo);
parameters.setStrElement(secRefToken);
if (symEncAlgo != null) {
parameters.setDerivationKeyLength(KeyUtils.getKeyLength(symEncAlgo));
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SAMLTokenProcessor.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SAMLTokenProcessor.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SAMLTokenProcessor.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SAMLTokenProcessor.java Fri Feb 10 17:22:22 2017
@@ -43,7 +43,6 @@ import org.apache.wss4j.common.saml.Saml
import org.apache.wss4j.common.util.DOM2Writer;
import org.apache.wss4j.dom.WSConstants;
import org.apache.wss4j.dom.WSDataRef;
-import org.apache.wss4j.dom.WSDocInfo;
import org.apache.wss4j.dom.engine.WSSecurityEngineResult;
import org.apache.wss4j.dom.handler.RequestData;
import org.apache.wss4j.dom.saml.WSSSAMLKeyInfoProcessor;
@@ -71,8 +70,7 @@ public class SAMLTokenProcessor implemen
public List<WSSecurityEngineResult> handleToken(
Element elem,
- RequestData data,
- WSDocInfo wsDocInfo
+ RequestData data
) throws WSSecurityException {
if (LOG.isDebugEnabled()) {
LOG.debug("Found SAML Assertion element");
@@ -82,12 +80,10 @@ public class SAMLTokenProcessor implemen
data.getValidator(new QName(elem.getNamespaceURI(), elem.getLocalName()));
SamlAssertionWrapper samlAssertion = new SamlAssertionWrapper(elem);
- XMLSignature xmlSignature =
- verifySignatureKeysAndAlgorithms(samlAssertion, data, wsDocInfo);
+ XMLSignature xmlSignature = verifySignatureKeysAndAlgorithms(samlAssertion, data);
List<WSDataRef> dataRefs = createDataRefs(elem, samlAssertion, xmlSignature);
- Credential credential =
- handleSAMLToken(samlAssertion, data, validator, wsDocInfo);
+ Credential credential = handleSAMLToken(samlAssertion, data, validator);
samlAssertion = credential.getSamlAssertion();
if (LOG.isDebugEnabled()) {
LOG.debug("SAML Assertion issuer " + samlAssertion.getIssuerString());
@@ -96,9 +92,9 @@ public class SAMLTokenProcessor implemen
// See if the token has been previously processed
String id = samlAssertion.getId();
- Element foundElement = wsDocInfo.getTokenElement(id);
+ Element foundElement = data.getWsDocInfo().getTokenElement(id);
if (elem.equals(foundElement)) {
- WSSecurityEngineResult result = wsDocInfo.getResult(id);
+ WSSecurityEngineResult result = data.getWsDocInfo().getResult(id);
return java.util.Collections.singletonList(result);
} else if (foundElement != null) {
throw new WSSecurityException(
@@ -106,7 +102,7 @@ public class SAMLTokenProcessor implemen
);
}
- wsDocInfo.addTokenElement(elem);
+ data.getWsDocInfo().addTokenElement(elem);
WSSecurityEngineResult result = null;
if (samlAssertion.isSigned()) {
result = new WSSecurityEngineResult(WSConstants.ST_SIGNED, samlAssertion);
@@ -139,19 +135,18 @@ public class SAMLTokenProcessor implemen
}
result.put(WSSecurityEngineResult.TAG_SUBJECT, credential.getSubject());
}
- wsDocInfo.addResult(result);
+ data.getWsDocInfo().addResult(result);
return java.util.Collections.singletonList(result);
}
public Credential handleSAMLToken(
SamlAssertionWrapper samlAssertion,
RequestData data,
- Validator validator,
- WSDocInfo docInfo
+ Validator validator
) throws WSSecurityException {
// Parse the subject if it exists
samlAssertion.parseSubject(
- new WSSSAMLKeyInfoProcessor(data, docInfo), data.getSigVerCrypto(),
+ new WSSSAMLKeyInfoProcessor(data), data.getSigVerCrypto(),
data.getCallbackHandler()
);
@@ -166,8 +161,7 @@ public class SAMLTokenProcessor implemen
private XMLSignature verifySignatureKeysAndAlgorithms(
SamlAssertionWrapper samlAssertion,
- RequestData data,
- WSDocInfo wsDocInfo
+ RequestData data
) throws WSSecurityException {
if (samlAssertion.isSigned()) {
Signature sig = samlAssertion.getSignature();
@@ -180,7 +174,7 @@ public class SAMLTokenProcessor implemen
}
SAMLKeyInfo samlKeyInfo =
SAMLUtil.getCredentialFromKeyInfo(
- keyInfo.getDOM(), new WSSSAMLKeyInfoProcessor(data, wsDocInfo), data.getSigVerCrypto()
+ keyInfo.getDOM(), new WSSSAMLKeyInfoProcessor(data), data.getSigVerCrypto()
);
PublicKey key = null;
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SecurityContextTokenProcessor.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SecurityContextTokenProcessor.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SecurityContextTokenProcessor.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SecurityContextTokenProcessor.java Fri Feb 10 17:22:22 2017
@@ -20,7 +20,6 @@
package org.apache.wss4j.dom.processor;
import org.apache.wss4j.dom.WSConstants;
-import org.apache.wss4j.dom.WSDocInfo;
import org.apache.wss4j.dom.engine.WSSecurityEngineResult;
import org.apache.wss4j.common.ext.WSPasswordCallback;
import org.apache.wss4j.common.ext.WSSecurityException;
@@ -46,8 +45,7 @@ public class SecurityContextTokenProcess
public List<WSSecurityEngineResult> handleToken(
Element elem,
- RequestData data,
- WSDocInfo wsDocInfo
+ RequestData data
) throws WSSecurityException {
SecurityContextToken sct = new SecurityContextToken(elem);
@@ -85,8 +83,8 @@ public class SecurityContextTokenProcess
result.put(WSSecurityEngineResult.TAG_SECRET, secret);
}
- wsDocInfo.addTokenElement(elem);
- wsDocInfo.addResult(result);
+ data.getWsDocInfo().addTokenElement(elem);
+ data.getWsDocInfo().addResult(result);
return java.util.Collections.singletonList(result);
}
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SignatureConfirmationProcessor.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SignatureConfirmationProcessor.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SignatureConfirmationProcessor.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SignatureConfirmationProcessor.java Fri Feb 10 17:22:22 2017
@@ -20,7 +20,6 @@
package org.apache.wss4j.dom.processor;
import org.apache.wss4j.dom.WSConstants;
-import org.apache.wss4j.dom.WSDocInfo;
import org.apache.wss4j.dom.engine.WSSecurityEngineResult;
import org.apache.wss4j.common.ext.WSSecurityException;
import org.apache.wss4j.dom.handler.RequestData;
@@ -35,8 +34,7 @@ public class SignatureConfirmationProces
public List<WSSecurityEngineResult> handleToken(
Element elem,
- RequestData data,
- WSDocInfo wsDocInfo
+ RequestData data
) throws WSSecurityException {
if (LOG.isDebugEnabled()) {
LOG.debug("Found SignatureConfirmation list element");
@@ -52,8 +50,8 @@ public class SignatureConfirmationProces
if (!"".equals(tokenId)) {
result.put(WSSecurityEngineResult.TAG_ID, tokenId);
}
- wsDocInfo.addResult(result);
- wsDocInfo.addTokenElement(elem);
+ data.getWsDocInfo().addResult(result);
+ data.getWsDocInfo().addTokenElement(elem);
return java.util.Collections.singletonList(result);
}
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SignatureProcessor.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SignatureProcessor.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SignatureProcessor.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/SignatureProcessor.java Fri Feb 10 17:22:22 2017
@@ -106,8 +106,7 @@ public class SignatureProcessor implemen
public List<WSSecurityEngineResult> handleToken(
Element elem,
- RequestData data,
- WSDocInfo wsDocInfo
+ RequestData data
) throws WSSecurityException {
if (LOG.isDebugEnabled()) {
LOG.debug("Found signature element");
@@ -159,7 +158,6 @@ public class SignatureProcessor implemen
} else {
STRParserParameters parameters = new STRParserParameters();
parameters.setData(data);
- parameters.setWsDocInfo(wsDocInfo);
parameters.setStrElement(child);
if (signatureMethod != null) {
parameters.setDerivationKeyLength(KeyUtils.getKeyLength(signatureMethod));
@@ -222,13 +220,13 @@ public class SignatureProcessor implemen
}
XMLSignature xmlSignature =
- verifyXMLSignature(elem, certs, publicKey, secretKey, signatureMethod, data, wsDocInfo);
+ verifyXMLSignature(elem, certs, publicKey, secretKey, signatureMethod, data, data.getWsDocInfo());
byte[] signatureValue = xmlSignature.getSignatureValue().getValue();
String c14nMethod = xmlSignature.getSignedInfo().getCanonicalizationMethod().getAlgorithm();
List<WSDataRef> dataRefs =
buildProtectedRefs(
- elem.getOwnerDocument(), xmlSignature.getSignedInfo(), data, wsDocInfo
+ elem.getOwnerDocument(), xmlSignature.getSignedInfo(), data, data.getWsDocInfo()
);
if (dataRefs.isEmpty()) {
throw new WSSecurityException(WSSecurityException.ErrorCode.FAILED_CHECK);
@@ -258,8 +256,8 @@ public class SignatureProcessor implemen
result.put(WSSecurityEngineResult.TAG_SUBJECT, credential.getSubject());
}
}
- wsDocInfo.addResult(result);
- wsDocInfo.addTokenElement(elem);
+ data.getWsDocInfo().addResult(result);
+ data.getWsDocInfo().addTokenElement(elem);
return java.util.Collections.singletonList(result);
}
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/TimestampProcessor.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/TimestampProcessor.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/TimestampProcessor.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/TimestampProcessor.java Fri Feb 10 17:22:22 2017
@@ -23,7 +23,6 @@ import java.util.List;
import org.apache.wss4j.common.ext.WSSecurityException;
import org.apache.wss4j.dom.WSConstants;
-import org.apache.wss4j.dom.WSDocInfo;
import org.apache.wss4j.dom.engine.WSSecurityEngineResult;
import org.apache.wss4j.dom.handler.RequestData;
import org.apache.wss4j.dom.message.token.Timestamp;
@@ -37,8 +36,7 @@ public class TimestampProcessor implemen
public List<WSSecurityEngineResult> handleToken(
Element elem,
- RequestData data,
- WSDocInfo wsDocInfo
+ RequestData data
) throws WSSecurityException {
if (LOG.isDebugEnabled()) {
LOG.debug("Found Timestamp list element");
@@ -64,8 +62,8 @@ public class TimestampProcessor implemen
result.put(WSSecurityEngineResult.TAG_VALIDATED_TOKEN, Boolean.TRUE);
}
- wsDocInfo.addTokenElement(elem);
- wsDocInfo.addResult(result);
+ data.getWsDocInfo().addTokenElement(elem);
+ data.getWsDocInfo().addResult(result);
return java.util.Collections.singletonList(result);
}
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/UsernameTokenProcessor.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/UsernameTokenProcessor.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/UsernameTokenProcessor.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/processor/UsernameTokenProcessor.java Fri Feb 10 17:22:22 2017
@@ -29,7 +29,6 @@ import org.w3c.dom.Element;
import org.apache.wss4j.common.cache.ReplayCache;
import org.apache.wss4j.common.ext.WSSecurityException;
import org.apache.wss4j.dom.WSConstants;
-import org.apache.wss4j.dom.WSDocInfo;
import org.apache.wss4j.dom.engine.WSSecurityEngineResult;
import org.apache.wss4j.dom.handler.RequestData;
import org.apache.wss4j.dom.message.token.UsernameToken;
@@ -42,8 +41,7 @@ public class UsernameTokenProcessor impl
public List<WSSecurityEngineResult> handleToken(
Element elem,
- RequestData data,
- WSDocInfo wsDocInfo
+ RequestData data
) throws WSSecurityException {
if (LOG.isDebugEnabled()) {
LOG.debug("Found UsernameToken list element");
@@ -51,9 +49,9 @@ public class UsernameTokenProcessor impl
// See if the token has been previously processed
String id = elem.getAttributeNS(WSConstants.WSU_NS, "Id");
if (!"".equals(id)) {
- Element foundElement = wsDocInfo.getTokenElement(id);
+ Element foundElement = data.getWsDocInfo().getTokenElement(id);
if (elem.equals(foundElement)) {
- WSSecurityEngineResult result = wsDocInfo.getResult(id);
+ WSSecurityEngineResult result = data.getWsDocInfo().getResult(id);
return java.util.Collections.singletonList(result);
} else if (foundElement != null) {
throw new WSSecurityException(
@@ -109,8 +107,8 @@ public class UsernameTokenProcessor impl
result.put(WSSecurityEngineResult.TAG_SUBJECT, credential.getSubject());
}
- wsDocInfo.addTokenElement(elem);
- wsDocInfo.addResult(result);
+ data.getWsDocInfo().addTokenElement(elem);
+ data.getWsDocInfo().addResult(result);
return java.util.Collections.singletonList(result);
}
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/saml/WSSSAMLKeyInfoProcessor.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/saml/WSSSAMLKeyInfoProcessor.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/saml/WSSSAMLKeyInfoProcessor.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/saml/WSSSAMLKeyInfoProcessor.java Fri Feb 10 17:22:22 2017
@@ -36,7 +36,6 @@ import org.apache.wss4j.common.saml.SAML
import org.apache.wss4j.common.saml.SAMLKeyInfoProcessor;
import org.apache.wss4j.common.token.SecurityTokenReference;
import org.apache.wss4j.dom.WSConstants;
-import org.apache.wss4j.dom.WSDocInfo;
import org.apache.wss4j.dom.engine.WSSecurityEngineResult;
import org.apache.wss4j.dom.handler.RequestData;
import org.apache.wss4j.dom.processor.EncryptedKeyProcessor;
@@ -60,11 +59,9 @@ public class WSSSAMLKeyInfoProcessor imp
new QName(WST_NS_05_12, "BinarySecret");
private RequestData data;
- private WSDocInfo docInfo;
- public WSSSAMLKeyInfoProcessor(RequestData data, WSDocInfo docInfo) {
+ public WSSSAMLKeyInfoProcessor(RequestData data) {
this.data = data;
- this.docInfo = docInfo;
}
public SAMLKeyInfo processSAMLKeyInfo(Element keyInfoElement) throws WSSecurityException {
@@ -82,7 +79,7 @@ public class WSSSAMLKeyInfoProcessor imp
if (el.equals(WSConstants.ENCRYPTED_KEY)) {
EncryptedKeyProcessor proc = new EncryptedKeyProcessor();
List<WSSecurityEngineResult> result =
- proc.handleToken((Element)node, data, docInfo, data.getSamlAlgorithmSuite());
+ proc.handleToken((Element)node, data, data.getSamlAlgorithmSuite());
byte[] secret =
(byte[])result.get(0).get(
WSSecurityEngineResult.TAG_SECRET
@@ -94,7 +91,6 @@ public class WSSSAMLKeyInfoProcessor imp
} else if (SecurityTokenReference.STR_QNAME.equals(el)) {
STRParserParameters parameters = new STRParserParameters();
parameters.setData(data);
- parameters.setWsDocInfo(docInfo);
parameters.setStrElement((Element)node);
STRParser strParser = new SignatureSTRParser();
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/saml/WSSecSignatureSAML.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/saml/WSSecSignatureSAML.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/saml/WSSecSignatureSAML.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/saml/WSSecSignatureSAML.java Fri Feb 10 17:22:22 2017
@@ -244,12 +244,13 @@ public class WSSecSignatureSAML extends
}
if (secretKey == null) {
RequestData data = new RequestData();
+ data.setWsDocInfo(getWsDocInfo());
SignatureActionToken actionToken = new SignatureActionToken();
data.setSignatureToken(actionToken);
actionToken.setCrypto(userCrypto);
SAMLKeyInfo samlKeyInfo =
SAMLUtil.getCredentialFromSubject(
- samlAssertion, new WSSSAMLKeyInfoProcessor(data, getWsDocInfo()),
+ samlAssertion, new WSSSAMLKeyInfoProcessor(data),
userCrypto, data.getCallbackHandler()
);
if (samlKeyInfo != null) {
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/DerivedKeyTokenSTRParser.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/DerivedKeyTokenSTRParser.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/DerivedKeyTokenSTRParser.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/DerivedKeyTokenSTRParser.java Fri Feb 10 17:22:22 2017
@@ -53,7 +53,7 @@ public class DerivedKeyTokenSTRParser im
*/
public STRParserResult parseSecurityTokenReference(STRParserParameters parameters) throws WSSecurityException {
- if (parameters == null || parameters.getData() == null || parameters.getWsDocInfo() == null
+ if (parameters == null || parameters.getData() == null || parameters.getData().getWsDocInfo() == null
|| parameters.getStrElement() == null) {
throw new WSSecurityException(
WSSecurityException.ErrorCode.FAILURE, "invalidSTRParserParameter"
@@ -71,7 +71,7 @@ public class DerivedKeyTokenSTRParser im
uri = secRef.getKeyIdentifierValue();
}
- WSSecurityEngineResult result = parameters.getWsDocInfo().getResult(uri);
+ WSSecurityEngineResult result = parameters.getData().getWsDocInfo().getResult(uri);
if (result != null) {
return processPreviousResult(result, secRef, parameters);
}
@@ -110,8 +110,7 @@ public class DerivedKeyTokenSTRParser im
STRParserUtil.checkSamlTokenBSPCompliance(secRef, samlAssertion, data.getBSPEnforcer());
SAMLKeyInfo keyInfo =
- SAMLUtil.getCredentialFromSubject(samlAssertion,
- new WSSSAMLKeyInfoProcessor(data, parameters.getWsDocInfo()),
+ SAMLUtil.getCredentialFromSubject(samlAssertion, new WSSSAMLKeyInfoProcessor(data),
data.getSigVerCrypto(), data.getCallbackHandler());
// TODO Handle malformed SAML tokens where they don't have the
// secret in them
@@ -155,7 +154,7 @@ public class DerivedKeyTokenSTRParser im
if (secretKey == null) {
byte[] keyBytes = secRef.getSKIBytes();
List<WSSecurityEngineResult> resultsList =
- parameters.getWsDocInfo().getResultsByTag(WSConstants.BST);
+ data.getWsDocInfo().getResultsByTag(WSConstants.BST);
for (WSSecurityEngineResult bstResult : resultsList) {
BinarySecurity bstToken =
(BinarySecurity)bstResult.get(WSSecurityEngineResult.TAG_BINARY_SECURITY_TOKEN);
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/EncryptedKeySTRParser.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/EncryptedKeySTRParser.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/EncryptedKeySTRParser.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/EncryptedKeySTRParser.java Fri Feb 10 17:22:22 2017
@@ -54,7 +54,7 @@ public class EncryptedKeySTRParser imple
* @throws WSSecurityException
*/
public STRParserResult parseSecurityTokenReference(STRParserParameters parameters) throws WSSecurityException {
- if (parameters == null || parameters.getData() == null || parameters.getWsDocInfo() == null
+ if (parameters == null || parameters.getData() == null || parameters.getData().getWsDocInfo() == null
|| parameters.getStrElement() == null) {
throw new WSSecurityException(
WSSecurityException.ErrorCode.FAILURE, "invalidSTRParserParameter"
@@ -72,7 +72,7 @@ public class EncryptedKeySTRParser imple
uri = secRef.getKeyIdentifierValue();
}
- WSSecurityEngineResult result = parameters.getWsDocInfo().getResult(uri);
+ WSSecurityEngineResult result = parameters.getData().getWsDocInfo().getResult(uri);
if (result != null) {
return processPreviousResult(result, secRef, parameters);
}
@@ -110,8 +110,7 @@ public class EncryptedKeySTRParser imple
STRParserUtil.checkSamlTokenBSPCompliance(secRef, samlAssertion, data.getBSPEnforcer());
SAMLKeyInfo keyInfo =
- SAMLUtil.getCredentialFromSubject(samlAssertion,
- new WSSSAMLKeyInfoProcessor(data, parameters.getWsDocInfo()),
+ SAMLUtil.getCredentialFromSubject(samlAssertion, new WSSSAMLKeyInfoProcessor(data),
data.getSigVerCrypto(), data.getCallbackHandler());
parserResult.setCerts(keyInfo.getCerts());
parserResult.setPublicKey(keyInfo.getPublicKey());
@@ -135,7 +134,7 @@ public class EncryptedKeySTRParser imple
STRParserResult parserResult = new STRParserResult();
RequestData data = parameters.getData();
Element strElement = parameters.getStrElement();
- WSDocInfo wsDocInfo = parameters.getWsDocInfo();
+ WSDocInfo wsDocInfo = data.getWsDocInfo();
Crypto crypto = data.getDecCrypto();
if (secRef.containsKeyIdentifier()) {
@@ -143,13 +142,13 @@ public class EncryptedKeySTRParser imple
|| WSConstants.WSS_SAML2_KI_VALUE_TYPE.equals(secRef.getKeyIdentifierValueType())) {
SamlAssertionWrapper samlAssertion =
STRParserUtil.getAssertionFromKeyIdentifier(
- secRef, strElement, data, wsDocInfo
+ secRef, strElement, data
);
STRParserUtil.checkSamlTokenBSPCompliance(secRef, samlAssertion, data.getBSPEnforcer());
SAMLKeyInfo samlKi =
SAMLUtil.getCredentialFromSubject(samlAssertion,
- new WSSSAMLKeyInfoProcessor(data, wsDocInfo),
+ new WSSSAMLKeyInfoProcessor(data),
data.getSigVerCrypto(), data.getCallbackHandler());
parserResult.setCerts(samlKi.getCerts());
parserResult.setPublicKey(samlKi.getPublicKey());
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/STRParserParameters.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/STRParserParameters.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/STRParserParameters.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/STRParserParameters.java Fri Feb 10 17:22:22 2017
@@ -21,7 +21,6 @@ package org.apache.wss4j.dom.str;
import org.w3c.dom.Element;
-import org.apache.wss4j.dom.WSDocInfo;
import org.apache.wss4j.dom.handler.RequestData;
/**
@@ -32,7 +31,6 @@ public class STRParserParameters {
private int derivationKeyLength;
private Element strElement;
private RequestData data;
- private WSDocInfo wsDocInfo;
public int getDerivationKeyLength() {
return derivationKeyLength;
@@ -58,13 +56,4 @@ public class STRParserParameters {
this.data = data;
}
- public WSDocInfo getWsDocInfo() {
- return wsDocInfo;
- }
-
- public void setWsDocInfo(WSDocInfo wsDocInfo) {
- this.wsDocInfo = wsDocInfo;
- }
-
-
}
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/STRParserUtil.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/STRParserUtil.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/STRParserUtil.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/STRParserUtil.java Fri Feb 10 17:22:22 2017
@@ -71,12 +71,11 @@ public final class STRParserUtil {
public static SamlAssertionWrapper getAssertionFromKeyIdentifier(
SecurityTokenReference secRef,
Element strElement,
- RequestData request,
- WSDocInfo wsDocInfo
+ RequestData request
) throws WSSecurityException {
String keyIdentifierValue = secRef.getKeyIdentifierValue();
String type = secRef.getKeyIdentifierValueType();
- WSSecurityEngineResult result = wsDocInfo.getResult(keyIdentifierValue);
+ WSSecurityEngineResult result = request.getWsDocInfo().getResult(keyIdentifierValue);
SamlAssertionWrapper samlAssertion = null;
Element token = null;
@@ -87,7 +86,7 @@ public final class STRParserUtil {
} else {
token =
findProcessedTokenElement(
- strElement.getOwnerDocument(), wsDocInfo, request.getCallbackHandler(),
+ strElement.getOwnerDocument(), request.getWsDocInfo(), request.getCallbackHandler(),
keyIdentifierValue, type
);
if (token != null) {
@@ -100,7 +99,7 @@ public final class STRParserUtil {
}
token =
findUnprocessedTokenElement(
- strElement.getOwnerDocument(), wsDocInfo, request.getCallbackHandler(),
+ strElement.getOwnerDocument(), request.getWsDocInfo(), request.getCallbackHandler(),
keyIdentifierValue, type
);
@@ -110,8 +109,7 @@ public final class STRParserUtil {
);
}
Processor proc = request.getWssConfig().getProcessor(WSConstants.SAML_TOKEN);
- List<WSSecurityEngineResult> samlResult =
- proc.handleToken(token, request, wsDocInfo);
+ List<WSSecurityEngineResult> samlResult = proc.handleToken(token, request);
return
(SamlAssertionWrapper)samlResult.get(0).get(
WSSecurityEngineResult.TAG_SAML_ASSERTION
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/SecurityTokenRefSTRParser.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/SecurityTokenRefSTRParser.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/SecurityTokenRefSTRParser.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/SecurityTokenRefSTRParser.java Fri Feb 10 17:22:22 2017
@@ -59,7 +59,7 @@ public class SecurityTokenRefSTRParser i
*/
public STRParserResult parseSecurityTokenReference(STRParserParameters parameters) throws WSSecurityException {
- if (parameters == null || parameters.getData() == null || parameters.getWsDocInfo() == null
+ if (parameters == null || parameters.getData() == null || parameters.getData().getWsDocInfo() == null
|| parameters.getStrElement() == null) {
throw new WSSecurityException(
WSSecurityException.ErrorCode.FAILURE, "invalidSTRParserParameter"
@@ -77,7 +77,7 @@ public class SecurityTokenRefSTRParser i
uri = secRef.getKeyIdentifierValue();
}
- WSSecurityEngineResult result = parameters.getWsDocInfo().getResult(uri);
+ WSSecurityEngineResult result = parameters.getData().getWsDocInfo().getResult(uri);
if (result != null) {
return processPreviousResult(result, secRef, uri, parameters);
}
@@ -91,13 +91,11 @@ public class SecurityTokenRefSTRParser i
private byte[] getSecretKeyFromAssertion(
SamlAssertionWrapper samlAssertion,
SecurityTokenReference secRef,
- RequestData data,
- WSDocInfo wsDocInfo
+ RequestData data
) throws WSSecurityException {
STRParserUtil.checkSamlTokenBSPCompliance(secRef, samlAssertion, data.getBSPEnforcer());
SAMLKeyInfo samlKi =
- SAMLUtil.getCredentialFromSubject(samlAssertion,
- new WSSSAMLKeyInfoProcessor(data, wsDocInfo),
+ SAMLUtil.getCredentialFromSubject(samlAssertion, new WSSSAMLKeyInfoProcessor(data),
data.getSigVerCrypto(), data.getCallbackHandler());
if (samlKi == null) {
throw new WSSecurityException(
@@ -137,7 +135,7 @@ public class SecurityTokenRefSTRParser i
SamlAssertionWrapper samlAssertion =
(SamlAssertionWrapper)result.get(WSSecurityEngineResult.TAG_SAML_ASSERTION);
byte[] secretKey =
- getSecretKeyFromAssertion(samlAssertion, secRef, data, parameters.getWsDocInfo());
+ getSecretKeyFromAssertion(samlAssertion, secRef, data);
parserResult.setSecretKey(secretKey);
} else if (action != null
&& (WSConstants.SCT == action.intValue() || WSConstants.BST == action.intValue())) {
@@ -171,7 +169,7 @@ public class SecurityTokenRefSTRParser i
STRParserResult parserResult = new STRParserResult();
RequestData data = parameters.getData();
Element strElement = parameters.getStrElement();
- WSDocInfo wsDocInfo = parameters.getWsDocInfo();
+ WSDocInfo wsDocInfo = data.getWsDocInfo();
if (secRef.containsReference()) {
Reference reference = secRef.getReference();
@@ -186,8 +184,7 @@ public class SecurityTokenRefSTRParser i
QName el = new QName(token.getNamespaceURI(), token.getLocalName());
if (el.equals(WSConstants.BINARY_TOKEN)) {
Processor proc = data.getWssConfig().getProcessor(WSConstants.BINARY_TOKEN);
- List<WSSecurityEngineResult> bstResult =
- proc.handleToken(token, data, wsDocInfo);
+ List<WSSecurityEngineResult> bstResult = proc.handleToken(token, data);
BinarySecurity bstToken =
(BinarySecurity)bstResult.get(0).get(WSSecurityEngineResult.TAG_BINARY_SECURITY_TOKEN);
STRParserUtil.checkBinarySecurityBSPCompliance(secRef, bstToken, data.getBSPEnforcer());
@@ -210,10 +207,9 @@ public class SecurityTokenRefSTRParser i
if (secretKey == null) {
SamlAssertionWrapper samlAssertion =
STRParserUtil.getAssertionFromKeyIdentifier(
- secRef, strElement,
- data, wsDocInfo
+ secRef, strElement, data
);
- secretKey = getSecretKeyFromAssertion(samlAssertion, secRef, data, wsDocInfo);
+ secretKey = getSecretKeyFromAssertion(samlAssertion, secRef, data);
}
parserResult.setSecretKey(secretKey);
} else if (WSConstants.WSS_KRB_KI_VALUE_TYPE.equals(valueType)) {
Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/SignatureSTRParser.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/SignatureSTRParser.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/SignatureSTRParser.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/str/SignatureSTRParser.java Fri Feb 10 17:22:22 2017
@@ -69,7 +69,7 @@ public class SignatureSTRParser implemen
*/
public STRParserResult parseSecurityTokenReference(STRParserParameters parameters) throws WSSecurityException {
- if (parameters == null || parameters.getData() == null || parameters.getWsDocInfo() == null
+ if (parameters == null || parameters.getData() == null || parameters.getData().getWsDocInfo() == null
|| parameters.getStrElement() == null) {
throw new WSSecurityException(
WSSecurityException.ErrorCode.FAILURE, "invalidSTRParserParameter"
@@ -91,7 +91,7 @@ public class SignatureSTRParser implemen
uri = secRef.getKeyIdentifierValue();
}
- WSSecurityEngineResult result = parameters.getWsDocInfo().getResult(uri);
+ WSSecurityEngineResult result = parameters.getData().getWsDocInfo().getResult(uri);
if (result != null) {
return processPreviousResult(result, secRef, parameters);
}
@@ -124,7 +124,6 @@ public class SignatureSTRParser implemen
*/
private void parseSAMLKeyIdentifier(
SecurityTokenReference secRef,
- WSDocInfo wsDocInfo,
RequestData data,
STRParserResult parserResult
) throws WSSecurityException {
@@ -134,13 +133,13 @@ public class SignatureSTRParser implemen
if (secretKey == null) {
SamlAssertionWrapper samlAssertion =
STRParserUtil.getAssertionFromKeyIdentifier(
- secRef, secRef.getElement(), data, wsDocInfo
+ secRef, secRef.getElement(), data
);
STRParserUtil.checkSamlTokenBSPCompliance(secRef, samlAssertion, data.getBSPEnforcer());
SAMLKeyInfo samlKi =
SAMLUtil.getCredentialFromSubject(samlAssertion,
- new WSSSAMLKeyInfoProcessor(data, wsDocInfo),
+ new WSSSAMLKeyInfoProcessor(data),
data.getSigVerCrypto(), data.getCallbackHandler());
X509Certificate[] foundCerts = samlKi.getCerts();
if (foundCerts != null && foundCerts.length > 0) {
@@ -159,7 +158,6 @@ public class SignatureSTRParser implemen
private void parseBSTKeyIdentifier(
SecurityTokenReference secRef,
Crypto crypto,
- WSDocInfo wsDocInfo,
RequestData data,
STRParserResult parserResult
) throws WSSecurityException {
@@ -173,7 +171,7 @@ public class SignatureSTRParser implemen
if (secretKey == null) {
byte[] keyBytes = secRef.getSKIBytes();
List<WSSecurityEngineResult> resultsList =
- wsDocInfo.getResultsByTag(WSConstants.BST);
+ data.getWsDocInfo().getResultsByTag(WSConstants.BST);
for (WSSecurityEngineResult bstResult : resultsList) {
BinarySecurity bstToken =
(BinarySecurity)bstResult.get(WSSecurityEngineResult.TAG_BINARY_SECURITY_TOKEN);
@@ -195,7 +193,7 @@ public class SignatureSTRParser implemen
if (SecurityTokenReference.SKI_URI.equals(valueType)) {
byte[] skiBytes = secRef.getSKIBytes();
List<WSSecurityEngineResult> resultsList =
- wsDocInfo.getResultsByTag(WSConstants.BST);
+ data.getWsDocInfo().getResultsByTag(WSConstants.BST);
for (WSSecurityEngineResult bstResult : resultsList) {
X509Certificate[] certs =
(X509Certificate[])bstResult.get(WSSecurityEngineResult.TAG_X509_CERTIFICATES);
@@ -209,7 +207,7 @@ public class SignatureSTRParser implemen
} else if (SecurityTokenReference.THUMB_URI.equals(valueType)) {
String kiValue = secRef.getKeyIdentifierValue();
List<WSSecurityEngineResult> resultsList =
- wsDocInfo.getResultsByTag(WSConstants.BST);
+ data.getWsDocInfo().getResultsByTag(WSConstants.BST);
for (WSSecurityEngineResult bstResult : resultsList) {
X509Certificate[] certs =
(X509Certificate[])bstResult.get(WSSecurityEngineResult.TAG_X509_CERTIFICATES);
@@ -336,7 +334,7 @@ public class SignatureSTRParser implemen
) throws WSSecurityException {
STRParserResult parserResult = new STRParserResult();
RequestData data = parameters.getData();
- WSDocInfo wsDocInfo = parameters.getWsDocInfo();
+ WSDocInfo wsDocInfo = data.getWsDocInfo();
Element strElement = parameters.getStrElement();
if (secRef.containsReference()) {
@@ -354,8 +352,7 @@ public class SignatureSTRParser implemen
QName el = new QName(token.getNamespaceURI(), token.getLocalName());
if (el.equals(WSConstants.BINARY_TOKEN)) {
Processor proc = data.getWssConfig().getProcessor(WSConstants.BINARY_TOKEN);
- List<WSSecurityEngineResult> bstResult =
- proc.handleToken(token, parameters.getData(), parameters.getWsDocInfo());
+ List<WSSecurityEngineResult> bstResult = proc.handleToken(token, parameters.getData());
BinarySecurity bstToken =
(BinarySecurity)bstResult.get(0).get(WSSecurityEngineResult.TAG_BINARY_SECURITY_TOKEN);
STRParserUtil.checkBinarySecurityBSPCompliance(
@@ -378,8 +375,7 @@ public class SignatureSTRParser implemen
);
SamlAssertionWrapper samlAssertion = null;
if (processedToken == null) {
- List<WSSecurityEngineResult> samlResult =
- proc.handleToken(token, data, wsDocInfo);
+ List<WSSecurityEngineResult> samlResult = proc.handleToken(token, data);
samlAssertion =
(SamlAssertionWrapper)samlResult.get(0).get(
WSSecurityEngineResult.TAG_SAML_ASSERTION
@@ -387,7 +383,7 @@ public class SignatureSTRParser implemen
} else {
samlAssertion = new SamlAssertionWrapper(processedToken);
samlAssertion.parseSubject(
- new WSSSAMLKeyInfoProcessor(data, wsDocInfo),
+ new WSSSAMLKeyInfoProcessor(data),
data.getSigVerCrypto(), data.getCallbackHandler()
);
}
@@ -403,8 +399,7 @@ public class SignatureSTRParser implemen
} else if (el.equals(WSConstants.ENCRYPTED_KEY)) {
STRParserUtil.checkEncryptedKeyBSPCompliance(secRef, data.getBSPEnforcer());
Processor proc = data.getWssConfig().getProcessor(WSConstants.ENCRYPTED_KEY);
- List<WSSecurityEngineResult> encrResult =
- proc.handleToken(token, data, wsDocInfo);
+ List<WSSecurityEngineResult> encrResult = proc.handleToken(token, data);
secretKey =
(byte[])encrResult.get(0).get(WSSecurityEngineResult.TAG_SECRET);
principal = new CustomTokenPrincipal(token.getAttributeNS(null, "Id"));
@@ -431,10 +426,10 @@ public class SignatureSTRParser implemen
parserResult.setPrincipal(new CustomTokenPrincipal(id));
} else if (WSConstants.WSS_SAML_KI_VALUE_TYPE.equals(secRef.getKeyIdentifierValueType())
|| WSConstants.WSS_SAML2_KI_VALUE_TYPE.equals(secRef.getKeyIdentifierValueType())) {
- parseSAMLKeyIdentifier(secRef, wsDocInfo, data, parserResult);
+ parseSAMLKeyIdentifier(secRef, data, parserResult);
} else {
Crypto crypto = data.getSigVerCrypto();
- parseBSTKeyIdentifier(secRef, crypto, wsDocInfo, data, parserResult);
+ parseBSTKeyIdentifier(secRef, crypto, data, parserResult);
}
} else {
throw new WSSecurityException(
Modified: webservices/wss4j/trunk/ws-security-dom/src/test/java/org/apache/wss4j/dom/common/CustomProcessor.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/test/java/org/apache/wss4j/dom/common/CustomProcessor.java?rev=1782492&r1=1782491&r2=1782492&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/test/java/org/apache/wss4j/dom/common/CustomProcessor.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/test/java/org/apache/wss4j/dom/common/CustomProcessor.java Fri Feb 10 17:22:22 2017
@@ -23,7 +23,6 @@ import org.apache.wss4j.common.ext.WSSec
import org.apache.wss4j.dom.handler.RequestData;
import org.apache.wss4j.dom.processor.Processor;
import org.apache.wss4j.dom.WSConstants;
-import org.apache.wss4j.dom.WSDocInfo;
import org.apache.wss4j.dom.engine.WSSecurityEngineResult;
/**
@@ -34,8 +33,7 @@ public class CustomProcessor implements
public final java.util.List<WSSecurityEngineResult>
handleToken(
final org.w3c.dom.Element elem,
- final RequestData data,
- final WSDocInfo wsDocInfo
+ final RequestData data
) throws WSSecurityException {
final WSSecurityEngineResult result =
new WSSecurityEngineResult(WSConstants.UT_SIGN);