Author: dkulp
Date: Tue Feb 24 21:27:41 2009
New Revision: 747554

URL: http://svn.apache.org/viewvc?rev=747554&view=rev
Log:
[WSS-162] The URI in a Reference could be an actual Key identifier not starting 
with #

Modified:
    
webservices/wss4j/trunk/src/org/apache/ws/security/WSSecurityEngineResult.java
    
webservices/wss4j/trunk/src/org/apache/ws/security/message/token/SecurityTokenReference.java
    
webservices/wss4j/trunk/src/org/apache/ws/security/processor/DerivedKeyTokenProcessor.java
    
webservices/wss4j/trunk/src/org/apache/ws/security/processor/ReferenceListProcessor.java
    
webservices/wss4j/trunk/src/org/apache/ws/security/processor/SignatureProcessor.java

Modified: 
webservices/wss4j/trunk/src/org/apache/ws/security/WSSecurityEngineResult.java
URL: 
http://svn.apache.org/viewvc/webservices/wss4j/trunk/src/org/apache/ws/security/WSSecurityEngineResult.java?rev=747554&r1=747553&r2=747554&view=diff
==============================================================================
--- 
webservices/wss4j/trunk/src/org/apache/ws/security/WSSecurityEngineResult.java 
(original)
+++ 
webservices/wss4j/trunk/src/org/apache/ws/security/WSSecurityEngineResult.java 
Tue Feb 24 21:27:41 2009
@@ -22,7 +22,6 @@
 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.opensaml.SAMLAssertion;
 
 import java.security.Principal;
 import java.security.cert.X509Certificate;
@@ -171,7 +170,7 @@
 
     public WSSecurityEngineResult(
         int act, 
-        SAMLAssertion ass
+        Object ass
     ) {
         put(TAG_ACTION, new Integer(act));
         put(TAG_SAML_ASSERTION, ass);
@@ -278,16 +277,6 @@
     }
 
     /**
-     * @return Returns the assertion.
-     *
-     * @deprecated      use (SAMLAssertion)
-     *                  #get(#TAG_SAML_ASSERTION) instead
-     */
-    public SAMLAssertion getAssertion() {
-        return (SAMLAssertion) get(TAG_SAML_ASSERTION);
-    }
-
-    /**
      * @return the timestamp found
      *
      * @deprecated      use (Timestamp)

Modified: 
webservices/wss4j/trunk/src/org/apache/ws/security/message/token/SecurityTokenReference.java
URL: 
http://svn.apache.org/viewvc/webservices/wss4j/trunk/src/org/apache/ws/security/message/token/SecurityTokenReference.java?rev=747554&r1=747553&r2=747554&view=diff
==============================================================================
--- 
webservices/wss4j/trunk/src/org/apache/ws/security/message/token/SecurityTokenReference.java
 (original)
+++ 
webservices/wss4j/trunk/src/org/apache/ws/security/message/token/SecurityTokenReference.java
 Tue Feb 24 21:27:41 2009
@@ -173,7 +173,10 @@
             if (doDebug) {
                 log.debug("SAML token ID: " + saID);
             }
-            String id = uri.substring(1);
+            String id = uri;
+            if (id.charAt(0) == '#') {
+                id = id.substring(1);
+            }
             if (saID == null || !saID.equals(id)) {
                 
                 if(cb != null) {

Modified: 
webservices/wss4j/trunk/src/org/apache/ws/security/processor/DerivedKeyTokenProcessor.java
URL: 
http://svn.apache.org/viewvc/webservices/wss4j/trunk/src/org/apache/ws/security/processor/DerivedKeyTokenProcessor.java?rev=747554&r1=747553&r2=747554&view=diff
==============================================================================
--- 
webservices/wss4j/trunk/src/org/apache/ws/security/processor/DerivedKeyTokenProcessor.java
 (original)
+++ 
webservices/wss4j/trunk/src/org/apache/ws/security/processor/DerivedKeyTokenProcessor.java
 Tue Feb 24 21:27:41 2009
@@ -127,7 +127,10 @@
                 Reference ref = str.getReference();
                 
                 uri = ref.getURI();
-                processor = wsDocInfo.getProcessor(uri.substring(1));
+                if (uri.charAt(0) == '#') {
+                    uri = uri.substring(1);
+                }
+                processor = wsDocInfo.getProcessor(uri);
             } else {
                 //Contains key identifier
                 keyIdentifierValue = str.getKeyIdentifierValue();
@@ -137,7 +140,7 @@
             
             if(processor == null && uri != null) {
                 //Now use the callback and get it
-                this.secret = this.getSecret(cb, uri.substring(1));
+                this.secret = this.getSecret(cb, uri);
             } else if (processor == null && keyIdentifierValue != null
                     && keyIdentifierValueType != null) {                
                 this.secret = this.getSecret(cb, keyIdentifierValue, 
keyIdentifierValueType); 

Modified: 
webservices/wss4j/trunk/src/org/apache/ws/security/processor/ReferenceListProcessor.java
URL: 
http://svn.apache.org/viewvc/webservices/wss4j/trunk/src/org/apache/ws/security/processor/ReferenceListProcessor.java?rev=747554&r1=747553&r2=747554&view=diff
==============================================================================
--- 
webservices/wss4j/trunk/src/org/apache/ws/security/processor/ReferenceListProcessor.java
 (original)
+++ 
webservices/wss4j/trunk/src/org/apache/ws/security/processor/ReferenceListProcessor.java
 Tue Feb 24 21:27:41 2009
@@ -268,7 +268,10 @@
         if (secRef.containsReference()) {
             Reference reference = secRef.getReference();
             String uri = reference.getURI();
-            String id = uri.substring(1);
+            String id = uri;
+            if (id.charAt(0) == '#') {
+                id = id.substring(1);
+            }
             Processor p = wsDocInfo.getProcessor(id);
             if (p == null
                     || (!(p instanceof EncryptedKeyProcessor)

Modified: 
webservices/wss4j/trunk/src/org/apache/ws/security/processor/SignatureProcessor.java
URL: 
http://svn.apache.org/viewvc/webservices/wss4j/trunk/src/org/apache/ws/security/processor/SignatureProcessor.java?rev=747554&r1=747553&r2=747554&view=diff
==============================================================================
--- 
webservices/wss4j/trunk/src/org/apache/ws/security/processor/SignatureProcessor.java
 (original)
+++ 
webservices/wss4j/trunk/src/org/apache/ws/security/processor/SignatureProcessor.java
 Tue Feb 24 21:27:41 2009
@@ -260,7 +260,10 @@
                         //Try custom token through callback handler
                         //try to find a custom token
                         String id = secRef
-                                .getReference().getURI().substring(1);
+                                .getReference().getURI();
+                        if (id.charAt(0) == '#') {
+                            id = id.substring(1);
+                        }
                         WSPasswordCallback pwcb = new WSPasswordCallback(id,
                                 WSPasswordCallback.CUSTOM_TOKEN);
                         try {
@@ -414,7 +417,10 @@
                             .getSecurityTokenReference();
                     if (securityTokenReference.containsReference()) {
                         basetokenId = securityTokenReference.getReference()
-                                .getURI().substring(1);
+                                .getURI();
+                        if (basetokenId.charAt(0) == '#') {
+                            basetokenId = basetokenId.substring(1);
+                        }
                     } else {
                         // KeyIdentifier
                         basetokenId = securityTokenReference



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to