Author: ruchith
Date: Sat Feb 23 03:52:07 2008
New Revision: 14078
Log:
Make sure we don't miss the namespaces when we obtain ds:KeyInfo from the
InfoCard request
Added SAML 2.0 relaying party into javarp
Some minor formatting
Modified:
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/sts/mex/MexGetService.java
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/sts/mex/XferGetServiceAdapter.java
trunk/solutions/identity/modules/samples/servlet-filter/src/main/webapp/index.html
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/relyingparty/saml/SAMLTokenConsumer.java
Modified:
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/sts/mex/MexGetService.java
==============================================================================
---
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/sts/mex/MexGetService.java
(original)
+++
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/sts/mex/MexGetService.java
Sat Feb 23 03:52:07 2008
@@ -15,14 +15,6 @@
*/
package org.wso2.solutions.identity.sts.mex;
-import java.security.cert.X509Certificate;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import javax.xml.crypto.dsig.XMLSignature;
-import javax.xml.namespace.QName;
-
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMFactory;
import org.apache.axiom.om.OMNamespace;
@@ -31,7 +23,6 @@
import org.apache.axis2.addressing.AddressingConstants;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.addressing.EndpointReferenceHelper;
-import org.apache.axis2.context.ConfigurationContext;
import org.apache.axis2.context.MessageContext;
import org.apache.axis2.mex.om.Metadata;
import org.apache.axis2.mex.om.MetadataSection;
@@ -45,6 +36,14 @@
import org.wso2.solutions.identity.sts.KeyUtil;
import org.wso2.wsas.admin.service.ServiceAdmin;
+import javax.xml.crypto.dsig.XMLSignature;
+import javax.xml.namespace.QName;
+
+import java.security.cert.X509Certificate;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
public class MexGetService {
private static Log log = LogFactory.getLog(MexGetService.class);
@@ -104,6 +103,7 @@
List lst = new ArrayList();
lst.add(section);
+
Metadata mdata = new Metadata();
mdata.setMetadatSections(lst);
Modified:
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/sts/mex/XferGetServiceAdapter.java
==============================================================================
---
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/sts/mex/XferGetServiceAdapter.java
(original)
+++
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/sts/mex/XferGetServiceAdapter.java
Sat Feb 23 03:52:07 2008
@@ -20,11 +20,9 @@
import org.apache.axiom.om.OMElement;
import org.apache.axis2.AxisFault;
-import org.apache.axis2.addressing.EndpointReference;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.wso2.xfer.WSTransferException;
-import org.wso2.xfer.WSTransferFactory;
import org.wso2.xfer.WSTransferOperations;
public class XferGetServiceAdapter implements WSTransferOperations {
Modified:
trunk/solutions/identity/modules/samples/servlet-filter/src/main/webapp/index.html
==============================================================================
---
trunk/solutions/identity/modules/samples/servlet-filter/src/main/webapp/index.html
(original)
+++
trunk/solutions/identity/modules/samples/servlet-filter/src/main/webapp/index.html
Sat Feb 23 03:52:07 2008
@@ -24,6 +24,24 @@
</form>
<hr/>
+<hr/>
+
+<h2>SAML 2.0 Token with CardSpace</h2>
+<form name="frm" id="frm" method="post" action="login.jsp">
+ <input type="hidden" name="InfoCardSignin" value="Log
in" /><br/>
+ <OBJECT type="application/x-informationCard" name="xmlToken">
+ <PARAM Name="tokenType"
+ Value="urn:oasis:names:tc:SAML:2.0:assertion">
+
+ <PARAM Name="requiredClaims"
+
Value="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/privatepersonalidentifier">
+ <PARAM Name='optionalClaims'
value='http://schemas.xmlsoap.org/ws/2005/05/identity/claims/webpage'>
+ </OBJECT>
+ <input type="submit" name="submit" value="Login" />
+ </form>
+<hr/>
+
+
<h2>OpenID Simple Registration Demo</h2>
OpenID Simple Registration is an extension to the OpenID Authentication
protocol that allows for very light-weight profile exchange. It is designed to
pass eight commonly requested pieces of information when an End User goes to
register a new account with a web service.
Modified:
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/relyingparty/saml/SAMLTokenConsumer.java
==============================================================================
---
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/relyingparty/saml/SAMLTokenConsumer.java
(original)
+++
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/relyingparty/saml/SAMLTokenConsumer.java
Sat Feb 23 03:52:07 2008
@@ -12,17 +12,21 @@
import javax.xml.stream.XMLStreamReader;
import org.apache.axiom.om.OMAbstractFactory;
+import org.apache.axiom.om.OMDocument;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMFactory;
import org.apache.axiom.om.OMNamespace;
import org.apache.axiom.om.impl.builder.StAXOMBuilder;
+import org.apache.axiom.om.impl.dom.factory.OMDOMFactory;
import org.apache.axiom.om.util.Base64;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.ws.security.util.DOM2Writer;
import org.opensaml.DefaultBootstrap;
import org.opensaml.xml.ConfigurationException;
+import org.w3c.dom.Document;
import org.w3c.dom.Element;
+import org.w3c.dom.Node;
import org.wso2.solutions.identity.IdentityConstants;
import org.wso2.solutions.identity.i18n.Messages;
import org.wso2.solutions.identity.relyingparty.RelyingPartyException;
@@ -217,7 +221,13 @@
omKeyInfo = null;
if (keyInfo != null) {
- String value = DOM2Writer.nodeToString(keyInfo);
+
+ //Make sure we don't loose namespaces
+ OMDOMFactory fac = new OMDOMFactory();
+ OMDocument doc = fac.createOMDocument();
+ //Import the node as an AXIOM-DOOM node and use toSting()
+ Node node = ((Document)doc).importNode(keyInfo, true);
+ String value = node.toString();
XMLStreamReader parser = XMLInputFactory.newInstance()
.createXMLStreamReader(new StringReader(value));
StAXOMBuilder builder = new StAXOMBuilder(parser);
@@ -233,7 +243,11 @@
}
if (omKeyInfo != null) {
- issuerInfo = issuerInfo + omKeyInfo.toString();
+ if(issuerInfo != null) {
+ issuerInfo = issuerInfo + omKeyInfo.toString();
+ } else {
+ issuerInfo = omKeyInfo.toString();
+ }
}
return issuerInfo;
_______________________________________________
Identity-dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/identity-dev