axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ruchi...@apache.org
Subject svn commit: r468297 - in /webservices/axis2/branches/java/1_1/modules/samples/security/policy: sample01/ sample02/ sample02/src/ sample02/src/org/ sample02/src/org/apache/ sample02/src/org/apache/rampart/ sample02/src/org/apache/rampart/samples/ sample...
Date Fri, 27 Oct 2006 06:47:58 GMT
Author: ruchithf
Date: Thu Oct 26 23:47:57 2006
New Revision: 468297

URL: http://svn.apache.org/viewvc?view=rev&rev=468297
Log:
Adding secpolicy sample2: SignOnly

Added:
    webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/
    webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/README.txt
    webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/policy.xml
    webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/services.xml
    webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/
    webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/
    webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/
    webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/rampart/
    webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/rampart/samples/
    webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/rampart/samples/policy/
    webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/rampart/samples/policy/sample02/
    webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/rampart/samples/policy/sample02/Client.java
    webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/rampart/samples/policy/sample02/PWCBHandler.java
    webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/rampart/samples/policy/sample02/SimpleService.java
Modified:
    webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample01/README.txt
    webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample01/services.xml

Modified: webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample01/README.txt
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample01/README.txt?view=diff&rev=468297&r1=468296&r2=468297
==============================================================================
--- webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample01/README.txt
(original)
+++ webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample01/README.txt
Thu Oct 26 23:47:57 2006
@@ -1,6 +1 @@
-Rampart Engaged and no configuration
-
-This sample shows that Apache Rampart does not work on the messages when simply
-engagd without any configuration
-
-Note: <module ref="rampart"/> in both client.axis2.xml and services.xml
\ No newline at end of file
+TODO
\ No newline at end of file

Modified: webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample01/services.xml
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample01/services.xml?view=diff&rev=468297&r1=468296&r2=468297
==============================================================================
--- webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample01/services.xml
(original)
+++ webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample01/services.xml
Thu Oct 26 23:47:57 2006
@@ -1,4 +1,4 @@
-<!-- services.xml of sample-1 : No Security-->
+<!-- services.xml of sample-1 : UsernameToken-->
 <service>
 	<operation name="echo">
 		<messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>

Added: webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/README.txt
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/README.txt?view=auto&rev=468297
==============================================================================
--- webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/README.txt
(added)
+++ webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/README.txt
Thu Oct 26 23:47:57 2006
@@ -0,0 +1 @@
+TODO
\ No newline at end of file

Added: webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/policy.xml
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/policy.xml?view=auto&rev=468297
==============================================================================
--- webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/policy.xml
(added)
+++ webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/policy.xml
Thu Oct 26 23:47:57 2006
@@ -0,0 +1,64 @@
+<wsp:Policy wsu:Id="SigOnly" xmlns:wsu="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">
+	<wsp:ExactlyOne>
+		<wsp:All>
+			<sp:AsymmetricBinding xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
+				<wsp:Policy>
+					<sp:InitiatorToken>
+						<wsp:Policy>
+							<sp:X509Token sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/AlwaysToRecipient">
+								<wsp:Policy>
+									<sp:WssX509V3Token10/>
+								</wsp:Policy>
+							</sp:X509Token>
+						</wsp:Policy>
+					</sp:InitiatorToken>
+					<sp:RecipientToken>
+						<wsp:Policy>
+							<sp:X509Token sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Never">
+								<wsp:Policy>
+									<sp:WssX509V3Token10/>
+								</wsp:Policy>
+							</sp:X509Token>
+						</wsp:Policy>
+					</sp:RecipientToken>
+					<sp:AlgorithmSuite>
+						<wsp:Policy>
+							<sp:Basic256/>
+						</wsp:Policy>
+					</sp:AlgorithmSuite>
+					<sp:Layout>
+						<wsp:Policy>
+							<sp:Strict/>
+						</wsp:Policy>
+					</sp:Layout>
+					<sp:IncludeTimestamp/>
+					<sp:OnlySignEntireHeadersAndBody/>
+				</wsp:Policy>
+			</sp:AsymmetricBinding>
+			<sp:Wss10 xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
+				<wsp:Policy>
+					<sp:MustSupportRefKeyIdentifier/>
+					<sp:MustSupportRefIssuerSerial/>
+				</wsp:Policy>
+			</sp:Wss10>
+			<sp:SignedParts xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
+				<sp:Body/>
+			</sp:SignedParts>
+
+			<ramp:RampartConfig xmlns:ramp="http://ws.apache.org/rampart/policy"> 
+				<ramp:user>client</ramp:user>
+				<ramp:encryptionUser>service</ramp:encryptionUser>
+				<ramp:passwordCallbackClass>org.apache.rampart.samples.policy.sample02.PWCBHandler</ramp:passwordCallbackClass>
+				
+				<ramp:signatureCrypto>
+					<ramp:crypto provider="org.apache.ws.security.components.crypto.Merlin">
+						<ramp:property name="org.apache.ws.security.crypto.merlin.keystore.type">JKS</ramp:property>
+						<ramp:property name="org.apache.ws.security.crypto.merlin.file">client.jks</ramp:property>
+						<ramp:property name="org.apache.ws.security.crypto.merlin.keystore.password">apache</ramp:property>
+					</ramp:crypto>
+				</ramp:signatureCrypto>
+			</ramp:RampartConfig>
+
+		</wsp:All>
+	</wsp:ExactlyOne>
+</wsp:Policy>
\ No newline at end of file

