[jboss-svn-commits] JBL Code SVN: r28610 - in labs/jbossesb/trunk/product/rosetta: tests/src/org/jboss/soa/esb/services/security/auth/ws and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu Jul 30 12:12:27 EDT 2009


Author: beve
Date: 2009-07-30 12:12:25 -0400 (Thu, 30 Jul 2009)
New Revision: 28610

Added:
   labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/services/security/auth/ws/smooks-ws-security-template.xml
   labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/services/security/auth/ws/soap-userpass-example2.xml
Modified:
   labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/services/security/auth/ws/smooks-ws-security.xml
   labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/services/security/auth/ws/WSSecurityInfoExtractorUnitTest.java
Log:
Work for https://jira.jboss.org/jira/browse/JBESB-2763 "WSSecurityInfoExtractor's smooks selectors are incorrect."


Added: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/services/security/auth/ws/smooks-ws-security-template.xml
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/services/security/auth/ws/smooks-ws-security-template.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/services/security/auth/ws/smooks-ws-security-template.xml	2009-07-30 16:12:25 UTC (rev 28610)
@@ -0,0 +1,19 @@
+<?xml version="1.0"?>
+<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.1.xsd" xmlns:jb="http://www.milyn.org/xsd/smooks/javabean-1.2.xsd">
+    
+	<jb:bean beanId="userNameToken" class="org.jboss.soa.esb.services.security.auth.ws.UsernameToken" 
+	   createOnElement="/Envelope/Header/Security/UsernameToken" 
+	   createOnElementNS="@security-namespace@">
+		<jb:value property="userName" data="Username" dataNS="@security-namespace@" default=""/>
+		<jb:value property="password" data="Password" dataNS="@security-namespace@"/>
+	</jb:bean>
+	
+	<jb:bean beanId="binarySecurityToken" class="org.jboss.soa.esb.services.security.auth.ws.BinarySecurityToken" 
+	   createOnElement="/Envelope/Header/Security/BinarySecurityToken" 
+	   createOnElementNS="@security-namespace@">
+		<jb:value property="encodingType" data="BinarySecurityToken/@EncodingType" dataNS="@security-namespace@"/>
+		<jb:value property="valueType" data="BinarySecurityToken/@ValueType" dataNS="@security-namespace@"/>
+		<jb:value property="key" data="BinarySecurityToken" dataNS="@security-namespace@"/>
+	</jb:bean>
+	
+</smooks-resource-list>

Modified: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/services/security/auth/ws/smooks-ws-security.xml
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/services/security/auth/ws/smooks-ws-security.xml	2009-07-30 16:08:57 UTC (rev 28609)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/services/security/auth/ws/smooks-ws-security.xml	2009-07-30 16:12:25 UTC (rev 28610)
@@ -1,29 +1,16 @@
 <?xml version="1.0"?>
-<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd">
+<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.1.xsd">
     
-    <resource-config selector="global-parameters">
+    <params>
         <param name="stream.filter.type">SAX</param>
-    </resource-config>
-
-    <resource-config selector="Envelope/Header/Security/UsernameToken">
-        <resource>org.milyn.javabean.BeanPopulator</resource>
-        <param name="beanId">userNameToken</param>
-        <param name="beanClass">org.jboss.soa.esb.services.security.auth.ws.UsernameToken</param>
-        <param name="bindings">
-            <binding property="userName" selector="Username" default="" />
-            <binding property="password" selector="Password" />
-        </param>
-    </resource-config>
+	</params>
+	
+	<import file="/org/jboss/soa/esb/services/security/auth/ws/smooks-ws-security-template.xml">
+        <param name="security-namespace">http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd</param>
+    </import>
     
-    <resource-config selector="Envelope/Header/Security/BinarySecurityToken">
-        <resource>org.milyn.javabean.BeanPopulator</resource>
-        <param name="beanId">binarySecurityToken</param>
-        <param name="beanClass">org.jboss.soa.esb.services.security.auth.ws.BinarySecurityToken</param>
-        <param name="bindings">
-            <binding property="encodingType" selector="BinarySecurityToken @EncodingType" />
-            <binding property="valueType" selector="BinarySecurityToken @ValueType" />
-            <binding property="key" selector="BinarySecurityToken" />
-        </param>
-    </resource-config>
+	<import file="/org/jboss/soa/esb/services/security/auth/ws/smooks-ws-security-template.xml">
+        <param name="security-namespace">http://schemas.xmlsoap.org/ws/2002/04/secext</param>
+    </import>
 
 </smooks-resource-list>

Modified: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/services/security/auth/ws/WSSecurityInfoExtractorUnitTest.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/services/security/auth/ws/WSSecurityInfoExtractorUnitTest.java	2009-07-30 16:08:57 UTC (rev 28609)
+++ labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/services/security/auth/ws/WSSecurityInfoExtractorUnitTest.java	2009-07-30 16:12:25 UTC (rev 28610)
@@ -52,14 +52,22 @@
 {
 	private WSSecurityInfoExtractor extractor;
 
-    @Test
+	@Test
 	public void extractUserPassSecurityInfo() throws SAXException, IOException, ParserConfigurationException, ConfigurationException
 	{
-		String soap = createUserPassSoapString();
+		String soap = createUserPassSoapString("soap-userpass-example.xml");
 		AuthenticationRequest authRequest = extractor.extractSecurityInfo(soap);
 		assertNotNull(authRequest);
 		assertEquals( "Clark", authRequest.getPrincipal().getName());
 	}
+    
+	@Test
+	public void processEmptyHeaderWithUserNameElementInBody() throws SAXException, IOException, ParserConfigurationException, ConfigurationException
+	{
+		String soap = createUserPassSoapString("soap-userpass-example2.xml");
+		AuthenticationRequest authRequest = extractor.extractSecurityInfo(soap);
+		assertNull(authRequest);
+	}
 	
 	@Test
 	public void extractKeySecurityInfo() throws SAXException, IOException, ParserConfigurationException, ConfigurationException
@@ -99,9 +107,9 @@
 		assertNull(authRequest);
 	}
 	
-	private String createUserPassSoapString() throws SAXException, IOException, ParserConfigurationException, ConfigurationException
+	private String createUserPassSoapString(final String filename) throws SAXException, IOException, ParserConfigurationException, ConfigurationException
 	{
-		return getStringFromFile("soap-userpass-example.xml");
+		return getStringFromFile(filename);
 	}
 	
 	private String createKeySoapString(final String filename) throws SAXException, IOException, ParserConfigurationException, ConfigurationException

Added: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/services/security/auth/ws/soap-userpass-example2.xml
===================================================================
--- labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/services/security/auth/ws/soap-userpass-example2.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/services/security/auth/ws/soap-userpass-example2.xml	2009-07-30 16:12:25 UTC (rev 28610)
@@ -0,0 +1,17 @@
+<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:dummy="http://dummy-namespace/">
+   <soapenv:Header/>
+   <soapenv:Body>
+      <dummy:GetConfigList>
+         <dummy:req>
+            <dummy:CustomerId>123</dummy:CustomerId>
+            <dummy:UserName>John</dummy:UserName>
+            <dummy:MaxNumRows>100</dummy:MaxNumRows>
+         </dummy:req>
+         <dummy:UsernameToken>
+            <dummy:UserName>John</dummy:UserName>
+         </dummy:UsernameToken>
+      </dummy:GetConfigList>
+   </soapenv:Body>
+</soapenv:Envelope>
+
+



More information about the jboss-svn-commits mailing list