[jboss-svn-commits] JBL Code SVN: r35531 - in labs/jbossesb/branches/JBESB_4_9_CP/product: samples/quickstarts/webservice_proxy_security and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Oct 15 05:19:56 EDT 2010
Author: kevin.conner at jboss.com
Date: 2010-10-15 05:19:55 -0400 (Fri, 15 Oct 2010)
New Revision: 35531
Modified:
labs/jbossesb/branches/JBESB_4_9_CP/product/rosetta/src/org/jboss/soa/esb/http/protocol/AbstractProtocolSocketFactoryBuilder.java
labs/jbossesb/branches/JBESB_4_9_CP/product/rosetta/src/org/jboss/soa/esb/http/protocol/AuthSSLProtocolSocketFactoryBuilder.java
labs/jbossesb/branches/JBESB_4_9_CP/product/rosetta/src/org/jboss/soa/esb/http/protocol/SelfSignedSSLProtocolSocketFactoryBuilder.java
labs/jbossesb/branches/JBESB_4_9_CP/product/samples/quickstarts/webservice_proxy_security/build.xml
labs/jbossesb/branches/JBESB_4_9_CP/product/samples/quickstarts/webservice_proxy_security/httpclient-8443.properties
Log:
Allow encrypted password files: JBESB-3505
Modified: labs/jbossesb/branches/JBESB_4_9_CP/product/rosetta/src/org/jboss/soa/esb/http/protocol/AbstractProtocolSocketFactoryBuilder.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_9_CP/product/rosetta/src/org/jboss/soa/esb/http/protocol/AbstractProtocolSocketFactoryBuilder.java 2010-10-15 09:15:34 UTC (rev 35530)
+++ labs/jbossesb/branches/JBESB_4_9_CP/product/rosetta/src/org/jboss/soa/esb/http/protocol/AbstractProtocolSocketFactoryBuilder.java 2010-10-15 09:19:55 UTC (rev 35531)
@@ -20,8 +20,10 @@
package org.jboss.soa.esb.http.protocol;
import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.services.security.PasswordUtil;
import org.jboss.soa.esb.util.ssl.SSLUtil;
+import java.io.File;
import java.io.InputStream;
import java.io.IOException;
import java.net.MalformedURLException;
@@ -70,6 +72,11 @@
try {
trustStoreURL = new URL(trustStoreConfig);
} catch (MalformedURLException e) {
+ final URL fileURL = getFileAsURL(trustStoreConfig) ;
+ if (fileURL != null)
+ {
+ return fileURL ;
+ }
throw new ConfigurationException("Invalid 'truststore' config. Must be valid URL.", e);
}
}
@@ -85,12 +92,31 @@
try {
keyStoreURL = new URL(keyStoreConfig);
} catch (MalformedURLException e) {
+ final URL fileURL = getFileAsURL(keyStoreConfig) ;
+ if (fileURL != null)
+ {
+ return fileURL ;
+ }
throw new ConfigurationException("Invalid 'keystore' config. Must be valid URL.", e);
}
}
return keyStoreURL;
}
+
+ protected static URL getFileAsURL(final String filename)
+ {
+ final File file = new File(filename);
+ if (file.exists() && !file.isDirectory())
+ {
+ try
+ {
+ return file.toURL();
+ }
+ catch (final MalformedURLException murle) {} // ignore
+ }
+ return null ;
+ }
protected KeyStore getKeystore() throws ConfigurationException {
URL url = getKeystoreURL();
@@ -99,7 +125,7 @@
try {
InputStream keystoreStream = url.openStream();
if(keystoreStream != null) {
- return SSLUtil.loadKeyStore(keystoreStream, getKeystoreType(), getKeystorePassword());
+ return SSLUtil.loadKeyStore(keystoreStream, getKeystoreType(), getPasswordFromFile(getKeystorePassword()));
} else {
throw new ConfigurationException("Unable to open keystore '" + url.toString() + "' for loading.");
}
@@ -124,7 +150,7 @@
try {
InputStream truststoreStream = url.openStream();
if(truststoreStream != null) {
- return SSLUtil.loadKeyStore(truststoreStream, getTruststoreType(), getTruststorePassword());
+ return SSLUtil.loadKeyStore(truststoreStream, getTruststoreType(), getPasswordFromFile(getTruststorePassword()));
} else {
throw new ConfigurationException("Unable to open truststore '" + url.toString() + "' for loading.");
}
@@ -141,4 +167,20 @@
return null;
}
+
+ protected String getPasswordFromFile(final String password) throws ConfigurationException
+ {
+ if (PasswordUtil.isPasswordFile(password))
+ {
+ try
+ {
+ return new PasswordUtil(password).getPasswordAsString();
+ }
+ catch (final IOException e)
+ {
+ throw new ConfigurationException(e.getMessage(), e);
+ }
+ }
+ return password;
+ }
}
Modified: labs/jbossesb/branches/JBESB_4_9_CP/product/rosetta/src/org/jboss/soa/esb/http/protocol/AuthSSLProtocolSocketFactoryBuilder.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_9_CP/product/rosetta/src/org/jboss/soa/esb/http/protocol/AuthSSLProtocolSocketFactoryBuilder.java 2010-10-15 09:15:34 UTC (rev 35530)
+++ labs/jbossesb/branches/JBESB_4_9_CP/product/rosetta/src/org/jboss/soa/esb/http/protocol/AuthSSLProtocolSocketFactoryBuilder.java 2010-10-15 09:19:55 UTC (rev 35531)
@@ -36,8 +36,8 @@
public class AuthSSLProtocolSocketFactoryBuilder extends AbstractProtocolSocketFactoryBuilder {
public ProtocolSocketFactory newInstance() throws ConfigurationException {
- String keyStorePW = getKeystorePassword();
- String trustStorePW = getTruststorePassword();
+ String keyStorePW = getPasswordFromFile(getKeystorePassword());
+ String trustStorePW = getPasswordFromFile(getTruststorePassword());
URL keyStoreURL = getKeystoreURL();
URL trustStoreURL = getTruststoreURL();
Modified: labs/jbossesb/branches/JBESB_4_9_CP/product/rosetta/src/org/jboss/soa/esb/http/protocol/SelfSignedSSLProtocolSocketFactoryBuilder.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_9_CP/product/rosetta/src/org/jboss/soa/esb/http/protocol/SelfSignedSSLProtocolSocketFactoryBuilder.java 2010-10-15 09:15:34 UTC (rev 35530)
+++ labs/jbossesb/branches/JBESB_4_9_CP/product/rosetta/src/org/jboss/soa/esb/http/protocol/SelfSignedSSLProtocolSocketFactoryBuilder.java 2010-10-15 09:19:55 UTC (rev 35531)
@@ -48,7 +48,7 @@
public ProtocolSocketFactory newInstance() throws ConfigurationException {
try {
- return new SelfSignedSSLProtocolSocketFactory(getKeystore(), getKeystorePassword(), getTruststore());
+ return new SelfSignedSSLProtocolSocketFactory(getKeystore(), getPasswordFromFile(getKeystorePassword()), getTruststore());
} catch (NoSuchAlgorithmException e) {
throw new ConfigurationException("Failed to create SelfSignedSSLProtocolSocketFactory.", e);
} catch (KeyStoreException e) {
Modified: labs/jbossesb/branches/JBESB_4_9_CP/product/samples/quickstarts/webservice_proxy_security/build.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_9_CP/product/samples/quickstarts/webservice_proxy_security/build.xml 2010-10-15 09:15:34 UTC (rev 35530)
+++ labs/jbossesb/branches/JBESB_4_9_CP/product/samples/quickstarts/webservice_proxy_security/build.xml 2010-10-15 09:19:55 UTC (rev 35531)
@@ -14,7 +14,7 @@
<target name="quickstart-specific-checks" depends="assert-ws-available"/>
- <target name="quickstart-specific-assemblies" depends="genkey,makewar"/>
+ <target name="quickstart-specific-assemblies" depends="makewar"/>
<target name="quickstart-specific-predeploys">
<copy todir="${org.jboss.esb.server.deploy.dir}"
Modified: labs/jbossesb/branches/JBESB_4_9_CP/product/samples/quickstarts/webservice_proxy_security/httpclient-8443.properties
===================================================================
--- labs/jbossesb/branches/JBESB_4_9_CP/product/samples/quickstarts/webservice_proxy_security/httpclient-8443.properties 2010-10-15 09:15:34 UTC (rev 35530)
+++ labs/jbossesb/branches/JBESB_4_9_CP/product/samples/quickstarts/webservice_proxy_security/httpclient-8443.properties 2010-10-15 09:19:55 UTC (rev 35531)
@@ -13,7 +13,7 @@
keystore=@keystore@
keystore-passw=@keystore.password@
truststore=@keystore@
-truststore-passw=webservice_proxy_security_pass
+truststore-passw=@keystore.password@
# Connection config
#max-connections-per-host=5
More information about the jboss-svn-commits
mailing list