Author: ruchith Date: Fri Mar 14 04:16:25 2008 New Revision: 14814 Log:
got rid of invalid deps Modified: trunk/solutions/identity/dep-versions trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/cards/CardIssuer.java trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/cards/model/X509V3Credential.java trunk/solutions/identity/modules/user-ui/src/main/java/org/wso2/solutions/identity/user/ui/action/DownloadInfoCardAction.java trunk/solutions/identity/modules/user-ui/src/main/webapp/jsp/main.jsp Modified: trunk/solutions/identity/dep-versions ============================================================================== --- trunk/solutions/identity/dep-versions (original) +++ trunk/solutions/identity/dep-versions Fri Mar 14 04:16:25 2008 @@ -1,15 +1,7 @@ This file contains the revisions of SNAPSHOT dependencies that we use -Apache Axis2 - 523780 - https://svn.apache.org/repos/asf/webservices/axis2/trunk/java -Apache Axis2C - 523228 - https://svn.apache.org/repos/asf/webservices/axis2/trunk/c/ -Apache RampartC - 533236 - https://svn.apache.org/repos/asf/webservices/rampart/trunk/c Apache Axiom - 523780 - https://svn.apache.org/repos/asf/webservices/commons/trunk/modules/axiom -Apache Neethi - 523780 - https://svn.apache.org/repos/asf/webservices/commons/trunk/modules/neethi -Apache XMLSchema - 523780 - https://svn.apache.org/repos/asf/webservices/commons/trunk/modules/XmlSchema -Apache Woden - 523780 - http://svn.apache.org/repos/asf/incubator/woden/trunk/java Apache WSS4J - 539182 - https://svn.apache.org/repos/asf/webservices/wss4j/trunk -Apache Rampart - 544188 - https://svn.apache.org/repos/asf/webservices/rampart/trunk/java -Opensaml - 406 - https://svn.middleware.georgetown.edu/java-opensaml1/ +Apache Rampart - - https://svn.apache.org/repos/asf/webservices/rampart/trunk/java WSO2 User Management - 1628 - https://wso2.org/repos/wso2/trunk/commons/usermanager -WSO2 WSAS - 3896 - https://wso2.org/repos/wso2/trunk/wsas/java Modified: trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/cards/CardIssuer.java ============================================================================== --- trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/cards/CardIssuer.java (original) +++ trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/cards/CardIssuer.java Fri Mar 14 04:16:25 2008 @@ -36,6 +36,7 @@ import org.wso2.solutions.identity.cards.model.TokenServiceList; import org.wso2.solutions.identity.cards.model.UserCredential; import org.wso2.solutions.identity.cards.model.UsernamePasswordCredential; +import org.wso2.solutions.identity.cards.model.X509V3Credential; import org.wso2.solutions.identity.i18n.Messages; import org.wso2.solutions.identity.openid.OpenIDUtil; import org.wso2.solutions.identity.persistence.IPPersistenceManager; @@ -120,6 +121,27 @@ return cardElement; } + public Element issueCardForX509V3Certificate(String userName, String cert, + boolean requireAppliesTo) throws IdentityProviderException { + + if (isCardLogDebug) { + cardIssuerLog.debug(messages.getMessage("startCardIssue", + new String[] { "x509v3Cert", cert })); + } + + //TODO : Store audit data + //TOOD : - cert, user + + X509V3Credential x509Cred = new X509V3Credential(); + x509Cred.setBase64EncodedThumbprintValue(cert); + + UserCredential cred = new UserCredential(x509Cred); + + Element cardElement = issueCard(cred, requireAppliesTo, userName); + + return cardElement; + } + private Element issueCard(UserCredential credential, boolean requireAppliesTo, String primaryUserId) throws IdentityProviderException { Modified: trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/cards/model/X509V3Credential.java ============================================================================== --- trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/cards/model/X509V3Credential.java (original) +++ trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/cards/model/X509V3Credential.java Fri Mar 14 04:16:25 2008 @@ -32,6 +32,8 @@ public final static QName NAME = new QName(IdentityConstants.NS, "X509V3Credential", IdentityConstants.PREFIX); + private String base64EncodedThumbprintValue = null; + /** * [EMAIL PROTECTED] */ @@ -56,12 +58,19 @@ OMElement elem = fac.createOMElement(NAME); OMElement x509DataElem = fac.createOMElement(new QName( - WSConstants.SIG_NS, Constants._TAG_X509DATA), elem); - OMElement keyIdElem = fac.createOMElement(BinarySecurity.TOKEN_KI, x509DataElem); - keyIdElem.addAttribute("ValueType", SecurityTokenReference.THUMB_URI, null); - keyIdElem.addAttribute("EncodingType", BinarySecurity.BASE64_ENCODING, null); + WSConstants.SIG_NS, Constants._TAG_X509DATA, WSConstants.SIG_PREFIX), elem); + OMElement keyIdElem = fac.createOMElement(new QName( + WSConstants.WSSE_NS, "KeyIdentifier", WSConstants.WSSE_PREFIX), + x509DataElem); + keyIdElem.addAttribute("ValueType", "http://docs.oasis-open.org/wss/2004/xx/oasis-2004xx-wss-soap-message-security-1.1#ThumbprintSHA1", null); +// keyIdElem.addAttribute("EncodingType", BinarySecurity.BASE64_ENCODING, null); + keyIdElem.setText(this.base64EncodedThumbprintValue); return elem; } + + public void setBase64EncodedThumbprintValue(String base64EncodedThumbprintValue) { + this.base64EncodedThumbprintValue = base64EncodedThumbprintValue; + } } Modified: trunk/solutions/identity/modules/user-ui/src/main/java/org/wso2/solutions/identity/user/ui/action/DownloadInfoCardAction.java ============================================================================== --- trunk/solutions/identity/modules/user-ui/src/main/java/org/wso2/solutions/identity/user/ui/action/DownloadInfoCardAction.java (original) +++ trunk/solutions/identity/modules/user-ui/src/main/java/org/wso2/solutions/identity/user/ui/action/DownloadInfoCardAction.java Fri Mar 14 04:16:25 2008 @@ -40,6 +40,8 @@ private static final long serialVersionUID = -1545801495450399056L; private String selfIssuedPpid; + + private String x509Certificate; public String execute() throws Exception { ActionContext context = ActionContext.getContext(); @@ -61,6 +63,8 @@ if (selfIssuedPpid != null) { card = cardIssuer.issueCardForSelfIssuedCard(selfIssuedPpid, true); + } else if(x509Certificate != null) { + card = cardIssuer.issueCardForX509V3Certificate(userName, x509Certificate, true); } else if (sessionPpid != null) { card = cardIssuer.issueCardForSelfIssuedCard(sessionPpid, true); } else { @@ -79,6 +83,11 @@ this.selfIssuedPpid = selfIssuedPpids; } + + public void setX509Certificate(String certificate) { + x509Certificate = certificate; + } + /** * Provide an instance of the information card issuer. * @return Modified: trunk/solutions/identity/modules/user-ui/src/main/webapp/jsp/main.jsp ============================================================================== --- trunk/solutions/identity/modules/user-ui/src/main/webapp/jsp/main.jsp (original) +++ trunk/solutions/identity/modules/user-ui/src/main/webapp/jsp/main.jsp Fri Mar 14 04:16:25 2008 @@ -222,7 +222,20 @@ </td> </tr> </table> - + <table cellpadding="0" cellspacing="0" border="0" class="manage-table"> + <tr> + <td> + <p class="heading-link">Managed Information Cards for X.509v3 Certificates</p> + <s:url id="downloadCardForX509Url" namespace="/" action="DownloadInfoCard"> + <s:param name="x509Certificate" value="ppid" /> + </s:url> + </td> + + </tr> + <tr> + <td><s:a href="DownloadInfoCard.action?x509Certificate=NQM0IBvuplAtETQvk+6gn8C13wE=">Download Information Card</s:a></td> + </tr> + </table> <table cellpadding="0" cellspacing="0" border="0" class="manage-table"> <tr> _______________________________________________ Identity-dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/identity-dev
