You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by ru...@apache.org on 2006/01/26 12:00:16 UTC

svn commit: r372503 - in /webservices/axis2/trunk/java/modules/security/src/org/apache: axis2/security/handler/config/ ws/security/policy/ ws/security/policy/model/

Author: ruchithf
Date: Thu Jan 26 03:00:05 2006
New Revision: 372503

URL: http://svn.apache.org/viewcvs?rev=372503&view=rev
Log:
- setting the value of the parameter generated parameter object to the OMelement at the InflowConfig and OutflowConfig
- Modified WSS4JConfigBuider to configure signatureKeyIdentifier according to policy


Modified:
    webservices/axis2/trunk/java/modules/security/src/org/apache/axis2/security/handler/config/InflowConfiguration.java
    webservices/axis2/trunk/java/modules/security/src/org/apache/axis2/security/handler/config/OutflowConfiguration.java
    webservices/axis2/trunk/java/modules/security/src/org/apache/ws/security/policy/WSS4JConfigBuilder.java
    webservices/axis2/trunk/java/modules/security/src/org/apache/ws/security/policy/model/Token.java

Modified: webservices/axis2/trunk/java/modules/security/src/org/apache/axis2/security/handler/config/InflowConfiguration.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/security/src/org/apache/axis2/security/handler/config/InflowConfiguration.java?rev=372503&r1=372502&r2=372503&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/security/src/org/apache/axis2/security/handler/config/InflowConfiguration.java (original)
+++ webservices/axis2/trunk/java/modules/security/src/org/apache/axis2/security/handler/config/InflowConfiguration.java Thu Jan 26 03:00:05 2006
@@ -70,6 +70,7 @@
 		
 		ParameterImpl param = new ParameterImpl();
 		param.setParameterElement(paramElement);
+        param.setValue(paramElement);
         param.setName(WSSHandlerConstants.INFLOW_SECURITY);
 		
 		return param;

Modified: webservices/axis2/trunk/java/modules/security/src/org/apache/axis2/security/handler/config/OutflowConfiguration.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/security/src/org/apache/axis2/security/handler/config/OutflowConfiguration.java?rev=372503&r1=372502&r2=372503&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/security/src/org/apache/axis2/security/handler/config/OutflowConfiguration.java (original)
+++ webservices/axis2/trunk/java/modules/security/src/org/apache/axis2/security/handler/config/OutflowConfiguration.java Thu Jan 26 03:00:05 2006
@@ -102,6 +102,7 @@
 		
 		ParameterImpl param = new ParameterImpl();
 		param.setParameterElement(paramElement);
+        param.setValue(paramElement);
         param.setName(WSSHandlerConstants.OUTFLOW_SECURITY);
 		return param;
 	}

Modified: webservices/axis2/trunk/java/modules/security/src/org/apache/ws/security/policy/WSS4JConfigBuilder.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/security/src/org/apache/ws/security/policy/WSS4JConfigBuilder.java?rev=372503&r1=372502&r2=372503&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/security/src/org/apache/ws/security/policy/WSS4JConfigBuilder.java (original)
+++ webservices/axis2/trunk/java/modules/security/src/org/apache/ws/security/policy/WSS4JConfigBuilder.java Thu Jan 26 03:00:05 2006
@@ -18,6 +18,7 @@
 import java.util.ArrayList;
 import java.util.Iterator;
 
+import org.apache.axis2.security.handler.WSSHandlerConstants;
 import org.apache.ws.security.WSConstants;
 import org.apache.ws.security.policy.model.AsymmetricBinding;
 import org.apache.ws.security.policy.model.Binding;
@@ -25,9 +26,11 @@
 import org.apache.ws.security.policy.model.PolicyEngineData;
 import org.apache.ws.security.policy.model.SignedEncryptedParts;
 import org.apache.ws.security.policy.model.SymmetricAsymmetricBindingBase;
+import org.apache.ws.security.policy.model.Token;
 import org.apache.ws.security.policy.model.TransportBinding;
 import org.apache.ws.security.policy.model.Wss10;
 import org.apache.ws.security.policy.model.Wss11;
+import org.apache.ws.security.policy.model.X509Token;
 
 public class WSS4JConfigBuilder {
     
@@ -117,27 +120,41 @@
             config.getInflowConfiguration().setActionItems(actionItems.trim());
             config.getOutflowConfiguration().setActionItems(actionItems.trim());
         }
-        
-            
+
+
         if(config.binding instanceof AsymmetricBinding) {
-            //TODO Handle asymmetric binding
+            AsymmetricBinding asymmetricBinding = (AsymmetricBinding) config.binding;
+            Token initiatorToken = asymmetricBinding.getInitiatorToken()
+                    .getInitiatorToken();
+            String initiatorInclusion = initiatorToken.getInclusion();
+            if (initiatorInclusion
+                    .equals(Constants.INCLUDE_ALWAYS_TO_RECIPIENT)
+                    || initiatorInclusion.equals(Constants.INCLUDE_ALWAYS)) {
+                config.getOutflowConfiguration().setSignatureKeyIdentifier(
+                        WSSHandlerConstants.BST_DIRECT_REFERENCE);
+            } else {
+                if(initiatorToken instanceof X509Token) {
+                    config.getOutflowConfiguration().setSignatureKeyIdentifier(
+                            WSSHandlerConstants.X509_KEY_IDENTIFIER);
+                }
+            }
         } else {
             //TODO Handle symmetric binding
         }
     }
-    
-    
+
+
     private static void processWSS10(Wss10 wss10, WSS4JConfig config) {
         //There's nothing to populate in WSS4J Config right now
     }
-    
+
     private static void processWSS11(Wss11 wss11, WSS4JConfig config) {
        if(wss11.isRequireSignatureConfirmation()) {
            config.getInflowConfiguration().setEnableSignatureConfirmation(true);
            config.getOutflowConfiguration().setEnableSignatureConfirmation(true);
        }
     }
-    
+
     private static void processSignedEncryptedParts(SignedEncryptedParts parts,
             WSS4JConfig config) {
         if(parts.isSignedParts()) {
@@ -173,13 +190,13 @@
             }
         }
     }
-    
+
     private static String getSignedPartSnippet(String namespace, String name,
             boolean first) {
         return first ? "{Element}{" + namespace + "}" + name : ";{Element}{"
                 + namespace + "}" + name;
     }
-    
+
     private static String getEncryptedPartSnippet(boolean content,
             String namespace, String name, boolean first) {
         String ret = "";

Modified: webservices/axis2/trunk/java/modules/security/src/org/apache/ws/security/policy/model/Token.java
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/security/src/org/apache/ws/security/policy/model/Token.java?rev=372503&r1=372502&r2=372503&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/security/src/org/apache/ws/security/policy/model/Token.java (original)
+++ webservices/axis2/trunk/java/modules/security/src/org/apache/ws/security/policy/model/Token.java Thu Jan 26 03:00:05 2006
@@ -19,7 +19,7 @@
 import org.apache.ws.security.policy.Constants;
 import org.apache.ws.security.policy.WSSPolicyException;
 
-class Token extends PolicyEngineData {
+public class Token extends PolicyEngineData {
 
     /**
      * Inclusiong property of a TokenAssertion