You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by de...@apache.org on 2015/12/11 21:56:35 UTC

svn commit: r1719554 - in /uima/sandbox/uima-ducc/trunk: uima-ducc-common/src/main/java/org/apache/uima/ducc/common/crypto/ uima-ducc-common/src/main/java/org/apache/uima/ducc/common/utils/ uima-ducc-duccdocs/src/site/tex/duccbook/part4/admin/

Author: degenaro
Date: Fri Dec 11 20:56:34 2015
New Revision: 1719554

URL: http://svn.apache.org/viewvc?rev=1719554&view=rev
Log:
UIMA-4705 DUCC should provide the means for a security directory other than the user's home

Modified:
    uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/crypto/Crypto.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/utils/DuccPropertiesResolver.java
    uima/sandbox/uima-ducc/trunk/uima-ducc-duccdocs/src/site/tex/duccbook/part4/admin/ducc-properties.tex

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/crypto/Crypto.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/crypto/Crypto.java?rev=1719554&r1=1719553&r2=1719554&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/crypto/Crypto.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/crypto/Crypto.java Fri Dec 11 20:56:34 2015
@@ -45,6 +45,7 @@ import javax.crypto.Cipher;
 
 import org.apache.uima.ducc.common.RuntimeStreamsConsumer;
 import org.apache.uima.ducc.common.utils.AlienFile;
+import org.apache.uima.ducc.common.utils.DuccPropertiesResolver;
 
 public class Crypto implements ICrypto {
 	
@@ -55,6 +56,8 @@ public class Crypto implements ICrypto {
 	private String pubFilePermissions = "0755";
 	private String pvtFilePermissions = "0700";
 
+	private String securityHome = null;
+	
 	private String user;
 	private String dirUserKeys;
 	private String filePvt;
@@ -86,9 +89,24 @@ public class Crypto implements ICrypto {
 		init(user,dirHome,dirSub,accessType);
 	}
 	
+	private void resolveSecurityHome(String tgtUser, String dirHome) {
+		securityHome = dirHome;
+		String ducc_security_home = DuccPropertiesResolver.get(DuccPropertiesResolver.ducc_security_home);
+		if(ducc_security_home != null) {
+			StringBuffer sb = new StringBuffer();
+			sb.append(ducc_security_home);
+			if(!ducc_security_home.endsWith(File.separator)) {
+				sb.append(File.separator);
+			}
+			sb.append(tgtUser);
+			securityHome = sb.toString();
+		}
+	}
+	
 	private void init(String tgtUser, String dirHome, String dirSub, AccessType accessType) throws CryptoException {
+		resolveSecurityHome(tgtUser, dirHome);
 		user = tgtUser;
-		dirUserKeys = dirHome+File.separator+dirSub;
+		dirUserKeys = securityHome+File.separator+dirSub;
 		filePub = dirUserKeys+File.separator+"public.key";
 		filePvt = dirUserKeys+File.separator+"private.key";
 		switch(accessType) {

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/utils/DuccPropertiesResolver.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/utils/DuccPropertiesResolver.java?rev=1719554&r1=1719553&r2=1719554&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/utils/DuccPropertiesResolver.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/utils/DuccPropertiesResolver.java Fri Dec 11 20:56:34 2015
@@ -81,6 +81,8 @@ public class DuccPropertiesResolver {
         
     }
     
+    public static final String ducc_security_home = "ducc.security.home";
+    
     public static final String ducc_private_resources = "ducc.private.resources";
     
     //Legacy, replaced by: ducc_job_max_pipelines_count

Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-duccdocs/src/site/tex/duccbook/part4/admin/ducc-properties.tex
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-duccdocs/src/site/tex/duccbook/part4/admin/ducc-properties.tex?rev=1719554&r1=1719553&r2=1719554&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-duccdocs/src/site/tex/duccbook/part4/admin/ducc-properties.tex (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-duccdocs/src/site/tex/duccbook/part4/admin/ducc-properties.tex Fri Dec 11 20:56:34 2015
@@ -404,6 +404,23 @@
            \item[Type] Tuning 
          \end{description}
 
+       \item[ducc.security.directory] \hfill \\
+        By default DUCC employs
+        
+        \begin{verbatim}
+        <user.home>
+        \end{verbatim}
+        as the user's security directory.
+        When ducc.security.home is specified, DUCC will instead employ
+        
+        \begin{verbatim}
+        <ducc.security.home>/<user.name>.
+        \end{verbatim}
+         \begin{description}
+           \item[Default] (unconfigured) 
+           \item[Type] Local
+         \end{description}
+
        \item[ducc.sm.jvm.args] \hfill \\
          This specifies the list of arguments passed to the JVM when spawning the Service Manager. 
          \begin{description}