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 2012/08/20 13:16:35 UTC
svn commit: r1374972 [2/5] - in /webservices/wss4j/trunk:
streaming-ws-security/src/main/java/org/apache/ws/security/stax/wss/impl/saml/
streaming-ws-security/src/test/java/org/apache/ws/security/stax/wss/test/
streaming-ws-security/src/test/java/org/a...
Copied: webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/saml/builder/SAML2Constants.java (from r1374954, webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/saml/ext/builder/SAML2Constants.java)
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/saml/builder/SAML2Constants.java?p2=webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/saml/builder/SAML2Constants.java&p1=webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/saml/ext/builder/SAML2Constants.java&r1=1374954&r2=1374972&rev=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/saml/ext/builder/SAML2Constants.java (original)
+++ webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/saml/builder/SAML2Constants.java Mon Aug 20 11:16:30 2012
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.ws.security.saml.ext.builder;
+package org.apache.ws.security.common.saml.builder;
/**
Copied: webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/DOM2Writer.java (from r1374954, webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/util/DOM2Writer.java)
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/DOM2Writer.java?p2=webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/DOM2Writer.java&p1=webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/util/DOM2Writer.java&r1=1374954&r2=1374972&rev=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/util/DOM2Writer.java (original)
+++ webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/DOM2Writer.java Mon Aug 20 11:16:30 2012
@@ -17,9 +17,8 @@
* under the License.
*/
-package org.apache.ws.security.util;
+package org.apache.ws.security.common.util;
-import org.apache.ws.security.WSConstants;
import org.w3c.dom.Attr;
import org.w3c.dom.Element;
import org.w3c.dom.NamedNodeMap;
@@ -262,9 +261,9 @@ public final class DOM2Writer {
PrintWriter out) {
String namespaceURI = node.getNamespaceURI();
String prefix = node.getPrefix();
- if (!(namespaceURI.equals(WSConstants.XMLNS_NS) && prefix.equals("xmlns")) &&
- !(namespaceURI.equals(WSConstants.XML_NS) && prefix.equals("xml"))) {
- if (WSSecurityUtil.getNamespace(prefix, owner) == null) {
+ if (!(namespaceURI.equals(XMLUtils.XMLNS_NS) && prefix.equals("xmlns")) &&
+ !(namespaceURI.equals(XMLUtils.XML_NS) && prefix.equals("xml"))) {
+ if (XMLUtils.getNamespace(prefix, owner) == null) {
out.print(" xmlns:" + prefix + "=\"" + namespaceURI + '\"');
}
} else {
Copied: webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/Mapping.java (from r1374954, webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/util/Mapping.java)
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/Mapping.java?p2=webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/Mapping.java&p1=webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/util/Mapping.java&r1=1374954&r2=1374972&rev=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/util/Mapping.java (original)
+++ webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/Mapping.java Mon Aug 20 11:16:30 2012
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.ws.security.util;
+package org.apache.ws.security.common.util;
import java.io.Serializable;
Copied: webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/NSStack.java (from r1374954, webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/util/NSStack.java)
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/NSStack.java?p2=webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/NSStack.java&p1=webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/util/NSStack.java&r1=1374954&r2=1374972&rev=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/util/NSStack.java (original)
+++ webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/NSStack.java Mon Aug 20 11:16:30 2012
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.ws.security.util;
+package org.apache.ws.security.common.util;
import java.util.ArrayList;
import java.util.List;
Copied: webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/XMLUtils.java (from r1374954, webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/util/XMLUtils.java)
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/XMLUtils.java?p2=webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/XMLUtils.java&p1=webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/util/XMLUtils.java&r1=1374954&r2=1374972&rev=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/util/XMLUtils.java (original)
+++ webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/XMLUtils.java Mon Aug 20 11:16:30 2012
@@ -16,53 +16,87 @@
* specific language governing permissions and limitations
* under the License.
*/
+package org.apache.ws.security.common.util;
-package org.apache.ws.security.util;
-
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.xml.sax.InputSource;
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.OutputStream;
import javax.xml.transform.Source;
import javax.xml.transform.Transformer;
+import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.sax.SAXSource;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.OutputStream;
-public final class XMLUtils {
+import org.w3c.dom.Attr;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import org.xml.sax.InputSource;
+
+public class XMLUtils {
- private static final org.apache.commons.logging.Log LOG =
- org.apache.commons.logging.LogFactory.getLog(XMLUtils.class);
- private static final boolean DO_DEBUG = LOG.isDebugEnabled();
+ public static final String XMLNS_NS = "http://www.w3.org/2000/xmlns/";
+ public static final String XML_NS = "http://www.w3.org/XML/1998/namespace";
+
+ /**
+ * Gets a direct child with specified localname and namespace. <p/>
+ *
+ * @param parentNode the node where to start the search
+ * @param localName local name of the child to get
+ * @param namespace the namespace of the child to get
+ * @return the node or <code>null</code> if not such node found
+ */
+ public static Element getDirectChildElement(Node parentNode, String localName, String namespace) {
+ if (parentNode == null) {
+ return null;
+ }
+ for (
+ Node currentChild = parentNode.getFirstChild();
+ currentChild != null;
+ currentChild = currentChild.getNextSibling()
+ ) {
+ if (Node.ELEMENT_NODE == currentChild.getNodeType()
+ && localName.equals(currentChild.getLocalName())
+ && namespace.equals(currentChild.getNamespaceURI())) {
+ return (Element) currentChild;
+ }
+ }
+ return null;
+ }
- private XMLUtils() {
- // Complete
+ public static String getNamespace(String prefix, Node e) {
+ while (e != null && (e.getNodeType() == Node.ELEMENT_NODE)) {
+ Attr attr = null;
+ if (prefix == null) {
+ attr = ((Element) e).getAttributeNode("xmlns");
+ } else {
+ attr = ((Element) e).getAttributeNodeNS(XMLNS_NS, prefix);
+ }
+ if (attr != null) {
+ return attr.getValue();
+ }
+ e = e.getParentNode();
+ }
+ return null;
}
- public static String PrettyDocumentToString(Document doc) {
+ public static String PrettyDocumentToString(Document doc) throws TransformerException {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ElementToStream(doc.getDocumentElement(), baos);
return new String(baos.toByteArray());
}
- public static void ElementToStream(Element element, OutputStream out) {
- try {
- DOMSource source = new DOMSource(element);
- StreamResult result = new StreamResult(out);
- TransformerFactory transFactory = TransformerFactory.newInstance();
- Transformer transformer = transFactory.newTransformer();
- transformer.transform(source, result);
- } catch (Exception ex) {
- if (DO_DEBUG) {
- LOG.debug(ex.getMessage(), ex);
- }
- }
+ public static void ElementToStream(Element element, OutputStream out)
+ throws TransformerException {
+ DOMSource source = new DOMSource(element);
+ StreamResult result = new StreamResult(out);
+ TransformerFactory transFactory = TransformerFactory.newInstance();
+ Transformer transformer = transFactory.newTransformer();
+ transformer.transform(source, result);
}
/**
@@ -70,7 +104,7 @@ public final class XMLUtils {
*
* @param source the resource to get
*/
- public static InputSource sourceToInputSource(Source source) {
+ public static InputSource sourceToInputSource(Source source) throws TransformerException {
if (source instanceof SAXSource) {
return ((SAXSource) source).getInputSource();
} else if (source instanceof DOMSource) {
@@ -106,5 +140,4 @@ public final class XMLUtils {
public static InputSource getInputSourceFromURI(String uri) {
return new InputSource(uri);
}
-
}
Propchange: webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/XMLUtils.java
------------------------------------------------------------------------------
cvs2svn:cvs-rev = 1.1
Propchange: webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/XMLUtils.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/XMLUtils.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/ws/security/common/util/XMLUtils.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/SAMLTokenPrincipal.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/SAMLTokenPrincipal.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/SAMLTokenPrincipal.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/SAMLTokenPrincipal.java Mon Aug 20 11:16:30 2012
@@ -19,7 +19,7 @@
package org.apache.ws.security;
-import org.apache.ws.security.saml.ext.AssertionWrapper;
+import org.apache.ws.security.common.saml.AssertionWrapper;
import org.opensaml.common.SAMLVersion;
import java.io.Serializable;
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/WSSConfig.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/WSSConfig.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/WSSConfig.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/WSSConfig.java Mon Aug 20 11:16:30 2012
@@ -35,8 +35,8 @@ import org.apache.ws.security.action.Act
import org.apache.ws.security.common.ext.WSSecurityException;
import org.apache.ws.security.common.util.Loader;
import org.apache.ws.security.processor.Processor;
-import org.apache.ws.security.util.UUIDGenerator;
import org.apache.ws.security.validate.Validator;
+import org.apache.xml.security.stax.impl.util.IDGenerator;
import org.apache.xml.security.utils.XMLUtils;
/**
@@ -299,10 +299,7 @@ public class WSSConfig {
}
public String createSecureId(String prefix, Object o) {
- if (prefix == null) {
- return UUIDGenerator.getUUID();
- }
- return prefix + UUIDGenerator.getUUID();
+ return IDGenerator.generateID(prefix);
}
};
protected WsuIdAllocator idAllocator = DEFAULT_ID_ALLOCATOR;
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/WSSecurityEngineResult.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/WSSecurityEngineResult.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/WSSecurityEngineResult.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/WSSecurityEngineResult.java Mon Aug 20 11:16:30 2012
@@ -19,12 +19,12 @@
package org.apache.ws.security;
+import org.apache.ws.security.common.saml.AssertionWrapper;
import org.apache.ws.security.message.token.BinarySecurity;
import org.apache.ws.security.message.token.SecurityContextToken;
import org.apache.ws.security.message.token.SignatureConfirmation;
import org.apache.ws.security.message.token.Timestamp;
import org.apache.ws.security.message.token.UsernameToken;
-import org.apache.ws.security.saml.ext.AssertionWrapper;
import java.security.Principal;
import java.security.cert.X509Certificate;
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/action/SAMLTokenSignedAction.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/action/SAMLTokenSignedAction.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/action/SAMLTokenSignedAction.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/action/SAMLTokenSignedAction.java Mon Aug 20 11:16:30 2012
@@ -24,13 +24,13 @@ import javax.security.auth.callback.Call
import org.apache.ws.security.common.crypto.Crypto;
import org.apache.ws.security.common.ext.WSPasswordCallback;
import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.saml.AssertionWrapper;
import org.apache.ws.security.handler.RequestData;
import org.apache.ws.security.handler.WSHandler;
import org.apache.ws.security.handler.WSHandlerConstants;
import org.apache.ws.security.saml.SAMLIssuer;
import org.apache.ws.security.saml.SAMLIssuerFactory;
import org.apache.ws.security.saml.WSSecSignatureSAML;
-import org.apache.ws.security.saml.ext.AssertionWrapper;
import org.w3c.dom.Document;
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/action/SAMLTokenUnsignedAction.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/action/SAMLTokenUnsignedAction.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/action/SAMLTokenUnsignedAction.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/action/SAMLTokenUnsignedAction.java Mon Aug 20 11:16:30 2012
@@ -20,11 +20,11 @@
package org.apache.ws.security.action;
import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.saml.AssertionWrapper;
import org.apache.ws.security.handler.RequestData;
import org.apache.ws.security.handler.WSHandler;
import org.apache.ws.security.message.WSSecSAMLToken;
import org.apache.ws.security.saml.SAMLIssuer;
-import org.apache.ws.security.saml.ext.AssertionWrapper;
import org.w3c.dom.Document;
public class SAMLTokenUnsignedAction extends SAMLTokenSignedAction {
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/WSSecEncryptedKey.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/WSSecEncryptedKey.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/WSSecEncryptedKey.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/WSSecEncryptedKey.java Mon Aug 20 11:16:30 2012
@@ -43,9 +43,9 @@ import org.apache.ws.security.message.to
import org.apache.ws.security.message.token.Reference;
import org.apache.ws.security.message.token.SecurityTokenReference;
import org.apache.ws.security.message.token.X509Security;
-import org.apache.ws.security.util.UUIDGenerator;
import org.apache.ws.security.util.WSSecurityUtil;
import org.apache.xml.security.algorithms.JCEMapper;
+import org.apache.xml.security.stax.impl.util.IDGenerator;
import org.apache.xml.security.utils.Constants;
import org.apache.xml.security.utils.XMLUtils;
@@ -300,7 +300,7 @@ public class WSSecEncryptedKey extends W
//
encryptedKeyElement = createEncryptedKey(document, keyEncAlgo);
if (encKeyId == null || "".equals(encKeyId)) {
- encKeyId = "EK-" + UUIDGenerator.getUUID();
+ encKeyId = IDGenerator.generateID("EK-");
}
encryptedKeyElement.setAttributeNS(null, "Id", encKeyId);
@@ -337,7 +337,7 @@ public class WSSecEncryptedKey extends W
case WSConstants.BST_DIRECT_REFERENCE:
Reference ref = new Reference(document);
- String certUri = UUIDGenerator.getUUID();
+ String certUri = IDGenerator.generateID(null);
ref.setURI("#" + certUri);
bstToken = new X509Security(document);
((X509Security) bstToken).setX509Certificate(remoteCert);
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/WSSecSAMLToken.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/WSSecSAMLToken.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/WSSecSAMLToken.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/WSSecSAMLToken.java Mon Aug 20 11:16:30 2012
@@ -21,7 +21,7 @@ package org.apache.ws.security.message;
import org.apache.ws.security.WSSConfig;
import org.apache.ws.security.common.ext.WSSecurityException;
-import org.apache.ws.security.saml.ext.AssertionWrapper;
+import org.apache.ws.security.common.saml.AssertionWrapper;
import org.apache.ws.security.util.WSSecurityUtil;
import org.w3c.dom.Document;
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/BinarySecurity.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/BinarySecurity.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/BinarySecurity.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/BinarySecurity.java Mon Aug 20 11:16:30 2012
@@ -24,7 +24,7 @@ import java.util.Arrays;
import org.apache.ws.security.WSConstants;
import org.apache.ws.security.common.ext.WSSecurityException;
-import org.apache.ws.security.util.DOM2Writer;
+import org.apache.ws.security.common.util.DOM2Writer;
import org.apache.ws.security.util.WSSecurityUtil;
import org.apache.ws.security.util.Base64;
import org.w3c.dom.Document;
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/DOMX509Data.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/DOMX509Data.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/DOMX509Data.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/DOMX509Data.java Mon Aug 20 11:16:30 2012
@@ -21,7 +21,7 @@ package org.apache.ws.security.message.t
import org.apache.ws.security.WSConstants;
import org.apache.ws.security.common.ext.WSSecurityException;
-import org.apache.ws.security.util.DOM2Writer;
+import org.apache.ws.security.common.util.DOM2Writer;
import org.apache.ws.security.util.WSSecurityUtil;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/DOMX509IssuerSerial.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/DOMX509IssuerSerial.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/DOMX509IssuerSerial.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/DOMX509IssuerSerial.java Mon Aug 20 11:16:30 2012
@@ -20,7 +20,7 @@
package org.apache.ws.security.message.token;
import org.apache.ws.security.WSConstants;
-import org.apache.ws.security.util.DOM2Writer;
+import org.apache.ws.security.common.util.DOM2Writer;
import org.apache.ws.security.util.WSSecurityUtil;
import org.apache.xml.security.utils.RFC2253Parser;
import org.w3c.dom.Document;
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/DerivedKeyToken.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/DerivedKeyToken.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/DerivedKeyToken.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/DerivedKeyToken.java Mon Aug 20 11:16:30 2012
@@ -28,12 +28,12 @@ import javax.xml.namespace.QName;
import org.apache.ws.security.WSConstants;
import org.apache.ws.security.WSDerivedKeyTokenPrincipal;
import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.util.DOM2Writer;
import org.apache.ws.security.common.derivedKey.ConversationConstants;
import org.apache.ws.security.common.derivedKey.ConversationException;
import org.apache.ws.security.common.derivedKey.AlgoFactory;
import org.apache.ws.security.common.derivedKey.DerivationAlgorithm;
import org.apache.ws.security.util.Base64;
-import org.apache.ws.security.util.DOM2Writer;
import org.apache.ws.security.util.WSSecurityUtil;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/Reference.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/Reference.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/Reference.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/Reference.java Mon Aug 20 11:16:30 2012
@@ -23,7 +23,7 @@ import javax.xml.namespace.QName;
import org.apache.ws.security.WSConstants;
import org.apache.ws.security.common.ext.WSSecurityException;
-import org.apache.ws.security.util.DOM2Writer;
+import org.apache.ws.security.common.util.DOM2Writer;
import org.apache.ws.security.util.WSSecurityUtil;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/SecurityContextToken.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/SecurityContextToken.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/SecurityContextToken.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/SecurityContextToken.java Mon Aug 20 11:16:30 2012
@@ -22,11 +22,11 @@ package org.apache.ws.security.message.t
import org.apache.ws.security.WSConstants;
import org.apache.ws.security.WSSConfig;
import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.util.DOM2Writer;
import org.apache.ws.security.common.derivedKey.ConversationConstants;
import org.apache.ws.security.common.derivedKey.ConversationException;
-import org.apache.ws.security.util.DOM2Writer;
-import org.apache.ws.security.util.UUIDGenerator;
import org.apache.ws.security.util.WSSecurityUtil;
+import org.apache.xml.security.stax.impl.util.IDGenerator;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
@@ -91,7 +91,7 @@ public class SecurityContextToken {
element.appendChild(elementIdentifier);
- String uuid = "uuid:" + UUIDGenerator.getUUID();
+ String uuid = IDGenerator.generateID("uuid:");
elementIdentifier.appendChild(doc.createTextNode(uuid));
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/SecurityTokenReference.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/SecurityTokenReference.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/SecurityTokenReference.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/SecurityTokenReference.java Mon Aug 20 11:16:30 2012
@@ -26,9 +26,9 @@ import org.apache.ws.security.common.cry
import org.apache.ws.security.common.crypto.Merlin;
import org.apache.ws.security.common.ext.WSPasswordCallback;
import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.util.DOM2Writer;
import org.apache.ws.security.message.CallbackLookup;
import org.apache.ws.security.message.DOMCallbackLookup;
-import org.apache.ws.security.util.DOM2Writer;
import org.apache.ws.security.util.WSSecurityUtil;
import org.apache.ws.security.util.Base64;
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/SignatureConfirmation.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/SignatureConfirmation.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/SignatureConfirmation.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/SignatureConfirmation.java Mon Aug 20 11:16:30 2012
@@ -23,7 +23,7 @@ import java.util.Arrays;
import org.apache.ws.security.WSConstants;
import org.apache.ws.security.common.ext.WSSecurityException;
-import org.apache.ws.security.util.DOM2Writer;
+import org.apache.ws.security.common.util.DOM2Writer;
import org.apache.ws.security.util.WSSecurityUtil;
import org.apache.ws.security.util.Base64;
import org.w3c.dom.Document;
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/Timestamp.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/Timestamp.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/Timestamp.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/Timestamp.java Mon Aug 20 11:16:30 2012
@@ -21,7 +21,7 @@ package org.apache.ws.security.message.t
import org.apache.ws.security.WSConstants;
import org.apache.ws.security.common.ext.WSSecurityException;
-import org.apache.ws.security.util.DOM2Writer;
+import org.apache.ws.security.common.util.DOM2Writer;
import org.apache.ws.security.util.WSSecurityUtil;
import org.apache.ws.security.util.XmlSchemaDateFormat;
import org.w3c.dom.Document;
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/UsernameToken.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/UsernameToken.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/UsernameToken.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/message/token/UsernameToken.java Mon Aug 20 11:16:30 2012
@@ -23,8 +23,8 @@ import org.apache.ws.security.WSConstant
import org.apache.ws.security.WSUsernameTokenPrincipal;
import org.apache.ws.security.common.ext.WSPasswordCallback;
import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.util.DOM2Writer;
import org.apache.ws.security.handler.RequestData;
-import org.apache.ws.security.util.DOM2Writer;
import org.apache.ws.security.util.WSSecurityUtil;
import org.apache.ws.security.util.XmlSchemaDateFormat;
import org.apache.ws.security.util.Base64;
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/processor/SAMLTokenProcessor.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/processor/SAMLTokenProcessor.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/processor/SAMLTokenProcessor.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/processor/SAMLTokenProcessor.java Mon Aug 20 11:16:30 2012
@@ -24,9 +24,10 @@ import org.apache.ws.security.WSConstant
import org.apache.ws.security.WSDocInfo;
import org.apache.ws.security.WSSecurityEngineResult;
import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.saml.AssertionWrapper;
+import org.apache.ws.security.common.util.DOM2Writer;
import org.apache.ws.security.handler.RequestData;
-import org.apache.ws.security.saml.ext.AssertionWrapper;
-import org.apache.ws.security.util.DOM2Writer;
+import org.apache.ws.security.saml.WSSSAMLKeyInfoProcessor;
import org.apache.ws.security.validate.Credential;
import org.apache.ws.security.validate.Validator;
@@ -106,10 +107,16 @@ public class SAMLTokenProcessor implemen
) throws WSSecurityException {
AssertionWrapper assertion = new AssertionWrapper(token);
if (assertion.isSigned()) {
- assertion.verifySignature(data, docInfo);
+ assertion.verifySignature(
+ new WSSSAMLKeyInfoProcessor(data, docInfo), data.getSigCrypto(),
+ data.getWssConfig().isWsiBSPCompliant()
+ );
}
// Parse the HOK subject if it exists
- assertion.parseHOKSubject(data, docInfo);
+ assertion.parseHOKSubject(
+ new WSSSAMLKeyInfoProcessor(data, docInfo), data.getSigCrypto(),
+ data.getCallbackHandler(), data.getWssConfig().isWsiBSPCompliant()
+ );
// Now delegate the rest of the verification to the Validator
Credential credential = new Credential();
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/saml/SAMLIssuer.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/saml/SAMLIssuer.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/saml/SAMLIssuer.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/saml/SAMLIssuer.java Mon Aug 20 11:16:30 2012
@@ -23,7 +23,7 @@ import javax.security.auth.callback.Call
import org.apache.ws.security.common.crypto.Crypto;
import org.apache.ws.security.common.ext.WSSecurityException;
-import org.apache.ws.security.saml.ext.AssertionWrapper;
+import org.apache.ws.security.common.saml.AssertionWrapper;
/**
* Builds a WS SAML Assertion and inserts it into the SOAP Envelope.
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/saml/SAMLIssuerImpl.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/saml/SAMLIssuerImpl.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/saml/SAMLIssuerImpl.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/saml/SAMLIssuerImpl.java Mon Aug 20 11:16:30 2012
@@ -22,9 +22,9 @@ package org.apache.ws.security.saml;
import org.apache.ws.security.common.crypto.Crypto;
import org.apache.ws.security.common.crypto.CryptoFactory;
import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.saml.AssertionWrapper;
+import org.apache.ws.security.common.saml.SAMLParms;
import org.apache.ws.security.common.util.Loader;
-import org.apache.ws.security.saml.ext.AssertionWrapper;
-import org.apache.ws.security.saml.ext.SAMLParms;
import java.util.Properties;
Added: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/saml/WSSSAMLKeyInfoProcessor.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/saml/WSSSAMLKeyInfoProcessor.java?rev=1374972&view=auto
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/saml/WSSSAMLKeyInfoProcessor.java (added)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/saml/WSSSAMLKeyInfoProcessor.java Mon Aug 20 11:16:30 2012
@@ -0,0 +1,105 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.ws.security.saml;
+
+import java.util.HashMap;
+import java.util.List;
+
+import javax.xml.namespace.QName;
+
+import org.apache.ws.security.WSDocInfo;
+import org.apache.ws.security.WSSecurityEngine;
+import org.apache.ws.security.WSSecurityEngineResult;
+import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.saml.SAMLKeyInfo;
+import org.apache.ws.security.common.saml.SAMLKeyInfoProcessor;
+import org.apache.ws.security.handler.RequestData;
+import org.apache.ws.security.message.token.SecurityTokenReference;
+import org.apache.ws.security.processor.EncryptedKeyProcessor;
+import org.apache.ws.security.str.STRParser;
+import org.apache.ws.security.str.SignatureSTRParser;
+import org.apache.xml.security.utils.Base64;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import org.w3c.dom.Text;
+
+/**
+ * This interface allows the user to plug in custom ways of processing a SAML KeyInfo.
+ */
+public class WSSSAMLKeyInfoProcessor implements SAMLKeyInfoProcessor {
+
+ private static final String WST_NS = "http://schemas.xmlsoap.org/ws/2005/02/trust";
+ private static final String WST_NS_05_12 =
+ "http://docs.oasis-open.org/ws-sx/ws-trust/200512";
+
+ private static final QName BINARY_SECRET =
+ new QName(WST_NS, "BinarySecret");
+ private static final QName BINARY_SECRET_05_12 =
+ new QName(WST_NS_05_12, "BinarySecret");
+
+ private RequestData data;
+ private WSDocInfo docInfo;
+
+ public WSSSAMLKeyInfoProcessor(RequestData data, WSDocInfo docInfo) {
+ this.data = data;
+ this.docInfo = docInfo;
+ }
+
+ public SAMLKeyInfo processSAMLKeyInfo(Element keyInfoElement) throws WSSecurityException {
+ //
+ // First try to find an EncryptedKey, BinarySecret or a SecurityTokenReference via DOM
+ //
+ Node node = keyInfoElement.getFirstChild();
+ while (node != null) {
+ if (Node.ELEMENT_NODE == node.getNodeType()) {
+ QName el = new QName(node.getNamespaceURI(), node.getLocalName());
+ if (el.equals(WSSecurityEngine.ENCRYPTED_KEY)) {
+ EncryptedKeyProcessor proc = new EncryptedKeyProcessor();
+ List<WSSecurityEngineResult> result =
+ proc.handleToken((Element)node, data, docInfo);
+ byte[] secret =
+ (byte[])result.get(0).get(
+ WSSecurityEngineResult.TAG_SECRET
+ );
+ return new SAMLKeyInfo(secret);
+ } else if (el.equals(BINARY_SECRET) || el.equals(BINARY_SECRET_05_12)) {
+ Text txt = (Text)node.getFirstChild();
+ try {
+ return new SAMLKeyInfo(Base64.decode(txt.getData()));
+ } catch (Exception e) {
+ throw new WSSecurityException("decoding.general", e);
+ }
+ } else if (SecurityTokenReference.STR_QNAME.equals(el)) {
+ STRParser strParser = new SignatureSTRParser();
+ strParser.parseSecurityTokenReference(
+ (Element)node, data, docInfo, new HashMap<String, Object>()
+ );
+ SAMLKeyInfo samlKeyInfo = new SAMLKeyInfo(strParser.getCertificates());
+ samlKeyInfo.setPublicKey(strParser.getPublicKey());
+ samlKeyInfo.setSecret(strParser.getSecretKey());
+ return samlKeyInfo;
+ }
+ }
+ node = node.getNextSibling();
+ }
+
+ return null;
+ }
+}
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/saml/WSSecSignatureSAML.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/saml/WSSecSignatureSAML.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/saml/WSSecSignatureSAML.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/saml/WSSecSignatureSAML.java Mon Aug 20 11:16:30 2012
@@ -40,6 +40,10 @@ import org.apache.ws.security.WSSConfig;
import org.apache.ws.security.common.crypto.Crypto;
import org.apache.ws.security.common.crypto.CryptoType;
import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.saml.AssertionWrapper;
+import org.apache.ws.security.common.saml.OpenSAMLUtil;
+import org.apache.ws.security.common.saml.SAMLKeyInfo;
+import org.apache.ws.security.common.saml.SAMLUtil;
import org.apache.ws.security.handler.RequestData;
import org.apache.ws.security.message.WSSecHeader;
import org.apache.ws.security.message.WSSecSignature;
@@ -48,8 +52,6 @@ import org.apache.ws.security.message.to
import org.apache.ws.security.message.token.Reference;
import org.apache.ws.security.message.token.SecurityTokenReference;
import org.apache.ws.security.message.token.X509Security;
-import org.apache.ws.security.saml.ext.AssertionWrapper;
-import org.apache.ws.security.saml.ext.OpenSAMLUtil;
import org.apache.ws.security.transform.STRTransform;
import org.apache.ws.security.util.WSSecurityUtil;
import org.w3c.dom.Document;
@@ -257,7 +259,9 @@ public class WSSecSignatureSAML extends
data.setWssConfig(getWsConfig());
SAMLKeyInfo samlKeyInfo =
SAMLUtil.getCredentialFromSubject(
- assertion, data, wsDocInfo, getWsConfig().isWsiBSPCompliant()
+ assertion, new WSSSAMLKeyInfoProcessor(data, wsDocInfo),
+ data.getSigCrypto(), data.getCallbackHandler(),
+ getWsConfig().isWsiBSPCompliant()
);
publicKey = samlKeyInfo.getPublicKey();
certs = samlKeyInfo.getCerts();
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/BSPEnforcer.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/BSPEnforcer.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/BSPEnforcer.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/BSPEnforcer.java Mon Aug 20 11:16:30 2012
@@ -21,12 +21,12 @@ package org.apache.ws.security.str;
import org.apache.ws.security.WSConstants;
import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.saml.AssertionWrapper;
import org.apache.ws.security.message.token.BinarySecurity;
import org.apache.ws.security.message.token.KerberosSecurity;
import org.apache.ws.security.message.token.PKIPathSecurity;
import org.apache.ws.security.message.token.SecurityTokenReference;
import org.apache.ws.security.message.token.X509Security;
-import org.apache.ws.security.saml.ext.AssertionWrapper;
/**
* This class enforces processing rules for SecurityTokenReferences to various token elements,
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/DerivedKeyTokenSTRParser.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/DerivedKeyTokenSTRParser.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/DerivedKeyTokenSTRParser.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/DerivedKeyTokenSTRParser.java Mon Aug 20 11:16:30 2012
@@ -26,12 +26,13 @@ import org.apache.ws.security.WSSecurity
import org.apache.ws.security.common.crypto.Crypto;
import org.apache.ws.security.common.ext.WSPasswordCallback;
import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.saml.AssertionWrapper;
+import org.apache.ws.security.common.saml.SAMLKeyInfo;
+import org.apache.ws.security.common.saml.SAMLUtil;
import org.apache.ws.security.handler.RequestData;
import org.apache.ws.security.message.token.BinarySecurity;
import org.apache.ws.security.message.token.SecurityTokenReference;
-import org.apache.ws.security.saml.SAMLKeyInfo;
-import org.apache.ws.security.saml.SAMLUtil;
-import org.apache.ws.security.saml.ext.AssertionWrapper;
+import org.apache.ws.security.saml.WSSSAMLKeyInfoProcessor;
import org.apache.ws.security.util.WSSecurityUtil;
import org.w3c.dom.Element;
@@ -273,7 +274,9 @@ public class DerivedKeyTokenSTRParser im
}
SAMLKeyInfo keyInfo =
SAMLUtil.getCredentialFromSubject(assertion,
- data, wsDocInfo, bspCompliant);
+ new WSSSAMLKeyInfoProcessor(data, wsDocInfo),
+ data.getSigCrypto(), data.getCallbackHandler(),
+ data.getWssConfig().isWsiBSPCompliant());
// TODO Handle malformed SAML tokens where they don't have the
// secret in them
secretKey = keyInfo.getSecret();
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/EncryptedKeySTRParser.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/EncryptedKeySTRParser.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/EncryptedKeySTRParser.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/EncryptedKeySTRParser.java Mon Aug 20 11:16:30 2012
@@ -26,13 +26,14 @@ import org.apache.ws.security.WSSecurity
import org.apache.ws.security.WSSecurityEngineResult;
import org.apache.ws.security.common.crypto.Crypto;
import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.saml.AssertionWrapper;
+import org.apache.ws.security.common.saml.SAMLKeyInfo;
+import org.apache.ws.security.common.saml.SAMLUtil;
import org.apache.ws.security.handler.RequestData;
import org.apache.ws.security.message.token.BinarySecurity;
import org.apache.ws.security.message.token.SecurityTokenReference;
import org.apache.ws.security.message.token.X509Security;
-import org.apache.ws.security.saml.SAMLKeyInfo;
-import org.apache.ws.security.saml.SAMLUtil;
-import org.apache.ws.security.saml.ext.AssertionWrapper;
+import org.apache.ws.security.saml.WSSSAMLKeyInfoProcessor;
import org.w3c.dom.Element;
import java.security.Principal;
@@ -102,7 +103,7 @@ public class EncryptedKeySTRParser imple
if (WSConstants.WSS_SAML_KI_VALUE_TYPE.equals(secRef.getKeyIdentifierValueType())
|| WSConstants.WSS_SAML2_KI_VALUE_TYPE.equals(secRef.getKeyIdentifierValueType())) {
AssertionWrapper assertion =
- SAMLUtil.getAssertionFromKeyIdentifier(
+ STRParserUtil.getAssertionFromKeyIdentifier(
secRef, strElement, data, wsDocInfo
);
if (bspCompliant) {
@@ -110,7 +111,9 @@ public class EncryptedKeySTRParser imple
}
SAMLKeyInfo samlKi =
SAMLUtil.getCredentialFromSubject(assertion,
- data, wsDocInfo, bspCompliant);
+ new WSSSAMLKeyInfoProcessor(data, wsDocInfo),
+ data.getSigCrypto(), data.getCallbackHandler(),
+ data.getWssConfig().isWsiBSPCompliant());
certs = samlKi.getCerts();
} else {
if (bspCompliant) {
@@ -228,8 +231,9 @@ public class EncryptedKeySTRParser imple
}
SAMLKeyInfo keyInfo =
SAMLUtil.getCredentialFromSubject(assertion,
- data,
- wsDocInfo, bspCompliant);
+ new WSSSAMLKeyInfoProcessor(data, wsDocInfo),
+ data.getSigCrypto(), data.getCallbackHandler(),
+ data.getWssConfig().isWsiBSPCompliant());
certs = keyInfo.getCerts();
} else {
throw new WSSecurityException(
Added: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/STRParserUtil.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/STRParserUtil.java?rev=1374972&view=auto
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/STRParserUtil.java (added)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/STRParserUtil.java Mon Aug 20 11:16:30 2012
@@ -0,0 +1,106 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.ws.security.str;
+
+import java.util.List;
+
+import org.apache.ws.security.WSDocInfo;
+import org.apache.ws.security.WSSecurityEngine;
+import org.apache.ws.security.WSSecurityEngineResult;
+import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.saml.AssertionWrapper;
+import org.apache.ws.security.handler.RequestData;
+import org.apache.ws.security.message.token.SecurityTokenReference;
+import org.apache.ws.security.processor.Processor;
+import org.w3c.dom.Element;
+
+/**
+ * Some utilities for the STRParsers.
+ */
+public final class STRParserUtil {
+
+ private STRParserUtil() {
+ // complete
+ }
+
+ /**
+ * Get an AssertionWrapper object from parsing a SecurityTokenReference that uses
+ * a KeyIdentifier that points to a SAML Assertion.
+ *
+ * @param secRef the SecurityTokenReference to the SAML Assertion
+ * @param strElement The SecurityTokenReference DOM element
+ * @param request The RequestData instance used to obtain configuration
+ * @param wsDocInfo The WSDocInfo object that holds previous results
+ * @return an AssertionWrapper object
+ * @throws WSSecurityException
+ */
+ public static AssertionWrapper getAssertionFromKeyIdentifier(
+ SecurityTokenReference secRef,
+ Element strElement,
+ RequestData request,
+ WSDocInfo wsDocInfo
+ ) throws WSSecurityException {
+ String keyIdentifierValue = secRef.getKeyIdentifierValue();
+ String type = secRef.getKeyIdentifierValueType();
+ WSSecurityEngineResult result = wsDocInfo.getResult(keyIdentifierValue);
+
+ AssertionWrapper assertion = null;
+ Element token = null;
+ if (result != null) {
+ assertion =
+ (AssertionWrapper)result.get(WSSecurityEngineResult.TAG_SAML_ASSERTION);
+ return assertion;
+ } else {
+ token =
+ secRef.findProcessedTokenElement(
+ strElement.getOwnerDocument(), wsDocInfo,
+ request.getCallbackHandler(),
+ keyIdentifierValue, type
+ );
+ if (token != null) {
+ if (!"Assertion".equals(token.getLocalName())) {
+ throw new WSSecurityException(
+ WSSecurityException.ErrorCode.FAILURE, "invalidSAMLsecurity"
+ );
+ }
+ return new AssertionWrapper(token);
+ }
+ token =
+ secRef.findUnprocessedTokenElement(
+ strElement.getOwnerDocument(), wsDocInfo,
+ request.getCallbackHandler(), keyIdentifierValue, type
+ );
+
+ if (token == null || !"Assertion".equals(token.getLocalName())) {
+ throw new WSSecurityException(
+ WSSecurityException.ErrorCode.FAILURE, "invalidSAMLsecurity"
+ );
+ }
+ Processor proc = request.getWssConfig().getProcessor(WSSecurityEngine.SAML_TOKEN);
+ List<WSSecurityEngineResult> samlResult =
+ proc.handleToken(token, request, wsDocInfo);
+ return
+ (AssertionWrapper)samlResult.get(0).get(
+ WSSecurityEngineResult.TAG_SAML_ASSERTION
+ );
+ }
+ }
+
+}
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/SecurityTokenRefSTRParser.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/SecurityTokenRefSTRParser.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/SecurityTokenRefSTRParser.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/SecurityTokenRefSTRParser.java Mon Aug 20 11:16:30 2012
@@ -26,6 +26,9 @@ import org.apache.ws.security.WSSecurity
import org.apache.ws.security.WSSecurityEngineResult;
import org.apache.ws.security.common.ext.WSPasswordCallback;
import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.saml.AssertionWrapper;
+import org.apache.ws.security.common.saml.SAMLKeyInfo;
+import org.apache.ws.security.common.saml.SAMLUtil;
import org.apache.ws.security.handler.RequestData;
import org.apache.ws.security.message.token.BinarySecurity;
import org.apache.ws.security.message.token.DerivedKeyToken;
@@ -33,9 +36,7 @@ import org.apache.ws.security.message.to
import org.apache.ws.security.message.token.SecurityTokenReference;
import org.apache.ws.security.message.token.UsernameToken;
import org.apache.ws.security.processor.Processor;
-import org.apache.ws.security.saml.SAMLKeyInfo;
-import org.apache.ws.security.saml.SAMLUtil;
-import org.apache.ws.security.saml.ext.AssertionWrapper;
+import org.apache.ws.security.saml.WSSSAMLKeyInfoProcessor;
import org.apache.ws.security.util.WSSecurityUtil;
import org.w3c.dom.Element;
@@ -137,7 +138,7 @@ public class SecurityTokenRefSTRParser i
getSecretKeyFromToken(secRef.getKeyIdentifierValue(), valueType, data);
if (secretKey == null) {
AssertionWrapper assertion =
- SAMLUtil.getAssertionFromKeyIdentifier(
+ STRParserUtil.getAssertionFromKeyIdentifier(
secRef, strElement,
data, wsDocInfo
);
@@ -286,7 +287,10 @@ public class SecurityTokenRefSTRParser i
BSPEnforcer.checkSamlTokenBSPCompliance(secRef, assertion);
}
SAMLKeyInfo samlKi =
- SAMLUtil.getCredentialFromSubject(assertion, data, wsDocInfo, bspCompliant);
+ SAMLUtil.getCredentialFromSubject(assertion,
+ new WSSSAMLKeyInfoProcessor(data, wsDocInfo),
+ data.getSigCrypto(), data.getCallbackHandler(),
+ data.getWssConfig().isWsiBSPCompliant());
if (samlKi == null) {
throw new WSSecurityException(
WSSecurityException.ErrorCode.FAILED_CHECK, "invalidSAMLToken", new Object[] {"No Secret Key"}
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/SignatureSTRParser.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/SignatureSTRParser.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/SignatureSTRParser.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/str/SignatureSTRParser.java Mon Aug 20 11:16:30 2012
@@ -29,6 +29,10 @@ import org.apache.ws.security.WSSecurity
import org.apache.ws.security.common.crypto.Crypto;
import org.apache.ws.security.common.ext.WSPasswordCallback;
import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.saml.AssertionWrapper;
+import org.apache.ws.security.common.saml.OpenSAMLUtil;
+import org.apache.ws.security.common.saml.SAMLKeyInfo;
+import org.apache.ws.security.common.saml.SAMLUtil;
import org.apache.ws.security.handler.RequestData;
import org.apache.ws.security.message.token.BinarySecurity;
import org.apache.ws.security.message.token.DerivedKeyToken;
@@ -37,10 +41,7 @@ import org.apache.ws.security.message.to
import org.apache.ws.security.message.token.SecurityTokenReference;
import org.apache.ws.security.message.token.UsernameToken;
import org.apache.ws.security.processor.Processor;
-import org.apache.ws.security.saml.SAMLKeyInfo;
-import org.apache.ws.security.saml.SAMLUtil;
-import org.apache.ws.security.saml.ext.AssertionWrapper;
-import org.apache.ws.security.saml.ext.OpenSAMLUtil;
+import org.apache.ws.security.saml.WSSSAMLKeyInfoProcessor;
import org.apache.ws.security.util.Base64;
import org.apache.ws.security.util.WSSecurityUtil;
import org.w3c.dom.Element;
@@ -173,7 +174,11 @@ public class SignatureSTRParser implemen
);
} else {
assertion = new AssertionWrapper(processedToken);
- assertion.parseHOKSubject(data, wsDocInfo);
+ assertion.parseHOKSubject(
+ new WSSSAMLKeyInfoProcessor(data, wsDocInfo),
+ data.getSigCrypto(), data.getCallbackHandler(),
+ data.getWssConfig().isWsiBSPCompliant()
+ );
}
if (bspCompliant) {
BSPEnforcer.checkSamlTokenBSPCompliance(secRef, assertion);
@@ -351,14 +356,17 @@ public class SignatureSTRParser implemen
secretKey = getSecretKeyFromToken(secRef.getKeyIdentifierValue(), valueType, data);
if (secretKey == null) {
AssertionWrapper assertion =
- SAMLUtil.getAssertionFromKeyIdentifier(
+ STRParserUtil.getAssertionFromKeyIdentifier(
secRef, secRef.getElement(), data, wsDocInfo
);
if (bspCompliant) {
BSPEnforcer.checkSamlTokenBSPCompliance(secRef, assertion);
}
SAMLKeyInfo samlKi =
- SAMLUtil.getCredentialFromSubject(assertion, data, wsDocInfo, bspCompliant);
+ SAMLUtil.getCredentialFromSubject(assertion,
+ new WSSSAMLKeyInfoProcessor(data, wsDocInfo),
+ data.getSigCrypto(), data.getCallbackHandler(),
+ data.getWssConfig().isWsiBSPCompliant());
X509Certificate[] foundCerts = samlKi.getCerts();
if (foundCerts != null && foundCerts.length > 0) {
certs = new X509Certificate[]{foundCerts[0]};
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/util/WSSecurityUtil.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/util/WSSecurityUtil.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/util/WSSecurityUtil.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/util/WSSecurityUtil.java Mon Aug 20 11:16:30 2012
@@ -28,6 +28,7 @@ import org.apache.ws.security.WSEncrypti
import org.apache.ws.security.WSSecurityEngineResult;
import org.apache.ws.security.WSSConfig;
import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.util.XMLUtils;
import org.apache.ws.security.handler.WSHandlerConstants;
import org.apache.ws.security.message.CallbackLookup;
import org.apache.xml.security.algorithms.JCEMapper;
@@ -554,22 +555,6 @@ public final class WSSecurityUtil {
return null;
}
- public static String getNamespace(String prefix, Node e) {
- while (e != null && (e.getNodeType() == Node.ELEMENT_NODE)) {
- Attr attr = null;
- if (prefix == null) {
- attr = ((Element) e).getAttributeNode("xmlns");
- } else {
- attr = ((Element) e).getAttributeNodeNS(WSConstants.XMLNS_NS, prefix);
- }
- if (attr != null) {
- return attr.getValue();
- }
- e = e.getParentNode();
- }
- return null;
- }
-
/**
* Return a QName when passed a string like "foo:bar" by mapping the "foo"
* prefix to a namespace in the context of the given Node.
@@ -598,14 +583,14 @@ public final class WSSecurityUtil {
int idx = str.indexOf(':');
if (idx > -1) {
String prefix = str.substring(0, idx);
- String ns = getNamespace(prefix, e);
+ String ns = XMLUtils.getNamespace(prefix, e);
if (ns == null) {
return null;
}
return new QName(ns, str.substring(idx + 1));
} else {
if (defaultNS) {
- String ns = getNamespace(null, e);
+ String ns = XMLUtils.getNamespace(null, e);
if (ns != null) {
return new QName(ns, str);
}
@@ -624,7 +609,7 @@ public final class WSSecurityUtil {
if (prefix == null) {
int i = 1;
prefix = "ns" + i;
- while (getNamespace(prefix, e) != null) {
+ while (XMLUtils.getNamespace(prefix, e) != null) {
i++;
prefix = "ns" + i;
}
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/validate/Credential.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/validate/Credential.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/validate/Credential.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/validate/Credential.java Mon Aug 20 11:16:30 2012
@@ -23,11 +23,11 @@ import java.security.Principal;
import java.security.PublicKey;
import java.security.cert.X509Certificate;
+import org.apache.ws.security.common.saml.AssertionWrapper;
import org.apache.ws.security.message.token.BinarySecurity;
import org.apache.ws.security.message.token.SecurityContextToken;
import org.apache.ws.security.message.token.Timestamp;
import org.apache.ws.security.message.token.UsernameToken;
-import org.apache.ws.security.saml.ext.AssertionWrapper;
/**
* This class stores various Credential types that can be validated and/or returned by a
Modified: webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/validate/SamlAssertionValidator.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/validate/SamlAssertionValidator.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/validate/SamlAssertionValidator.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/main/java/org/apache/ws/security/validate/SamlAssertionValidator.java Mon Aug 20 11:16:30 2012
@@ -22,10 +22,10 @@ package org.apache.ws.security.validate;
import java.util.List;
import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.saml.AssertionWrapper;
+import org.apache.ws.security.common.saml.OpenSAMLUtil;
+import org.apache.ws.security.common.saml.SAMLKeyInfo;
import org.apache.ws.security.handler.RequestData;
-import org.apache.ws.security.saml.SAMLKeyInfo;
-import org.apache.ws.security.saml.ext.AssertionWrapper;
-import org.apache.ws.security.saml.ext.OpenSAMLUtil;
import org.joda.time.DateTime;
import org.opensaml.common.SAMLVersion;
import org.opensaml.xml.validation.ValidationException;
Modified: webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/AbstractSAMLCallbackHandler.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/AbstractSAMLCallbackHandler.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/AbstractSAMLCallbackHandler.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/AbstractSAMLCallbackHandler.java Mon Aug 20 11:16:30 2012
@@ -20,19 +20,19 @@
package org.apache.ws.security.common;
import org.apache.ws.security.WSConstants;
+import org.apache.ws.security.common.saml.SAMLCallback;
+import org.apache.ws.security.common.saml.bean.ActionBean;
+import org.apache.ws.security.common.saml.bean.AttributeBean;
+import org.apache.ws.security.common.saml.bean.AttributeStatementBean;
+import org.apache.ws.security.common.saml.bean.AuthDecisionStatementBean;
+import org.apache.ws.security.common.saml.bean.AuthenticationStatementBean;
+import org.apache.ws.security.common.saml.bean.ConditionsBean;
+import org.apache.ws.security.common.saml.bean.KeyInfoBean;
+import org.apache.ws.security.common.saml.bean.KeyInfoBean.CERT_IDENTIFIER;
+import org.apache.ws.security.common.saml.bean.SubjectBean;
+import org.apache.ws.security.common.saml.bean.SubjectConfirmationDataBean;
+import org.apache.ws.security.common.saml.bean.SubjectLocalityBean;
import org.apache.ws.security.message.WSSecEncryptedKey;
-import org.apache.ws.security.saml.ext.SAMLCallback;
-import org.apache.ws.security.saml.ext.bean.ActionBean;
-import org.apache.ws.security.saml.ext.bean.AttributeBean;
-import org.apache.ws.security.saml.ext.bean.AttributeStatementBean;
-import org.apache.ws.security.saml.ext.bean.AuthenticationStatementBean;
-import org.apache.ws.security.saml.ext.bean.AuthDecisionStatementBean;
-import org.apache.ws.security.saml.ext.bean.ConditionsBean;
-import org.apache.ws.security.saml.ext.bean.KeyInfoBean;
-import org.apache.ws.security.saml.ext.bean.SubjectBean;
-import org.apache.ws.security.saml.ext.bean.SubjectConfirmationDataBean;
-import org.apache.ws.security.saml.ext.bean.SubjectLocalityBean;
-import org.apache.ws.security.saml.ext.bean.KeyInfoBean.CERT_IDENTIFIER;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
Modified: webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/CustomSamlAssertionValidator.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/CustomSamlAssertionValidator.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/CustomSamlAssertionValidator.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/CustomSamlAssertionValidator.java Mon Aug 20 11:16:30 2012
@@ -20,8 +20,8 @@
package org.apache.ws.security.common;
import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.saml.AssertionWrapper;
import org.apache.ws.security.handler.RequestData;
-import org.apache.ws.security.saml.ext.AssertionWrapper;
import org.apache.ws.security.validate.Credential;
import org.apache.ws.security.validate.SamlAssertionValidator;
Modified: webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/SAML1AuthnHOKHandler.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/SAML1AuthnHOKHandler.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/SAML1AuthnHOKHandler.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/SAML1AuthnHOKHandler.java Mon Aug 20 11:16:30 2012
@@ -23,11 +23,11 @@ import org.apache.ws.security.common.cry
import org.apache.ws.security.common.crypto.CryptoFactory;
import org.apache.ws.security.common.crypto.CryptoType;
import org.apache.ws.security.common.ext.WSSecurityException;
-import org.apache.ws.security.saml.ext.SAMLCallback;
-import org.apache.ws.security.saml.ext.bean.AuthenticationStatementBean;
-import org.apache.ws.security.saml.ext.bean.KeyInfoBean;
-import org.apache.ws.security.saml.ext.bean.SubjectBean;
-import org.apache.ws.security.saml.ext.builder.SAML1Constants;
+import org.apache.ws.security.common.saml.SAMLCallback;
+import org.apache.ws.security.common.saml.bean.AuthenticationStatementBean;
+import org.apache.ws.security.common.saml.bean.KeyInfoBean;
+import org.apache.ws.security.common.saml.bean.SubjectBean;
+import org.apache.ws.security.common.saml.builder.SAML1Constants;
import org.opensaml.common.SAMLVersion;
import javax.security.auth.callback.Callback;
Modified: webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/SAML1CallbackHandler.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/SAML1CallbackHandler.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/SAML1CallbackHandler.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/SAML1CallbackHandler.java Mon Aug 20 11:16:30 2012
@@ -22,10 +22,10 @@ package org.apache.ws.security.common;
import org.apache.ws.security.common.crypto.Crypto;
import org.apache.ws.security.common.crypto.CryptoFactory;
import org.apache.ws.security.common.crypto.CryptoType;
-import org.apache.ws.security.saml.ext.SAMLCallback;
-import org.apache.ws.security.saml.ext.bean.KeyInfoBean;
-import org.apache.ws.security.saml.ext.bean.SubjectBean;
-import org.apache.ws.security.saml.ext.builder.SAML1Constants;
+import org.apache.ws.security.common.saml.SAMLCallback;
+import org.apache.ws.security.common.saml.bean.KeyInfoBean;
+import org.apache.ws.security.common.saml.bean.SubjectBean;
+import org.apache.ws.security.common.saml.builder.SAML1Constants;
import org.opensaml.common.SAMLVersion;
import javax.security.auth.callback.Callback;
Modified: webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/SAML2CallbackHandler.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/SAML2CallbackHandler.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/SAML2CallbackHandler.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/SAML2CallbackHandler.java Mon Aug 20 11:16:30 2012
@@ -22,10 +22,10 @@ package org.apache.ws.security.common;
import org.apache.ws.security.common.crypto.Crypto;
import org.apache.ws.security.common.crypto.CryptoFactory;
import org.apache.ws.security.common.crypto.CryptoType;
-import org.apache.ws.security.saml.ext.SAMLCallback;
-import org.apache.ws.security.saml.ext.bean.KeyInfoBean;
-import org.apache.ws.security.saml.ext.bean.SubjectBean;
-import org.apache.ws.security.saml.ext.builder.SAML2Constants;
+import org.apache.ws.security.common.saml.SAMLCallback;
+import org.apache.ws.security.common.saml.bean.KeyInfoBean;
+import org.apache.ws.security.common.saml.bean.SubjectBean;
+import org.apache.ws.security.common.saml.builder.SAML2Constants;
import org.opensaml.common.SAMLVersion;
import javax.security.auth.callback.Callback;
Modified: webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/SAMLElementCallbackHandler.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/SAMLElementCallbackHandler.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/SAMLElementCallbackHandler.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/common/SAMLElementCallbackHandler.java Mon Aug 20 11:16:30 2012
@@ -25,10 +25,10 @@ import javax.security.auth.callback.Call
import javax.security.auth.callback.UnsupportedCallbackException;
import javax.xml.parsers.DocumentBuilderFactory;
-import org.apache.ws.security.saml.ext.AssertionWrapper;
-import org.apache.ws.security.saml.ext.SAMLCallback;
-import org.apache.ws.security.saml.ext.SAMLParms;
-import org.apache.ws.security.saml.ext.builder.SAML1Constants;
+import org.apache.ws.security.common.saml.AssertionWrapper;
+import org.apache.ws.security.common.saml.SAMLCallback;
+import org.apache.ws.security.common.saml.SAMLParms;
+import org.apache.ws.security.common.saml.builder.SAML1Constants;
import org.w3c.dom.Element;
/**
Modified: webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/components/crypto/CertificateStoreTest.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/components/crypto/CertificateStoreTest.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/components/crypto/CertificateStoreTest.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/components/crypto/CertificateStoreTest.java Mon Aug 20 11:16:30 2012
@@ -30,6 +30,7 @@ import org.apache.ws.security.common.cry
import org.apache.ws.security.common.crypto.CryptoFactory;
import org.apache.ws.security.common.crypto.CryptoType;
import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.util.XMLUtils;
import org.apache.ws.security.message.WSSecHeader;
import org.apache.ws.security.message.WSSecSignature;
import org.apache.ws.security.util.WSSecurityUtil;
@@ -77,7 +78,7 @@ public class CertificateStoreTest extend
if (LOG.isDebugEnabled()) {
String outputString =
- org.apache.ws.security.util.XMLUtils.PrettyDocumentToString(signedDoc);
+ XMLUtils.PrettyDocumentToString(signedDoc);
LOG.debug(outputString);
}
//
@@ -108,7 +109,7 @@ public class CertificateStoreTest extend
if (LOG.isDebugEnabled()) {
String outputString =
- org.apache.ws.security.util.XMLUtils.PrettyDocumentToString(signedDoc);
+ XMLUtils.PrettyDocumentToString(signedDoc);
LOG.debug(outputString);
}
//
@@ -145,7 +146,7 @@ public class CertificateStoreTest extend
if (LOG.isDebugEnabled()) {
String outputString =
- org.apache.ws.security.util.XMLUtils.PrettyDocumentToString(signedDoc);
+ XMLUtils.PrettyDocumentToString(signedDoc);
LOG.debug(outputString);
}
@@ -177,7 +178,7 @@ public class CertificateStoreTest extend
if (LOG.isDebugEnabled()) {
String outputString =
- org.apache.ws.security.util.XMLUtils.PrettyDocumentToString(signedDoc);
+ XMLUtils.PrettyDocumentToString(signedDoc);
LOG.debug(outputString);
}
@@ -209,7 +210,7 @@ public class CertificateStoreTest extend
if (LOG.isDebugEnabled()) {
String outputString =
- org.apache.ws.security.util.XMLUtils.PrettyDocumentToString(signedDoc);
+ XMLUtils.PrettyDocumentToString(signedDoc);
LOG.debug(outputString);
}
@@ -242,7 +243,7 @@ public class CertificateStoreTest extend
if (LOG.isDebugEnabled()) {
String outputString =
- org.apache.ws.security.util.XMLUtils.PrettyDocumentToString(signedDoc);
+ XMLUtils.PrettyDocumentToString(signedDoc);
LOG.debug(outputString);
}
//
@@ -264,14 +265,14 @@ public class CertificateStoreTest extend
* @throws Exception Thrown when there is a problem in verification
*/
private List<WSSecurityEngineResult>
- verify(Document doc, Crypto crypto) throws WSSecurityException {
+ verify(Document doc, Crypto crypto) throws Exception {
List<WSSecurityEngineResult> results = secEngine.processSecurityHeader(
doc, null, keystoreCallbackHandler, crypto
);
if (LOG.isDebugEnabled()) {
LOG.debug("Verfied and decrypted message:");
String outputString =
- org.apache.ws.security.util.XMLUtils.PrettyDocumentToString(doc);
+ XMLUtils.PrettyDocumentToString(doc);
LOG.debug(outputString);
}
return results;
Modified: webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/components/crypto/CryptoProviderTest.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/components/crypto/CryptoProviderTest.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/components/crypto/CryptoProviderTest.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/components/crypto/CryptoProviderTest.java Mon Aug 20 11:16:30 2012
@@ -25,6 +25,7 @@ import org.apache.ws.security.common.Key
import org.apache.ws.security.common.SOAPUtil;
import org.apache.ws.security.common.crypto.Crypto;
import org.apache.ws.security.common.crypto.CryptoFactory;
+import org.apache.ws.security.common.util.XMLUtils;
import org.apache.ws.security.message.WSSecEncrypt;
import org.apache.ws.security.message.WSSecHeader;
import org.apache.ws.security.message.WSSecSignature;
@@ -75,7 +76,7 @@ public class CryptoProviderTest extends
if (LOG.isDebugEnabled()) {
String outputString =
- org.apache.ws.security.util.XMLUtils.PrettyDocumentToString(signedDoc);
+ XMLUtils.PrettyDocumentToString(signedDoc);
LOG.debug(outputString);
}
verify(signedDoc);
@@ -123,7 +124,7 @@ public class CryptoProviderTest extends
if (LOG.isDebugEnabled()) {
String outputString =
- org.apache.ws.security.util.XMLUtils.PrettyDocumentToString(encryptedDoc);
+ XMLUtils.PrettyDocumentToString(encryptedDoc);
LOG.debug(outputString);
}
verify(encryptedDoc);
@@ -172,7 +173,7 @@ public class CryptoProviderTest extends
if (LOG.isDebugEnabled()) {
String outputString =
- org.apache.ws.security.util.XMLUtils.PrettyDocumentToString(encryptedDoc);
+ XMLUtils.PrettyDocumentToString(encryptedDoc);
LOG.debug(outputString);
}
try {
@@ -196,7 +197,7 @@ public class CryptoProviderTest extends
if (LOG.isDebugEnabled()) {
LOG.debug("Verfied and decrypted message:");
String outputString =
- org.apache.ws.security.util.XMLUtils.PrettyDocumentToString(doc);
+ XMLUtils.PrettyDocumentToString(doc);
LOG.debug(outputString);
}
}
Modified: webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/handler/CallbackRefTest.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/handler/CallbackRefTest.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/handler/CallbackRefTest.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/handler/CallbackRefTest.java Mon Aug 20 11:16:30 2012
@@ -24,6 +24,7 @@ import org.apache.ws.security.WSSConfig;
import org.apache.ws.security.common.CustomHandler;
import org.apache.ws.security.common.SOAPUtil;
import org.apache.ws.security.common.UsernamePasswordCallbackHandler;
+import org.apache.ws.security.common.util.XMLUtils;
import org.w3c.dom.Document;
import javax.security.auth.callback.CallbackHandler;
@@ -71,7 +72,7 @@ public class CallbackRefTest extends org
);
String outputString =
- org.apache.ws.security.util.XMLUtils.PrettyDocumentToString(doc);
+ XMLUtils.PrettyDocumentToString(doc);
if (LOG.isDebugEnabled()) {
LOG.debug(outputString);
}
@@ -108,7 +109,7 @@ public class CallbackRefTest extends org
);
String outputString =
- org.apache.ws.security.util.XMLUtils.PrettyDocumentToString(doc);
+ XMLUtils.PrettyDocumentToString(doc);
if (LOG.isDebugEnabled()) {
LOG.debug(outputString);
}
Modified: webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/handler/CustomActionProcessorTest.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/handler/CustomActionProcessorTest.java?rev=1374972&r1=1374971&r2=1374972&view=diff
==============================================================================
--- webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/handler/CustomActionProcessorTest.java (original)
+++ webservices/wss4j/trunk/wss4j-dom/src/test/java/org/apache/ws/security/handler/CustomActionProcessorTest.java Mon Aug 20 11:16:30 2012
@@ -30,6 +30,7 @@ import org.apache.ws.security.common.SOA
import org.apache.ws.security.common.crypto.Crypto;
import org.apache.ws.security.common.crypto.CryptoFactory;
import org.apache.ws.security.common.ext.WSSecurityException;
+import org.apache.ws.security.common.util.XMLUtils;
import org.apache.ws.security.message.WSSecSignature;
import org.apache.ws.security.message.WSSecHeader;
import org.apache.ws.security.util.WSSecurityUtil;
@@ -71,7 +72,7 @@ public class CustomActionProcessorTest e
if (LOG.isDebugEnabled()) {
LOG.debug("Signed message with IssuerSerial key identifier:");
String outputString =
- org.apache.ws.security.util.XMLUtils.PrettyDocumentToString(signedDoc);
+ XMLUtils.PrettyDocumentToString(signedDoc);
LOG.debug(outputString);
}
LOG.info("After Signing IS....");
@@ -119,7 +120,7 @@ public class CustomActionProcessorTest e
if (LOG.isDebugEnabled()) {
LOG.debug("Signed message with IssuerSerial key identifier:");
String outputString =
- org.apache.ws.security.util.XMLUtils.PrettyDocumentToString(signedDoc);
+ XMLUtils.PrettyDocumentToString(signedDoc);
LOG.debug(outputString);
}
LOG.info("After Signing IS....");
@@ -281,7 +282,7 @@ public class CustomActionProcessorTest e
if (LOG.isDebugEnabled()) {
LOG.debug("Message:");
String outputString =
- org.apache.ws.security.util.XMLUtils.PrettyDocumentToString(doc);
+ XMLUtils.PrettyDocumentToString(doc);
LOG.debug(outputString);
}
}