Added: webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/services.xml
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/services.xml?view=auto&rev=468297
==============================================================================
--- webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/services.xml
(added)
+++ webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/services.xml
Thu Oct 26 23:47:57 2006
@@ -0,0 +1,75 @@
+<!-- services.xml of sample-2 : Sign only-->
+<service>
+	<operation name="echo">
+		<messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
+	</operation>    
+	<parameter name="ServiceClass" locked="false">org.apache.rampart.samples.policy.sample02.SimpleService</parameter>
+	
+	<module ref="rampart" />
+	<module ref="addressing" />
+
+	<wsp:Policy wsu:Id="SigOnly" xmlns:wsu="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">
+		<wsp:ExactlyOne>
+			<wsp:All>
+				<sp:AsymmetricBinding xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
+					<wsp:Policy>
+						<sp:InitiatorToken>
+							<wsp:Policy>
+								<sp:X509Token sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/AlwaysToRecipient">
+									<wsp:Policy>
+										<sp:WssX509V3Token10/>
+									</wsp:Policy>
+								</sp:X509Token>
+							</wsp:Policy>
+						</sp:InitiatorToken>
+						<sp:RecipientToken>
+							<wsp:Policy>
+								<sp:X509Token sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Never">
+									<wsp:Policy>
+										<sp:WssX509V3Token10/>
+									</wsp:Policy>
+								</sp:X509Token>
+							</wsp:Policy>
+						</sp:RecipientToken>
+						<sp:AlgorithmSuite>
+							<wsp:Policy>
+								<sp:TripleDesRsa15/>
+							</wsp:Policy>
+						</sp:AlgorithmSuite>
+						<sp:Layout>
+							<wsp:Policy>
+								<sp:Strict/>
+							</wsp:Policy>
+						</sp:Layout>
+						<sp:IncludeTimestamp/>
+						<sp:OnlySignEntireHeadersAndBody/>
+					</wsp:Policy>
+				</sp:AsymmetricBinding>
+				<sp:Wss10 xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
+					<wsp:Policy>
+						<sp:MustSupportRefKeyIdentifier/>
+						<sp:MustSupportRefIssuerSerial/>
+					</wsp:Policy>
+				</sp:Wss10>
+				<sp:SignedParts xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
+					<sp:Body/>
+				</sp:SignedParts>
+	
+				<ramp:RampartConfig xmlns:ramp="http://ws.apache.org/rampart/policy"> 
+					<ramp:user>service</ramp:user>
+					<ramp:encryptionUser>client</ramp:encryptionUser>
+					<ramp:passwordCallbackClass>org.apache.rampart.samples.policy.sample02.PWCBHandler</ramp:passwordCallbackClass>
+					
+					<ramp:signatureCrypto>
+						<ramp:crypto provider="org.apache.ws.security.components.crypto.Merlin">
+							<ramp:property name="org.apache.ws.security.crypto.merlin.keystore.type">JKS</ramp:property>
+							<ramp:property name="org.apache.ws.security.crypto.merlin.file">service.jks</ramp:property>
+							<ramp:property name="org.apache.ws.security.crypto.merlin.keystore.password">apache</ramp:property>
+						</ramp:crypto>
+					</ramp:signatureCrypto>
+				</ramp:RampartConfig>
+	
+			</wsp:All>
+		</wsp:ExactlyOne>
+	</wsp:Policy>
+</service>

