X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Finternal%2Fkernel%2FCmsDeployment.java;h=126c591e64befe548823d048b6ad33236b56efee;hb=8a582781fa376ebcf66096dd6fb90232648b4682;hp=6faa4c9e2ee2e36ed69150949ab5e528548d3ecf;hpb=a9731453273884138ca48036fe6fe49da729c49b;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/internal/kernel/CmsDeployment.java b/org.argeo.cms/src/org/argeo/cms/internal/kernel/CmsDeployment.java index 6faa4c9e2..126c591e6 100644 --- a/org.argeo.cms/src/org/argeo/cms/internal/kernel/CmsDeployment.java +++ b/org.argeo.cms/src/org/argeo/cms/internal/kernel/CmsDeployment.java @@ -28,6 +28,7 @@ import org.argeo.node.NodeConstants; import org.argeo.node.NodeDeployment; import org.argeo.node.NodeState; import org.argeo.node.security.CryptoKeyring; +import org.argeo.osgi.useradmin.UserAdminConf; import org.argeo.util.LangUtils; import org.osgi.framework.Bundle; import org.osgi.framework.BundleContext; @@ -108,6 +109,20 @@ public class CmsDeployment implements NodeDeployment { Object cn = config.getProperties().get(NodeConstants.CN); log.debug("Standalone repo cn: " + cn); } + configs = configurationAdmin + .listConfigurations("(service.factoryPid=" + NodeConstants.NODE_USER_ADMIN_PID + ")"); + + boolean hasDomain = false; + for (Configuration config : configs) { + Object realm = config.getProperties().get(UserAdminConf.realm.name()); + if (realm != null) { + log.debug("Realm: " + realm); + hasDomain = true; + } + } + if (!hasDomain) { + loadNoIpaJaasConfiguration(); + } } catch (Exception e) { throw new CmsException("Cannot initialize config", e); } @@ -116,8 +131,18 @@ public class CmsDeployment implements NodeDeployment { }.open(); } + private void loadNoIpaJaasConfiguration() { + if (System.getProperty(KernelConstants.JAAS_CONFIG_PROP) == null) { + String jaasConfig = KernelConstants.JAAS_CONFIG_NOIPA; + URL url = getClass().getClassLoader().getResource(jaasConfig); + KernelUtils.setJaasConfiguration(url); + if (log.isDebugEnabled()) + log.debug("Set no-IPA JAAS configuration."); + } + } + public void shutdown() { - if(nodeHttp!=null) + if (nodeHttp != null) nodeHttp.destroy(); if (deployConfig != null) deployConfig.save();