Author: alexoree
Date: Sun Aug 18 22:28:07 2013
New Revision: 1515236
URL: http://svn.apache.org/r1515236
Log:
JUDDI-635 Added encryptable credentials for juddi-client (java) config files,
unit tests. updated schema file that identifies which attributes to add to
identify a particular password as encrypted.
Added:
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/AES128Cryptor.java
- copied, changed from r1508197,
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/AES128Cryptor.java
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/AES256Cryptor.java
- copied, changed from r1505003,
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/AES256Cryptor.java
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/AESCryptorAbstract.java
- copied, changed from r1508205,
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/AESCryptorAbstract.java
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/Cryptor.java
- copied, changed from r1505003,
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/Cryptor.java
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/CryptorFactory.java
- copied, changed from r1502981,
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/CryptorFactory.java
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/CrytorUtil.java
- copied, changed from r1502981,
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/v3/auth/CrytorUtil.java
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/DefaultCryptor.java
- copied, changed from r1505003,
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/DefaultCryptor.java
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/TripleDESCrytor.java
- copied, changed from r1505003,
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/TripleDESCrytor.java
juddi/trunk/juddi-client/src/test/java/org/apache/juddi/v3/client/config/
juddi/trunk/juddi-client/src/test/java/org/apache/juddi/v3/client/config/CryptoConfigTest.java
juddi/trunk/juddi-client/src/test/resources/META-INF/uddi3-enc-aes128.xml
- copied, changed from r1492918,
juddi/trunk/juddi-client/src/test/resources/META-INF/uddi2.xml
Modified:
juddi/trunk/bin/cryptor-dev.bat
juddi/trunk/bin/md5cryptdev.bat
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/config/ClientConfig.java
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/config/Property.java
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/config/UDDIClerk.java
juddi/trunk/juddi-client/src/main/resources/xsd/uddi-client.xsd
juddi/trunk/juddi-client/src/test/resources/META-INF/uddi2.xml
Modified: juddi/trunk/bin/cryptor-dev.bat
URL:
http://svn.apache.org/viewvc/juddi/trunk/bin/cryptor-dev.bat?rev=1515236&r1=1515235&r2=1515236&view=diff
==============================================================================
--- juddi/trunk/bin/cryptor-dev.bat (original)
+++ juddi/trunk/bin/cryptor-dev.bat Sun Aug 18 22:28:07 2013
@@ -3,5 +3,5 @@ rem java -cp ../juddi-tomcat/target/tomc
rem java -cp
../juddi-tomcat/target/tomcat/apache-tomcat-6.0.26/webapps/juddi-gui/WEB-INF/lib;../juddi-tomcat/target/tomcat/apache-tomcat-6.0.26/webapps/juddi-gui/WEB-INF/lib/*;../juddi-tomcat/target/tomcat/apache-tomcat-6.0.26/lib/*
org.apache.juddi.v3.auth.CrytorUtil org.apache.juddi.cryptor.DefaultCryptor
-cd
../juddi-tomcat/target/tomcat/apache-tomcat-6.0.26/webapps/juddiv3/WEB-INF/lib
-java -cp .;./* org.apache.juddi.v3.auth.CrytorUtil
\ No newline at end of file
+rem cd
../juddi-tomcat/target/tomcat/apache-tomcat-6.0.26/webapps/juddiv3/WEB-INF/lib
+java -cp
../juddi-tomcat/target/tomcat/apache-tomcat-6.0.26/webapps/juddiv3/WEB-INF/lib;../juddi-tomcat/target/tomcat/apache-tomcat-6.0.26/webapps/juddiv3/WEB-INF/lib/*
org.apache.juddi.v3.auth.CrytorUtil %*
\ No newline at end of file
Modified: juddi/trunk/bin/md5cryptdev.bat
URL:
http://svn.apache.org/viewvc/juddi/trunk/bin/md5cryptdev.bat?rev=1515236&r1=1515235&r2=1515236&view=diff
==============================================================================
--- juddi/trunk/bin/md5cryptdev.bat (original)
+++ juddi/trunk/bin/md5cryptdev.bat Sun Aug 18 22:28:07 2013
@@ -1 +1 @@
-java -cp
../juddi-tomcat/target/tomcat/apache-tomcat-6.0.26/webapps/juddiv3/WEB-INF/lib/*;
org.apache.juddi.v3.auth.MD5XMLDocAuthenticator
\ No newline at end of file
+java -cp
../juddi-tomcat/target/tomcat/apache-tomcat-6.0.26/webapps/juddiv3/WEB-INF/lib/juddi-core-3.2.0-SNAPSHOT.jar;../juddi-tomcat/target/tomcat/apache-tomcat-6.0.26/webapps/juddiv3/WEB-INF/lib/uddi-ws-3.2.0-SNAPSHOT.jar;../juddi-tomcat/target/tomcat/apache-tomcat-6.0.26/webapps/juddiv3/WEB-INF/lib/commons-logging-api-1.1.jar;../juddi-tomcat/target/tomcat/apache-tomcat-6.0.26/webapps/juddiv3/WEB-INF/lib/commons-configuration-1.6.jar;../juddi-tomcat/target/tomcat/apache-tomcat-6.0.26/webapps/juddiv3/WEB-INF/lib/commons-lang-2.4.jar;../juddi-tomcat/target/tomcat/apache-tomcat-6.0.26/webapps/juddiv3/WEB-INF/lib/commons-collections-3.2.1.jar;../juddi-tomcat/target/tomcat/apache-tomcat-6.0.26/webapps/juddiv3/WEB-INF/lib/commons-codec-1.3.jar;
org.apache.juddi.v3.auth.MD5XMLDocAuthenticator
\ No newline at end of file
Modified:
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/config/ClientConfig.java
URL:
http://svn.apache.org/viewvc/juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/config/ClientConfig.java?rev=1515236&r1=1515235&r2=1515236&view=diff
==============================================================================
---
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/config/ClientConfig.java
(original)
+++
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/config/ClientConfig.java
Sun Aug 18 22:28:07 2013
@@ -125,6 +125,8 @@ public class ClientConfig
uddiClerk.setUDDINode(uddiNode);
uddiClerk.setPublisher(config.getString("client.clerks.clerk(" + i +
")[@publisher]"));
uddiClerk.setPassword(
config.getString("client.clerks.clerk(" + i + ")[@password]"));
+
uddiClerk.setIsPasswordEncrypted(config.getBoolean("client.clerks.clerk(" + i +
")[@isPasswordEncrypted]",false) );
+
uddiClerk.setCryptoProvider(config.getString("client.clerks.clerk(" + i +
")[@cryptoProvider]"));
String clerkBusinessKey =
config.getString("client.clerks.clerk(" + i + ")[@businessKey]");
String clerkBusinessName =
config.getString("client.clerks.clerk(" + i + ")[@businessName]");
@@ -207,6 +209,7 @@ public class ClientConfig
}
uddiNode.setProperties(properties);
}
+
uddiNode.setHomeJUDDI(
config.getBoolean("client.nodes.node(" + i +")[@isHomeJUDDI]",false));
uddiNode.setName(
TokenResolver.replaceTokens(config.getString("client.nodes.node(" + i
+").name"),properties));
uddiNode.setClientName(
TokenResolver.replaceTokens(config.getString("client[@name]"),properties));
Modified:
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/config/Property.java
URL:
http://svn.apache.org/viewvc/juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/config/Property.java?rev=1515236&r1=1515235&r2=1515236&view=diff
==============================================================================
---
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/config/Property.java
(original)
+++
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/config/Property.java
Sun Aug 18 22:28:07 2013
@@ -56,5 +56,10 @@ public class Property
}
return tmpDir;
}
+
+
+ public final static String DEFAULT_CRYPTOR =
"org.apache.juddi.v3.client.crypto.DefaultCryptor";
+ public final static String JUDDI_CRYPTOR_PREFIX =
"client.clerks.clerk.";
+ public final static String JUDDI_CRYPTOR_POSTFIX =
".[@isPasswordEncrypted]";
}
Modified:
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/config/UDDIClerk.java
URL:
http://svn.apache.org/viewvc/juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/config/UDDIClerk.java?rev=1515236&r1=1515235&r2=1515236&view=diff
==============================================================================
---
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/config/UDDIClerk.java
(original)
+++
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/config/UDDIClerk.java
Sun Aug 18 22:28:07 2013
@@ -26,6 +26,8 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Properties;
+import java.util.logging.Level;
+import java.util.logging.Logger;
import javax.wsdl.Definition;
import javax.xml.ws.Holder;
@@ -41,6 +43,7 @@ import org.apache.juddi.api_v3.NodeDetai
import org.apache.juddi.api_v3.SaveClerk;
import org.apache.juddi.api_v3.SaveNode;
import org.apache.juddi.v3.client.UDDIConstants;
+import org.apache.juddi.v3.client.crypto.CryptorFactory;
import org.apache.juddi.v3.client.mapping.ReadWSDL;
import org.apache.juddi.v3.client.mapping.URLLocalizerDefaultImpl;
import org.apache.juddi.v3.client.mapping.WSDL2UDDI;
@@ -92,6 +95,8 @@ public class UDDIClerk implements Serial
protected String password;
private Date tokenBirthDate;
private String authToken;
+ private String cryptoProvider;
+ private boolean isencrypted=false;
private String[] classWithAnnotations;
private WSDL[] wsdls;
private String managerName;
@@ -706,7 +711,25 @@ public class UDDIClerk implements Serial
tokenBirthDate = new Date();
GetAuthToken getAuthToken = new GetAuthToken();
getAuthToken.setUserID(getPublisher());
- getAuthToken.setCred(getPassword());
+ if (isencrypted )
+ {
+ if (cryptoProvider==null)
+ log.fatal("Credentials are encrypted but no cryptoProvider
was defined in the config file!");
+ else
+ {
+ try {
+
getAuthToken.setCred(CryptorFactory.getCryptor(this.cryptoProvider).decrypt(getPassword()));
+ } catch (Exception ex) {
+ log.fatal("Unable to decrypt credentials! sending it
as is", ex);
+ getAuthToken.setCred(getPassword());
+ }
+ }
+ }
+ else
+ {
+ log.warn("Hey, I couldn't help but notice that your
credentials aren't encrypted. Please consider doing so");
+ getAuthToken.setCred(getPassword());
+ }
authToken =
getUDDINode().getTransport().getUDDISecurityService(endpointURL).getAuthToken(getAuthToken).getAuthInfo();
}
return authToken;
@@ -797,6 +820,23 @@ public class UDDIClerk implements Serial
this.wsdls = wsdls;
}
+ public void setCryptoProvider(String clazz) {
+ this.cryptoProvider = clazz;
+ }
+
+ public void setIsPasswordEncrypted(boolean option) {
+ this.isencrypted = option;
+ }
+
+ public String getCryptoProvider() {
+ return this.cryptoProvider ;
+ }
+
+ public boolean setIsPasswordEncrypted() {
+ return this.isencrypted ;
+ }
+
+
public class WSDL {
private String businessKey;
Copied:
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/AES128Cryptor.java
(from r1508197,
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/AES128Cryptor.java)
URL:
http://svn.apache.org/viewvc/juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/AES128Cryptor.java?p2=juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/AES128Cryptor.java&p1=juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/AES128Cryptor.java&r1=1508197&r2=1515236&rev=1515236&view=diff
==============================================================================
---
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/AES128Cryptor.java
(original)
+++
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/AES128Cryptor.java
Sun Aug 18 22:28:07 2013
@@ -14,7 +14,7 @@
* limitations under the License.
*
*/
-package org.apache.juddi.cryptor;
+package org.apache.juddi.v3.client.crypto;
import java.security.InvalidAlgorithmParameterException;
import java.security.InvalidKeyException;
Copied:
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/AES256Cryptor.java
(from r1505003,
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/AES256Cryptor.java)
URL:
http://svn.apache.org/viewvc/juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/AES256Cryptor.java?p2=juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/AES256Cryptor.java&p1=juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/AES256Cryptor.java&r1=1505003&r2=1515236&rev=1515236&view=diff
==============================================================================
---
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/AES256Cryptor.java
(original)
+++
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/AES256Cryptor.java
Sun Aug 18 22:28:07 2013
@@ -14,7 +14,7 @@
* limitations under the License.
*
*/
-package org.apache.juddi.cryptor;
+package org.apache.juddi.v3.client.crypto;
import java.security.InvalidAlgorithmParameterException;
import java.security.InvalidKeyException;
Copied:
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/AESCryptorAbstract.java
(from r1508205,
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/AESCryptorAbstract.java)
URL:
http://svn.apache.org/viewvc/juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/AESCryptorAbstract.java?p2=juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/AESCryptorAbstract.java&p1=juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/AESCryptorAbstract.java&r1=1508205&r2=1515236&rev=1515236&view=diff
==============================================================================
---
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/AESCryptorAbstract.java
(original)
+++
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/AESCryptorAbstract.java
Sun Aug 18 22:28:07 2013
@@ -14,7 +14,7 @@
* limitations under the License.
*
*/
-package org.apache.juddi.cryptor;
+package org.apache.juddi.v3.client.crypto;
import java.security.InvalidAlgorithmParameterException;
import java.security.InvalidKeyException;
Copied:
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/Cryptor.java
(from r1505003,
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/Cryptor.java)
URL:
http://svn.apache.org/viewvc/juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/Cryptor.java?p2=juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/Cryptor.java&p1=juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/Cryptor.java&r1=1505003&r2=1515236&rev=1515236&view=diff
==============================================================================
--- juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/Cryptor.java
(original)
+++
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/Cryptor.java
Sun Aug 18 22:28:07 2013
@@ -15,7 +15,7 @@
*
*/
-package org.apache.juddi.cryptor;
+package org.apache.juddi.v3.client.crypto;
import java.security.InvalidAlgorithmParameterException;
import java.security.InvalidKeyException;
@@ -24,6 +24,7 @@ import java.security.NoSuchAlgorithmExce
import javax.crypto.BadPaddingException;
import javax.crypto.IllegalBlockSizeException;
import javax.crypto.NoSuchPaddingException;
+import org.apache.juddi.v3.client.config.UDDIClerk;
/**
* @author Anou Manavalan
@@ -59,5 +60,7 @@ public interface Cryptor
IllegalBlockSizeException,
BadPaddingException;
+
+
}
\ No newline at end of file
Copied:
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/CryptorFactory.java
(from r1502981,
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/CryptorFactory.java)
URL:
http://svn.apache.org/viewvc/juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/CryptorFactory.java?p2=juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/CryptorFactory.java&p1=juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/CryptorFactory.java&r1=1502981&r2=1515236&rev=1515236&view=diff
==============================================================================
---
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/CryptorFactory.java
(original)
+++
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/CryptorFactory.java
Sun Aug 18 22:28:07 2013
@@ -15,14 +15,15 @@
*
*/
-package org.apache.juddi.cryptor;
+package org.apache.juddi.v3.client.crypto;
-import org.apache.commons.configuration.ConfigurationException;
+import java.util.HashMap;
+import java.util.Map;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.juddi.ClassUtil;
-import org.apache.juddi.config.AppConfig;
-import org.apache.juddi.config.Property;
+import org.apache.juddi.v3.client.ClassUtil;
+import org.apache.juddi.v3.client.config.Property;
+import org.apache.juddi.v3.client.config.UDDIClerk;
/**
* Used to create the org.apache.juddi.cryptor.Cryptor implementation
@@ -39,19 +40,13 @@ public abstract class CryptorFactory {
// the shared Cryptor instance
private static Cryptor cryptor = null;
- /*
- * Returns a new instance of a CryptorFactory.
- *
- * @return Cryptor
- */
- public static Cryptor getCryptor() {
- if (cryptor == null)
- cryptor = createCryptor();
- return cryptor;
- }
+
+ private static Map<String, Cryptor> cache = new HashMap<String,
Cryptor>();
public static Cryptor getCryptor(String className) throws Exception {
+ if (cache.containsKey(className))
+ return cache.get(className);
Class<?> cryptorClass = null;
try {
// Use Loader to locate & load the Cryptor
implementation
@@ -66,6 +61,7 @@ public abstract class CryptorFactory {
try {
// try to instantiate the Cryptor implementation
cryptor = (Cryptor)cryptorClass.newInstance();
+ cache.put(className, cryptor);
}
catch(Exception e) {
log.error("Exception while attempting to instantiate
the implementation of Cryptor: " + cryptorClass.getName() + "\n" +
e.getMessage());
@@ -76,47 +72,4 @@ public abstract class CryptorFactory {
return cryptor;
}
- /*
- * Returns a new instance of a Cryptor.
- *
- * @return Cryptor
- */
- private static synchronized Cryptor createCryptor() {
- if (cryptor != null)
- return cryptor;
-
- // grab class name of the Cryptor implementation to create
- String className = Property.DEFAULT_CRYPTOR;
- try {
- // grab class name of the Authenticator implementation
to create
- className =
AppConfig.getConfiguration().getString(Property.JUDDI_CRYPTOR,
Property.DEFAULT_CRYPTOR);
- }
- catch(ConfigurationException ce) {
- log.error("Configuration exception occurred retrieving:
" + Property.JUDDI_CRYPTOR, ce);
- }
-
- // write the Cryptor implementation name to the log
- log.debug("Cryptor Implementation = " + className);
-
- Class<?> cryptorClass = null;
- try {
- // Use Loader to locate & load the Cryptor
implementation
- cryptorClass = ClassUtil.forName(className,
CryptorFactory.class);
- }
- catch(ClassNotFoundException e) {
- log.error("The specified Cryptor class '" + className +
"' was not found in classpath.");
- log.error(e);
- }
-
- try {
- // try to instantiate the Cryptor implementation
- cryptor = (Cryptor)cryptorClass.newInstance();
- }
- catch(Exception e) {
- log.error("Exception while attempting to instantiate
the implementation of Cryptor: " + cryptorClass.getName() + "\n" +
e.getMessage());
- log.error(e);
- }
-
- return cryptor;
- }
}
\ No newline at end of file
Copied:
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/CrytorUtil.java
(from r1502981,
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/v3/auth/CrytorUtil.java)
URL:
http://svn.apache.org/viewvc/juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/CrytorUtil.java?p2=juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/CrytorUtil.java&p1=juddi/trunk/juddi-core/src/main/java/org/apache/juddi/v3/auth/CrytorUtil.java&r1=1502981&r2=1515236&rev=1515236&view=diff
==============================================================================
---
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/v3/auth/CrytorUtil.java
(original)
+++
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/CrytorUtil.java
Sun Aug 18 22:28:07 2013
@@ -13,10 +13,8 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.juddi.v3.auth;
+package org.apache.juddi.v3.client.crypto;
-import org.apache.juddi.cryptor.Cryptor;
-import org.apache.juddi.cryptor.CryptorFactory;
/**
*
Copied:
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/DefaultCryptor.java
(from r1505003,
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/DefaultCryptor.java)
URL:
http://svn.apache.org/viewvc/juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/DefaultCryptor.java?p2=juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/DefaultCryptor.java&p1=juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/DefaultCryptor.java&r1=1505003&r2=1515236&rev=1515236&view=diff
==============================================================================
---
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/DefaultCryptor.java
(original)
+++
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/DefaultCryptor.java
Sun Aug 18 22:28:07 2013
@@ -15,7 +15,7 @@
*
*/
-package org.apache.juddi.cryptor;
+package org.apache.juddi.v3.client.crypto;
import java.security.InvalidAlgorithmParameterException;
import java.security.InvalidKeyException;
Copied:
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/TripleDESCrytor.java
(from r1505003,
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/TripleDESCrytor.java)
URL:
http://svn.apache.org/viewvc/juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/TripleDESCrytor.java?p2=juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/TripleDESCrytor.java&p1=juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/TripleDESCrytor.java&r1=1505003&r2=1515236&rev=1515236&view=diff
==============================================================================
---
juddi/trunk/juddi-core/src/main/java/org/apache/juddi/cryptor/TripleDESCrytor.java
(original)
+++
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/crypto/TripleDESCrytor.java
Sun Aug 18 22:28:07 2013
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.juddi.cryptor;
+package org.apache.juddi.v3.client.crypto;
import java.security.InvalidAlgorithmParameterException;
import java.security.InvalidKeyException;
Modified: juddi/trunk/juddi-client/src/main/resources/xsd/uddi-client.xsd
URL:
http://svn.apache.org/viewvc/juddi/trunk/juddi-client/src/main/resources/xsd/uddi-client.xsd?rev=1515236&r1=1515235&r2=1515236&view=diff
==============================================================================
--- juddi/trunk/juddi-client/src/main/resources/xsd/uddi-client.xsd (original)
+++ juddi/trunk/juddi-client/src/main/resources/xsd/uddi-client.xsd Sun Aug 18
22:28:07 2013
@@ -77,6 +77,11 @@
use="required" />
<xsd:attribute type="xsd:string" name="password"
use="required" />
+ <xsd:attribute type="xsd:boolean"
name="isPasswordEncrypted"
+ use="optional" default="false" />
+ <xsd:attribute type="xsd:string" name="cryptoProvider"
+ use="optional" />
+
<xsd:attribute type="xsd:string" name="businessKey"
use="optional" />
<xsd:attribute type="xsd:string" name="businessName"
Added:
juddi/trunk/juddi-client/src/test/java/org/apache/juddi/v3/client/config/CryptoConfigTest.java
URL:
http://svn.apache.org/viewvc/juddi/trunk/juddi-client/src/test/java/org/apache/juddi/v3/client/config/CryptoConfigTest.java?rev=1515236&view=auto
==============================================================================
---
juddi/trunk/juddi-client/src/test/java/org/apache/juddi/v3/client/config/CryptoConfigTest.java
(added)
+++
juddi/trunk/juddi-client/src/test/java/org/apache/juddi/v3/client/config/CryptoConfigTest.java
Sun Aug 18 22:28:07 2013
@@ -0,0 +1,50 @@
+/*
+ * Copyright 2013 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.juddi.v3.client.config;
+
+import org.apache.juddi.v3.client.crypto.CryptorFactory;
+import org.apache.juddi.v3.client.transport.Transport;
+import org.junit.Assert;
+import org.junit.Test;
+
+/**
+ *
+ * @author Alex O'Ree
+ */
+public class CryptoConfigTest {
+
+ @Test()
+ public void EncryptedCredentialsAES128Test() throws Exception {
+ UDDIClient clerkManager = new
UDDIClient("META-INF/uddi3-enc-aes128.xml");
+ // register the clerkManager with the client side container
+ UDDIClientContainer.addClient(clerkManager);
+ // a ClerkManager can be a client to multiple UDDI nodes, so
+ // supply the nodeName (defined in your uddi.xml.
+ // The transport can be WS, inVM, RMI etc which is defined in the
uddi.xml
+ Transport transport = clerkManager.getTransport("default");
+ // Now you create a reference to the UDDI API
+ UDDIClerk c = clerkManager.getClerk("default");
+ UDDIClerk c2 = clerkManager.getClerk("medroot");
+ Assert.assertNotSame(c.getPassword(), c2.getPassword());
+ Assert.assertEquals("7d3e79ca453f4ebfd36e22afe029c3a2",
c.getPassword());
+ Assert.assertEquals("root",
CryptorFactory.getCryptor(c.getCryptoProvider()).decrypt(c.getPassword()));
+
+ Assert.assertEquals("18604180541d172f9827e08c998db568",
c2.getPassword());
+ Assert.assertEquals("password",
CryptorFactory.getCryptor(c2.getCryptoProvider()).decrypt(c2.getPassword()));
+
+
+ }
+}
Modified: juddi/trunk/juddi-client/src/test/resources/META-INF/uddi2.xml
URL:
http://svn.apache.org/viewvc/juddi/trunk/juddi-client/src/test/resources/META-INF/uddi2.xml?rev=1515236&r1=1515235&r2=1515236&view=diff
==============================================================================
--- juddi/trunk/juddi-client/src/test/resources/META-INF/uddi2.xml (original)
+++ juddi/trunk/juddi-client/src/test/resources/META-INF/uddi2.xml Sun Aug 18
22:28:07 2013
@@ -35,9 +35,11 @@
</nodes>
<clerks registerOnStartup="false">
- <clerk name="default" node="default" publisher="root"
password="root"/>
- <clerk name="medroot" node="med" publisher="root"
password="root"/>
- <xregister>
+ <!-- password is password -->
+ <clerk name="default" node="default" publisher="root"
password="root" />
+ <!-- password is root -->
+ <clerk name="medroot" node="med" publisher="root"
password="root" />
+ <xregister>
<service
bindingKey="uddi:juddi.apache.org:servicebindings-subscriptionlistener-ws"
fromClerk="default" toClerk="medroot"/>
</xregister>
</clerks>
Copied:
juddi/trunk/juddi-client/src/test/resources/META-INF/uddi3-enc-aes128.xml (from
r1492918, juddi/trunk/juddi-client/src/test/resources/META-INF/uddi2.xml)
URL:
http://svn.apache.org/viewvc/juddi/trunk/juddi-client/src/test/resources/META-INF/uddi3-enc-aes128.xml?p2=juddi/trunk/juddi-client/src/test/resources/META-INF/uddi3-enc-aes128.xml&p1=juddi/trunk/juddi-client/src/test/resources/META-INF/uddi2.xml&r1=1492918&r2=1515236&rev=1515236&view=diff
==============================================================================
--- juddi/trunk/juddi-client/src/test/resources/META-INF/uddi2.xml (original)
+++ juddi/trunk/juddi-client/src/test/resources/META-INF/uddi3-enc-aes128.xml
Sun Aug 18 22:28:07 2013
@@ -2,45 +2,51 @@
<uddi xmlns="urn:juddi-apache-org:v3_client"
xsi:schemaLocation="classpath:/xsd/uddi-client.xsd">
<reloadDelay>5000</reloadDelay>
<client name="second-client">
- <nodes>
- <node isHomeJUDDI="true">
- <name>default</name>
- <description>Local jUDDI node</description>
- <properties>
- <property name="serverName"
value="localhost" />
- <property name="serverPort"
value="8880" />
- </properties>
- <!-- JAX-WS Transport -->
-
<proxyTransport>org.apache.juddi.v3.client.transport.JAXWSTransport</proxyTransport>
-
<custodyTransferUrl>http://${serverName}:${serverPort}/juddiv3/services/custody-transfer?wsdl</custodyTransferUrl>
-
<inquiryUrl>http://${serverName}:${serverPort}/juddiv3/services/inquiry?wsdl</inquiryUrl>
-
<publishUrl>http://${serverName}:${serverPort}/juddiv3/services/publish?wsdl</publishUrl>
-
<securityUrl>http://${serverName}:${serverPort}/juddiv3/services/security?wsdl</securityUrl>
-
<subscriptionUrl>http://${serverName}:${serverPort}/juddiv3/services/subscription?wsdl</subscriptionUrl>
-
<subscriptionListenerUrl>http://${serverName}:${serverPort}/juddiv3/services/subscription-listener?wsdl</subscriptionListenerUrl>
-
<juddiApiUrl>http://${serverName}:${serverPort}/juddiv3/services/juddi-api?wsdl</juddiApiUrl>
- </node>
- <node>
- <name>med</name>
- <description>jUDDI node in other
Department</description>
-
<proxyTransport>org.apache.juddi.v3.client.transport.JAXWSTransport</proxyTransport>
-
<custodyTransferUrl>http://med:8080/juddiv3/services/custody-transfer?wsdl</custodyTransferUrl>
-
<inquiryUrl>http://med:8080/juddiv3/services/inquiry?wsdl</inquiryUrl>
-
<publishUrl>http://med:8080/juddiv3/services/publish?wsdl</publishUrl>
-
<securityUrl>http://med:8080/juddiv3/services/security?wsdl</securityUrl>
-
<subscriptionUrl>http://med:8080/juddiv3/services/subscription?wsdl</subscriptionUrl>
-
<subscriptionListenerUrl>http://med:8080/juddiv3/services/subscription-listener?wsdl</subscriptionListenerUrl>
-
<juddiApiUrl>http://med:8080/juddiv3/services/juddi-api?wsdl</juddiApiUrl>
- </node>
- </nodes>
+ <nodes>
+ <node isHomeJUDDI="true">
+ <name>default</name>
+ <description>Local jUDDI node</description>
+ <properties>
+ <property name="serverName" value="localhost" />
+ <property name="serverPort" value="8880" />
+ </properties>
+ <!-- JAX-WS Transport -->
+
<proxyTransport>org.apache.juddi.v3.client.transport.JAXWSTransport</proxyTransport>
+
<custodyTransferUrl>http://${serverName}:${serverPort}/juddiv3/services/custody-transfer?wsdl</custodyTransferUrl>
+
<inquiryUrl>http://${serverName}:${serverPort}/juddiv3/services/inquiry?wsdl</inquiryUrl>
+
<publishUrl>http://${serverName}:${serverPort}/juddiv3/services/publish?wsdl</publishUrl>
+
<securityUrl>http://${serverName}:${serverPort}/juddiv3/services/security?wsdl</securityUrl>
+
<subscriptionUrl>http://${serverName}:${serverPort}/juddiv3/services/subscription?wsdl</subscriptionUrl>
+
<subscriptionListenerUrl>http://${serverName}:${serverPort}/juddiv3/services/subscription-listener?wsdl</subscriptionListenerUrl>
+
<juddiApiUrl>http://${serverName}:${serverPort}/juddiv3/services/juddi-api?wsdl</juddiApiUrl>
+ </node>
+ <node>
+ <name>med</name>
+ <description>jUDDI node in other Department</description>
+
<proxyTransport>org.apache.juddi.v3.client.transport.JAXWSTransport</proxyTransport>
+
<custodyTransferUrl>http://med:8080/juddiv3/services/custody-transfer?wsdl</custodyTransferUrl>
+
<inquiryUrl>http://med:8080/juddiv3/services/inquiry?wsdl</inquiryUrl>
+
<publishUrl>http://med:8080/juddiv3/services/publish?wsdl</publishUrl>
+
<securityUrl>http://med:8080/juddiv3/services/security?wsdl</securityUrl>
+
<subscriptionUrl>http://med:8080/juddiv3/services/subscription?wsdl</subscriptionUrl>
+
<subscriptionListenerUrl>http://med:8080/juddiv3/services/subscription-listener?wsdl</subscriptionListenerUrl>
+
<juddiApiUrl>http://med:8080/juddiv3/services/juddi-api?wsdl</juddiApiUrl>
+ </node>
+ </nodes>
- <clerks registerOnStartup="false">
- <clerk name="default" node="default" publisher="root"
password="root"/>
- <clerk name="medroot" node="med" publisher="root"
password="root"/>
- <xregister>
- <service
bindingKey="uddi:juddi.apache.org:servicebindings-subscriptionlistener-ws"
fromClerk="default" toClerk="medroot"/>
- </xregister>
- </clerks>
+ <clerks registerOnStartup="false">
+ <!-- root -->
+ <clerk name="default" node="default" publisher="root"
password="7d3e79ca453f4ebfd36e22afe029c3a2"
+ isPasswordEncrypted="true"
cryptoProvider="org.apache.juddi.v3.client.crypto.AES128Cryptor"
+ />
+ <!-- password -->
+ <clerk name="medroot" node="med" publisher="root"
password="18604180541d172f9827e08c998db568"
+ isPasswordEncrypted="true"
cryptoProvider="org.apache.juddi.v3.client.crypto.AES128Cryptor"
+ />
+ <xregister>
+ <service
bindingKey="uddi:juddi.apache.org:servicebindings-subscriptionlistener-ws"
fromClerk="default" toClerk="medroot"/>
+ </xregister>
+ </clerks>
- </client>
+ </client>
</uddi>
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]