svn commit: r958410 [2/2] - in /axis/axis2/java/rampart/trunk/modules: documentation/src/site/resources/samples/policy/ rampart-integration/src/test/resources/rahas/policy/ rampart-integration/src/tes
Modified: axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-binding-2-sig-dk.xml URL: http://svn.apache.org/viewvc/axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-binding-2-sig-dk.xml?rev=958410&r1=958409&r2=958410&view=diff == --- axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-binding-2-sig-dk.xml (original) +++ axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-binding-2-sig-dk.xml Sun Jun 27 19:05:10 2010 @@ -24,7 +24,7 @@ - + Modified: axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-binding-3-dk.xml URL: http://svn.apache.org/viewvc/axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-binding-3-dk.xml?rev=958410&r1=958409&r2=958410&view=diff == --- axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-binding-3-dk.xml (original) +++ axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-binding-3-dk.xml Sun Jun 27 19:05:10 2010 @@ -25,7 +25,7 @@ - + Modified: axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-binding-4-dk-ebs.xml URL: http://svn.apache.org/viewvc/axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-binding-4-dk-ebs.xml?rev=958410&r1=958409&r2=958410&view=diff == --- axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-binding-4-dk-ebs.xml (original) +++ axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-binding-4-dk-ebs.xml Sun Jun 27 19:05:10 2010 @@ -25,7 +25,7 @@ - + Modified: axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-binding-5-ebs.xml URL: http://svn.apache.org/viewvc/axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-binding-5-ebs.xml?rev=958410&r1=958409&r2=958410&view=diff == --- axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-binding-5-ebs.xml (original) +++ axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-binding-5-ebs.xml Sun Jun 27 19:05:10 2010 @@ -23,7 +23,7 @@ - + Modified: axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-symm-binding-1.xml URL: http://svn.apache.org/viewvc/axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-symm-binding-1.xml?rev=958410&r1=958409&r2=958410&view=diff == --- axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-symm-binding-1.xml (original) +++ axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-symm-binding-1.xml Sun Jun 27 19:05:10 2010 @@ -15,7 +15,7 @@ - +
svn commit: r998793 - in /axis/axis2/java/rampart/trunk/modules: rampart-core/src/main/java/org/apache/rampart/ rampart-tests/src/test/java/org/apache/rahas/ rampart-trust/src/main/java/org/apache/rah
Author: nandana Date: Mon Sep 20 06:23:35 2010 New Revision: 998793 URL: http://svn.apache.org/viewvc?rev=998793&view=rev Log: RAMPART-304 Applying the patch. Thanks Amila Modified: axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/RampartMessageData.java axis/axis2/java/rampart/trunk/modules/rampart-tests/src/test/java/org/apache/rahas/SimpleTokenStoreTest.java axis/axis2/java/rampart/trunk/modules/rampart-trust/src/main/java/org/apache/rahas/EncryptedKeyToken.java axis/axis2/java/rampart/trunk/modules/rampart-trust/src/main/java/org/apache/rahas/SimpleTokenStore.java axis/axis2/java/rampart/trunk/modules/rampart-trust/src/main/java/org/apache/rahas/Token.java Modified: axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/RampartMessageData.java URL: http://svn.apache.org/viewvc/axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/RampartMessageData.java?rev=998793&r1=998792&r2=998793&view=diff == --- axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/RampartMessageData.java (original) +++ axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/RampartMessageData.java Mon Sep 20 06:23:35 2010 @@ -56,6 +56,7 @@ import org.apache.ws.security.util.WSSec import org.opensaml.SAMLAssertion; import org.w3c.dom.Document; +import java.util.Date; import java.util.List; import java.util.Vector; import java.util.ArrayList; @@ -621,18 +622,17 @@ public class RampartMessageData { return this.tokenStorage; } -TokenStorage storage = (TokenStorage) this.msgContext.getProperty( +TokenStorage storage = (TokenStorage) this.msgContext.getConfigurationContext().getProperty( TokenStorage.TOKEN_STORAGE_KEY); if (storage != null) { this.tokenStorage = storage; } else { - if (this.policyData.getRampartConfig() != null && this.policyData.getRampartConfig().getTokenStoreClass() != null) { Class stClass = null; String storageClass = this.policyData.getRampartConfig() -.getTokenStoreClass(); +.getTokenStoreClass(); try { stClass = Loader.loadClass(msgContext.getAxisService() .getClassLoader(), storageClass); Modified: axis/axis2/java/rampart/trunk/modules/rampart-tests/src/test/java/org/apache/rahas/SimpleTokenStoreTest.java URL: http://svn.apache.org/viewvc/axis/axis2/java/rampart/trunk/modules/rampart-tests/src/test/java/org/apache/rahas/SimpleTokenStoreTest.java?rev=998793&r1=998792&r2=998793&view=diff == --- axis/axis2/java/rampart/trunk/modules/rampart-tests/src/test/java/org/apache/rahas/SimpleTokenStoreTest.java (original) +++ axis/axis2/java/rampart/trunk/modules/rampart-tests/src/test/java/org/apache/rahas/SimpleTokenStoreTest.java Mon Sep 20 06:23:35 2010 @@ -16,11 +16,19 @@ package org.apache.rahas; -import junit.framework.TestCase; +import org.apache.axiom.om.OMAbstractFactory; import org.apache.axiom.om.OMElement; import org.apache.axiom.om.OMFactory; +import org.apache.axiom.om.OMNamespace; import org.apache.axiom.om.impl.dom.DOOMAbstractFactory; +import junit.framework.TestCase; + +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; import java.util.Date; public class SimpleTokenStoreTest extends TestCase { @@ -30,8 +38,7 @@ public class SimpleTokenStoreTest extend try { store.add(getTestToken("id-1")); } catch (TrustException e) { -fail("Adding a new token to an empty store should not fail, " + - "message : " + e.getMessage()); +fail("Adding a new token to an empty store should not fail, " + "message : " + e.getMessage()); } Token token = null; try { @@ -40,8 +47,7 @@ public class SimpleTokenStoreTest extend fail("Adding an existing token must throw an exception"); } catch (TrustException e) { assertEquals("Incorrect exception message", - TrustException.getMessage("tokenAlreadyExists", - new String[]{token.getId()}), e.getMessage()); + TrustException.getMessage("tokenAlreadyExists", new String[]{token.getId()}), e.getMessage()); } } @@ -76,9 +82,8 @@ public class SimpleTokenStore
svn commit: r1051843 - /axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/Rampart.java
Author: nandana Date: Wed Dec 22 11:17:52 2010 New Revision: 1051843 URL: http://svn.apache.org/viewvc?rev=1051843&view=rev Log: RAMPART-174 Rampart should only return true for WS-Security Policy and Rampart config assertions Modified: axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/Rampart.java Modified: axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/Rampart.java URL: http://svn.apache.org/viewvc/axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/Rampart.java?rev=1051843&r1=1051842&r2=1051843&view=diff == --- axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/Rampart.java (original) +++ axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/Rampart.java Wed Dec 22 11:17:52 2010 @@ -23,6 +23,9 @@ import org.apache.axis2.description.Axis import org.apache.axis2.modules.Module; import org.apache.neethi.Assertion; import org.apache.neethi.Policy; +import org.apache.rampart.policy.model.RampartConfig; +import org.apache.ws.secpolicy.SP11Constants; +import org.apache.ws.secpolicy.SP12Constants; public class Rampart implements Module /* , ModulePolicyExtension */ { @@ -48,8 +51,18 @@ public class Rampart implements Module / } public boolean canSupportAssertion(Assertion assertion) { -//TODO doesn't we need to check whether policy is security policy or -// RampartConfig assertion -return true; +if(assertion == null) { +return false; +} + +String ns = assertion.getName().getNamespaceURI(); + +// Rampart module can handle WS-SecurityPolicy 1.1 & 1.2 and RampartConfig assertions +if (SP11Constants.SP_NS.equals(ns) || SP12Constants.SP_NS.equals(ns) || RampartConfig.NS.equals(ns)) { +return true; +} else { +return false; +} + } }
svn commit: r1052082 - /axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/util/RampartUtil.java
Author: nandana Date: Wed Dec 22 22:17:39 2010 New Revision: 1052082 URL: http://svn.apache.org/viewvc?rev=1052082&view=rev Log: RAMPART-136 now the XPath expression is evaluated against the SOAP header Modified: axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/util/RampartUtil.java Modified: axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/util/RampartUtil.java URL: http://svn.apache.org/viewvc/axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/util/RampartUtil.java?rev=1052082&r1=1052081&r2=1052082&view=diff == --- axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/util/RampartUtil.java (original) +++ axis/axis2/java/rampart/trunk/modules/rampart-core/src/main/java/org/apache/rampart/util/RampartUtil.java Wed Dec 22 22:17:39 2010 @@ -1164,9 +1164,12 @@ public class RampartUtil { * @return */ public static boolean checkRequiredElements(SOAPEnvelope envelope, HashMap decNamespaces, String expression ) { + +// The XPath expression must be evaluated against the SOAP header +// http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702/ws-securitypolicy-1.2-spec-os.html#_Toc161826519 +SOAPHeader header = envelope.getHeader(); - -Set namespaces = findAllPrefixNamespaces(envelope, decNamespaces); +Set namespaces = findAllPrefixNamespaces(header, decNamespaces); try { XPath xp = new AXIOMXPath(expression); @@ -1178,7 +1181,7 @@ public class RampartUtil { xp.addNamespace(tmpNs.getPrefix(), tmpNs.getNamespaceURI()); } -List selectedNodes = xp.selectNodes(envelope); +List selectedNodes = xp.selectNodes(header); if (selectedNodes.size() == 0 ) { return false;
svn commit: r1052085 - in /axis/axis2/java/rampart/trunk/modules/rampart-tests: src/test/java/org/apache/rampart/ test-resources/policy/
Author: nandana Date: Wed Dec 22 22:21:59 2010 New Revision: 1052085 URL: http://svn.apache.org/viewvc?rev=1052085&view=rev Log: RAMPART-136 test case to verify the fix Added: axis/axis2/java/rampart/trunk/modules/rampart-tests/src/test/java/org/apache/rampart/PolicyAssertionsTest.java axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-required-elements-2.xml axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-required-elements.xml Added: axis/axis2/java/rampart/trunk/modules/rampart-tests/src/test/java/org/apache/rampart/PolicyAssertionsTest.java URL: http://svn.apache.org/viewvc/axis/axis2/java/rampart/trunk/modules/rampart-tests/src/test/java/org/apache/rampart/PolicyAssertionsTest.java?rev=1052085&view=auto == --- axis/axis2/java/rampart/trunk/modules/rampart-tests/src/test/java/org/apache/rampart/PolicyAssertionsTest.java (added) +++ axis/axis2/java/rampart/trunk/modules/rampart-tests/src/test/java/org/apache/rampart/PolicyAssertionsTest.java Wed Dec 22 22:21:59 2010 @@ -0,0 +1,83 @@ +/* + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.rampart; + +import org.apache.axiom.soap.SOAPEnvelope; +import org.apache.axis2.builder.SOAPBuilder; +import org.apache.axis2.context.MessageContext; +import org.apache.neethi.Policy; + +import java.io.ByteArrayInputStream; + +public class PolicyAssertionsTest extends MessageBuilderTestBase { + +public PolicyAssertionsTest(String name) { +super(name); +} + +public void testRequiredElementsValid() throws Exception { + +MessageContext ctx = getMsgCtx(); + +String policyXml = "test-resources/policy/rampart-asymm-required-elements.xml"; +Policy policy = loadPolicy(policyXml); + +ctx.setProperty(RampartMessageData.KEY_RAMPART_POLICY, policy); + +MessageBuilder builder = new MessageBuilder(); +builder.build(ctx); + +// Building the SOAP envelope from the OMElement +SOAPBuilder soapBuilder = new SOAPBuilder(); +SOAPEnvelope env = ctx.getEnvelope(); +ByteArrayInputStream inStream = new ByteArrayInputStream(env.toString().getBytes()); +env = (SOAPEnvelope) soapBuilder.processDocument(inStream, "text/xml", ctx); +ctx.setEnvelope(env); + +RampartEngine engine = new RampartEngine(); +engine.process(ctx); + +} + +public void testRequiredElementsInvalid() throws Exception { + +MessageContext ctx = getMsgCtx(); + +String policyXml = "test-resources/policy/rampart-asymm-required-elements-2.xml"; +Policy policy = loadPolicy(policyXml); + +ctx.setProperty(RampartMessageData.KEY_RAMPART_POLICY, policy); + +MessageBuilder builder = new MessageBuilder(); +builder.build(ctx); + +// Building the SOAP envelope from the OMElement +SOAPBuilder soapBuilder = new SOAPBuilder(); +SOAPEnvelope env = ctx.getEnvelope(); +ByteArrayInputStream inStream = new ByteArrayInputStream(env.toString().getBytes()); +env = (SOAPEnvelope) soapBuilder.processDocument(inStream, "text/xml", ctx); +ctx.setEnvelope(env); + +RampartEngine engine = new RampartEngine(); + +try { +engine.process(ctx); +fail(" This should have thrown RampartException: " + +"Required Elements not found in the incoming message : wsrm:Sequence"); +} catch (RampartException expected) { +// Ignore intentionally as the test is supposed to throw an exception +} + +} +} Added: axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-required-elements-2.xml URL: http://svn.apache.org/viewvc/axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-required-elements-2.xml?rev=1052085&view=auto == --- axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-required-elements-2.xml (added) +++ axis/axis2/java/rampart/trunk/modules/rampart-tests/test-resources/policy/rampart-asymm-required-elements-2.xml Wed Dec 22 22:21:59 2010 @@ -0,0
svn commit: r1052087 - /axis/axis2/java/rampart/trunk/modules/rampart-tests/src/test/java/org/apache/rampart/NonceCacheTest.java
Author: nandana Date: Wed Dec 22 22:29:07 2010 New Revision: 1052087 URL: http://svn.apache.org/viewvc?rev=1052087&view=rev Log: adding the license header Modified: axis/axis2/java/rampart/trunk/modules/rampart-tests/src/test/java/org/apache/rampart/NonceCacheTest.java Modified: axis/axis2/java/rampart/trunk/modules/rampart-tests/src/test/java/org/apache/rampart/NonceCacheTest.java URL: http://svn.apache.org/viewvc/axis/axis2/java/rampart/trunk/modules/rampart-tests/src/test/java/org/apache/rampart/NonceCacheTest.java?rev=1052087&r1=1052086&r2=1052087&view=diff == --- axis/axis2/java/rampart/trunk/modules/rampart-tests/src/test/java/org/apache/rampart/NonceCacheTest.java (original) +++ axis/axis2/java/rampart/trunk/modules/rampart-tests/src/test/java/org/apache/rampart/NonceCacheTest.java Wed Dec 22 22:29:07 2010 @@ -1,3 +1,17 @@ +/* + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package org.apache.rampart; import junit.framework.TestCase;
svn commit: r1052119 - in /axis/axis2/java/rampart/trunk/modules/rampart-integration: pom.xml src/test/java/org/apache/rampart/RampartTest.java src/test/resources/rampart/policy/30.xml src/test/resour
Author: nandana Date: Thu Dec 23 00:37:47 2010 New Revision: 1052119 URL: http://svn.apache.org/viewvc?rev=1052119&view=rev Log: RAMPART-218 a test case to verify the fix Added: axis/axis2/java/rampart/trunk/modules/rampart-integration/src/test/resources/rampart/policy/30.xml axis/axis2/java/rampart/trunk/modules/rampart-integration/src/test/resources/rampart/services-30.xml Modified: axis/axis2/java/rampart/trunk/modules/rampart-integration/pom.xml axis/axis2/java/rampart/trunk/modules/rampart-integration/src/test/java/org/apache/rampart/RampartTest.java Modified: axis/axis2/java/rampart/trunk/modules/rampart-integration/pom.xml URL: http://svn.apache.org/viewvc/axis/axis2/java/rampart/trunk/modules/rampart-integration/pom.xml?rev=1052119&r1=1052118&r2=1052119&view=diff == --- axis/axis2/java/rampart/trunk/modules/rampart-integration/pom.xml (original) +++ axis/axis2/java/rampart/trunk/modules/rampart-integration/pom.xml Thu Dec 23 00:37:47 2010 @@ -332,6 +332,12 @@ tofile="target/temp-ramp/META-INF/services.xml"/> + + + Modified: axis/axis2/java/rampart/trunk/modules/rampart-integration/src/test/java/org/apache/rampart/RampartTest.java URL: http://svn.apache.org/viewvc/axis/axis2/java/rampart/trunk/modules/rampart-integration/src/test/java/org/apache/rampart/RampartTest.java?rev=1052119&r1=1052118&r2=1052119&view=diff == --- axis/axis2/java/rampart/trunk/modules/rampart-integration/src/test/java/org/apache/rampart/RampartTest.java (original) +++ axis/axis2/java/rampart/trunk/modules/rampart-integration/src/test/java/org/apache/rampart/RampartTest.java Thu Dec 23 00:37:47 2010 @@ -77,7 +77,7 @@ public class RampartTest extends TestCas "Unlimited Strength Jurisdiction Policy !!!"); } -for (int i = 1; i <= 29; i++) { //<-The number of tests we have +for (int i = 1; i <= 30; i++) { //<-The number of tests we have if(!basic256Supported && (i == 3 || i == 4 || i == 5)) { //Skip the Basic256 tests continue; Added: axis/axis2/java/rampart/trunk/modules/rampart-integration/src/test/resources/rampart/policy/30.xml URL: http://svn.apache.org/viewvc/axis/axis2/java/rampart/trunk/modules/rampart-integration/src/test/resources/rampart/policy/30.xml?rev=1052119&view=auto == --- axis/axis2/java/rampart/trunk/modules/rampart-integration/src/test/resources/rampart/policy/30.xml (added) +++ axis/axis2/java/rampart/trunk/modules/rampart-integration/src/test/resources/rampart/policy/30.xml Thu Dec 23 00:37:47 2010 @@ -0,0 +1,77 @@ +http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"; +xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"; +xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"; + xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702";> + + +http://schemas.xmlsoap.org/ws/2005/07/securitypolicy";> + + + +http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/AlwaysToRecipient";> + + + + + + + + +http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Never";> + + + + + + + + + + + + + + + + + + + + + + + + + +http://example1.org/example1";>//example1:Text + +http://ws.apache.org/rampart/policy";> +alice +bob + org.apache.rampart.PWCallback + +