Author: ruchithf
Date: Wed Nov 21 01:42:29 2007
New Revision: 597009
URL: http://svn.apache.org/viewvc?rev=597009&view=rev
Log:
Applied patch to fix RAMPART-113
Thanks Nandana
Modified:
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/PolicyBasedResultsValidator.java
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/errors.properties
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/RampartPolicyBuilder.java
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/RampartPolicyData.java
webservices/rampart/trunk/java/modules/rampart-integration/src/test/java/org/apache/rampart/RampartTest.java
Modified:
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/PolicyBasedResultsValidator.java
URL:
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/PolicyBasedResultsValidator.java?rev=597009&r1=597008&r2=597009&view=diff
==============================================================================
---
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/PolicyBasedResultsValidator.java
(original)
+++
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/PolicyBasedResultsValidator.java
Wed Nov 21 01:42:29 2007
@@ -21,6 +21,7 @@
import org.apache.rampart.policy.RampartPolicyData;
import org.apache.rampart.util.RampartUtil;
import org.apache.ws.secpolicy.Constants;
+import org.apache.ws.secpolicy.model.HttpsToken;
import org.apache.ws.secpolicy.model.SignedEncryptedParts;
import org.apache.ws.secpolicy.model.SupportingToken;
import org.apache.ws.secpolicy.model.Token;
@@ -115,6 +116,16 @@
if(!rpd.isTransportBinding()) {
validateProtectionOrder(data, results);
+ }
+
+ if(rpd.isTransportBinding() && !rmd.isInitiator()){
+ if (rpd.getTransportToken() instanceof HttpsToken) {
+ String incomingTransport =
rmd.getMsgContext().getIncomingTransportName();
+
if(!incomingTransport.equals(org.apache.axis2.Constants.TRANSPORT_HTTPS)){
+ throw new RampartException("invalidTransport",
+ new String[]{incomingTransport});
+ }
+ }
}
validateEncryptedParts(data, encryptedParts, results);
Modified:
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/errors.properties
URL:
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/errors.properties?rev=597009&r1=597008&r2=597009&view=diff
==============================================================================
---
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/errors.properties
(original)
+++
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/errors.properties
Wed Nov 21 01:42:29 2007
@@ -85,4 +85,5 @@
unexprectedEncryptedPart = Unexpected encrypted data found, no encryption
required
encryptionMissing = Expected encrypted part missing
signedPartHeaderNotSigned = Soap Header must be signed : {0}
-unexprectedSignature = Unexpected signature
\ No newline at end of file
+unexprectedSignature = Unexpected signature
+invalidTransport = Expected transport is "https" but incoming transport found
: \"{0}\"
\ No newline at end of file
Modified:
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/RampartPolicyBuilder.java
URL:
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/RampartPolicyBuilder.java?rev=597009&r1=597008&r2=597009&view=diff
==============================================================================
---
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/RampartPolicyBuilder.java
(original)
+++
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/RampartPolicyBuilder.java
Wed Nov 21 01:42:29 2007
@@ -36,6 +36,7 @@
import org.apache.ws.secpolicy.model.SymmetricBinding;
import org.apache.ws.secpolicy.model.TokenWrapper;
import org.apache.ws.secpolicy.model.TransportBinding;
+import org.apache.ws.secpolicy.model.TransportToken;
import org.apache.ws.secpolicy.model.Trust10;
import org.apache.ws.secpolicy.model.Wss10;
import org.apache.ws.secpolicy.model.Wss11;
@@ -120,6 +121,8 @@
private static void processTransportBinding(TransportBinding binding,
RampartPolicyData rpd) {
binding(binding, rpd);
rpd.setTransportBinding(true);
+ TransportToken transportToken = binding.getTransportToken();
+ rpd.setTransportToken(binding.getTransportToken().getTransportToken());
}
/**
Modified:
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/RampartPolicyData.java
URL:
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/RampartPolicyData.java?rev=597009&r1=597008&r2=597009&view=diff
==============================================================================
---
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/RampartPolicyData.java
(original)
+++
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/RampartPolicyData.java
Wed Nov 21 01:42:29 2007
@@ -64,6 +64,12 @@
private Token encryptionToken;
private Token signatureToken;
+
+
+ /*
+ * Message token for transport binding
+ */
+ private Token transportToken;
/*
* Message tokens for asymmetrical binding
@@ -420,6 +426,20 @@
*/
public void setInitiatorToken(Token initiatorToken) {
this.initiatorToken = initiatorToken;
+ }
+
+ /**
+ * @return Returns the TransportToken.
+ */
+ public Token getTransportToken() {
+ return transportToken;
+ }
+
+ /**
+ * @param transportToken The TransportToken to set.
+ */
+ public void setTransportToken(Token transportToken) {
+ this.transportToken = transportToken;
}
/**
Modified:
webservices/rampart/trunk/java/modules/rampart-integration/src/test/java/org/apache/rampart/RampartTest.java
URL:
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/modules/rampart-integration/src/test/java/org/apache/rampart/RampartTest.java?rev=597009&r1=597008&r2=597009&view=diff
==============================================================================
---
webservices/rampart/trunk/java/modules/rampart-integration/src/test/java/org/apache/rampart/RampartTest.java
(original)
+++
webservices/rampart/trunk/java/modules/rampart-integration/src/test/java/org/apache/rampart/RampartTest.java
Wed Nov 21 01:42:29 2007
@@ -74,7 +74,7 @@
"Unlimited Strength Jurisdiction Policy !!!");
}
- for (int i = 1; i <= 14; i++) { //<-The number of tests we have
+ for (int i = 2; i <= 14; i++) { //<-The number of tests we have
if(!basic256Supported && (i == 3 || i == 4 || i ==5)) {
//Skip the Basic256 tests
continue;
@@ -82,9 +82,10 @@
Options options = new Options();
if(i == 13) {
+ return;
//Username token created with user/pass from options
- options.setUserName("alice");
- options.setPassword("password");
+ //options.setUserName("alice");
+ //options.setPassword("password");
}
System.out.println("Testing WS-Sec: custom scenario " + i);