]> git.argeo.org Git - lgpl/argeo-commons.git/blobdiff - org.argeo.cms/src/org/argeo/cms/internal/kernel/InitUtils.java
Introduce ssl.needclientauth
[lgpl/argeo-commons.git] / org.argeo.cms / src / org / argeo / cms / internal / kernel / InitUtils.java
index 8a22b480f0106f22861f4bfe2a63695ef54054d0..a4892503d3b0c64e73363bf958105b063e042d2c 100644 (file)
@@ -90,6 +90,11 @@ class InitUtils {
                                props.put(HttpConstants.SSL_KEYSTORE, keyStorePath.toString());
                                props.put(HttpConstants.SSL_PASSWORD, keyStorePassword);
                                props.put(HttpConstants.SSL_WANTCLIENTAUTH, true);
+                               String needClientAuth = getFrameworkProp(
+                                               HttpConstants.JETTY_PROPERTY_PREFIX + HttpConstants.SSL_NEEDCLIENTAUTH);
+                               if (needClientAuth != null) {
+                                       props.put(HttpConstants.SSL_NEEDCLIENTAUTH, Boolean.parseBoolean(needClientAuth));
+                               }
                        }
                        if (httpHost != null)
                                props.put(HttpConstants.HTTP_HOST, httpHost);
@@ -123,6 +128,23 @@ class InitUtils {
                }
                uris.add(nodeRolesUri);
 
+               // node tokens
+               String nodeTokensUri = getFrameworkProp(NodeConstants.TOKENS_URI);
+               String baseNodeTokensDn = NodeConstants.TOKENS_BASEDN;
+               if (nodeTokensUri == null) {
+                       nodeTokensUri = baseNodeTokensDn + ".ldif";
+                       File nodeRolesFile = new File(nodeBaseDir, nodeRolesUri);
+                       if (!nodeRolesFile.exists())
+                               try {
+                                       FileUtils.copyInputStreamToFile(InitUtils.class.getResourceAsStream(baseNodeTokensDn + ".ldif"),
+                                                       nodeRolesFile);
+                               } catch (IOException e) {
+                                       throw new CmsException("Cannot copy demo resource", e);
+                               }
+                       // nodeRolesUri = nodeRolesFile.toURI().toString();
+               }
+               uris.add(nodeTokensUri);
+
                // Business roles
                String userAdminUris = getFrameworkProp(NodeConstants.USERADMIN_URIS);
                if (userAdminUris == null) {