Added: webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/rampart/samples/policy/sample02/Client.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/rampart/samples/policy/sample02/Client.java?view=auto&rev=468297
==============================================================================
--- webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/rampart/samples/policy/sample02/Client.java
(added)
+++ webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/rampart/samples/policy/sample02/Client.java
Thu Oct 26 23:47:57 2006
@@ -0,0 +1,77 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * 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.samples.policy.sample02;
+
+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.builder.StAXOMBuilder;
+import org.apache.axis2.addressing.EndpointReference;
+import org.apache.axis2.client.Options;
+import org.apache.axis2.client.ServiceClient;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.context.ConfigurationContextFactory;
+import org.apache.neethi.Policy;
+import org.apache.neethi.PolicyEngine;
+import org.apache.rampart.RampartMessageData;
+
+import javax.xml.namespace.QName;
+
+public class Client {
+
+    public static void main(String[] args) throws Exception {
+        
+        if(args.length != 3) {
+            System.out.println("Usage: $java Client endpoint_address client_repo_path policy_xml_path");
+        }
+        
+        ConfigurationContext ctx = ConfigurationContextFactory.createConfigurationContextFromFileSystem(args[1],
null);
+        
+        ServiceClient client = new ServiceClient(ctx, null);
+        Options options = new Options();
+        options.setAction("urn:echo");
+        options.setTo(new EndpointReference(args[0]));
+        options.setProperty(RampartMessageData.KEY_RAMPART_POLICY,  loadPolicy(args[2]));
+        client.setOptions(options);
+        
+        client.engageModule(new QName("addressing"));
+        client.engageModule(new QName("rampart"));
+        
+        OMElement response = client.sendReceive(getPayload("Hello world"));
+        
+        System.out.println(response);
+        
+    }
+    
+    private static Policy loadPolicy(String xmlPath) throws Exception {
+        StAXOMBuilder builder = new StAXOMBuilder(xmlPath);
+        return PolicyEngine.getPolicy(builder.getDocumentElement());
+    }
+    
+    private static OMElement getPayload(String value) {
+        OMFactory factory = OMAbstractFactory.getOMFactory();
+        OMNamespace ns = factory.createOMNamespace("http://sample02.policy.samples.rampart.apache.org/xsd","ns1");
+        OMElement elem = factory.createOMElement("echo", ns);
+        OMElement childElem = factory.createOMElement("param0", null);
+        childElem.setText(value);
+        elem.addChild(childElem);
+        
+        return elem;
+    }
+    
+}

Added: webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/rampart/samples/policy/sample02/PWCBHandler.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/rampart/samples/policy/sample02/PWCBHandler.java?view=auto&rev=468297
==============================================================================
--- webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/rampart/samples/policy/sample02/PWCBHandler.java
(added)
+++ webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/rampart/samples/policy/sample02/PWCBHandler.java
Thu Oct 26 23:47:57 2006
@@ -0,0 +1,42 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * 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.samples.policy.sample02;
+
+import org.apache.ws.security.WSPasswordCallback;
+
+import javax.security.auth.callback.Callback;
+import javax.security.auth.callback.CallbackHandler;
+import javax.security.auth.callback.UnsupportedCallbackException;
+
+import java.io.IOException;
+
+public class PWCBHandler implements CallbackHandler {
+
+    public void handle(Callback[] callbacks) throws IOException,
+            UnsupportedCallbackException {
+        for (int i = 0; i < callbacks.length; i++) {
+            WSPasswordCallback pwcb = (WSPasswordCallback)callbacks[i];
+            String id = pwcb.getIdentifer();
+            if("client".equals(id)) {
+                pwcb.setPassword("apache");
+            } else if("service".equals(id)) {
+                pwcb.setPassword("apache");
+            }
+        }
+    }
+
+}

Added: webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/rampart/samples/policy/sample02/SimpleService.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/rampart/samples/policy/sample02/SimpleService.java?view=auto&rev=468297
==============================================================================
--- webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/rampart/samples/policy/sample02/SimpleService.java
(added)
+++ webservices/axis2/branches/java/1_1/modules/samples/security/policy/sample02/src/org/apache/rampart/samples/policy/sample02/SimpleService.java
Thu Oct 26 23:47:57 2006
@@ -0,0 +1,24 @@
+/*
+ * Copyright  2003-2005 The Apache Software Foundation.
+ *
+ *  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.samples.policy.sample02;
+
+public class SimpleService {
+    
+    public String echo(String arg) {
+        return arg;
+    }
+}



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org


Mime
View raw message