Yair Zaslavsky has uploaded a new change for review. Change subject: aaa: Remove dependency at builtin on Common config ......................................................................
aaa: Remove dependency at builtin on Common config Change-Id: I1384a99f73ab605b61bce8dcdfd63e222b0001fa Topic: AAA Signed-off-by: Yair Zaslavsky <[email protected]> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java M backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/internal/InternalAuthz.java M backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/DirectorySearchTask.java M backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/DirectorySearcher.java M backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/GSSAPIDirContextAuthenticationStrategy.java M backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/GetRootDSE.java M backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/KerberosLdapAuthn.java M backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/KerberosLdapAuthz.java M backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/KerberosManager.java M backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/LDAPTemplateWrapper.java M backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/LdapBrokerUtils.java M backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/PrepareLdapConnectionTask.java M backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/UsersDomainsCacheManagerService.java M backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/UsersObjectIdQueryGenerator.java M backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/collections/DomainsPasswordMap.java 15 files changed, 67 insertions(+), 66 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/07/27607/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java index 2e5e18e..505940b 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/InitBackendServicesOnStartupBean.java @@ -137,7 +137,7 @@ dirConfig.put("config.authz.user.name", Config.<String> getValue(ConfigValues.AdminUser)); dirConfig.put("config.authz.user.id", "fdfc627c-d875-11e0-90f0-83df133b58cc"); dirConfig.put("config.query.filter.size", - Config.<Integer> getValue(ConfigValues.MaxLDAPQueryPartsNumber)); + Config.<Integer> getValue(ConfigValues.MaxLDAPQueryPartsNumber).toString()); ExtensionsManager.getInstance().load(dirConfig); } @@ -166,6 +166,12 @@ domain = domain.trim(); if (!domain.isEmpty()) { Properties authConfig = new Properties(); + + Properties config = new Properties(); + attachConfigValuesFromDb(config); + config.put("config.change.password.url", blankIfNull(passwordChangeUrlPerDomain.get(domain))); + config.put("config.change.password.msg", blankIfNull(passwordChangeMsgPerDomain.get(domain))); + authConfig.put(Base.ConfigKeys.NAME, String.format("builtin-authn-%1$s", domain)); authConfig.put(Base.ConfigKeys.PROVIDES, Authn.class.getName()); authConfig.put(Base.ConfigKeys.ENABLED, "true"); @@ -175,8 +181,7 @@ "org.ovirt.engine.extensions.aaa.builtin.kerberosldap.KerberosLdapAuthn"); authConfig.put("ovirt.engine.aaa.authn.profile.name", domain); authConfig.put("ovirt.engine.aaa.authn.authz.plugin", domain); - authConfig.put("config.change.password.url", blankIfNull(passwordChangeUrlPerDomain.get(domain))); - authConfig.put("config.change.password.msg", blankIfNull(passwordChangeMsgPerDomain.get(domain))); + authConfig.put("config", config); ExtensionsManager.getInstance().load(authConfig); Properties dirConfig = new Properties(); @@ -186,8 +191,7 @@ dirConfig.put(Base.ConfigKeys.BINDINGS_JBOSSMODULE_MODULE, "org.ovirt.engine.extensions.builtin"); dirConfig.put(Base.ConfigKeys.BINDINGS_JBOSSMODULE_CLASS, "org.ovirt.engine.extensions.aaa.builtin.kerberosldap.KerberosLdapAuthz"); - dirConfig.put("config.query.filter.size", - Config.<Integer> getValue(ConfigValues.MaxLDAPQueryPartsNumber)); + dirConfig.put("config", config); ExtensionsManager.getInstance().load(dirConfig); } } @@ -197,4 +201,25 @@ return value == null ? "" : value; } + private void attachConfigValuesFromDb(Properties props) { + attachConfigValueFromDb(props, ConfigValues.LdapServers); + attachConfigValueFromDb(props, ConfigValues.LDAPServerPort); + attachConfigValueFromDb(props, ConfigValues.AdUserName); + attachConfigValueFromDb(props, ConfigValues.AdUserPassword); + attachConfigValueFromDb(props, ConfigValues.LDAPSecurityAuthentication); + attachConfigValueFromDb(props, ConfigValues.AuthenticationMethod); + attachConfigValueFromDb(props, ConfigValues.LDAPProviderTypes); + attachConfigValueFromDb(props, ConfigValues.LDAPQueryTimeout); + attachConfigValueFromDb(props, ConfigValues.DomainName); + attachConfigValueFromDb(props, ConfigValues.SASL_QOP); + attachConfigValueFromDb(props, ConfigValues.LDAPConnectTimeout); + attachConfigValueFromDb(props, ConfigValues.MaxLDAPQueryPartsNumber); + attachConfigValueFromDb(props, ConfigValues.LDAPOperationTimeout); + attachConfigValueFromDb(props, ConfigValues.LdapQueryPageSize); + } + + private void attachConfigValueFromDb(Properties props, ConfigValues key) { + props.put("config." + key.name(), Config.getValue(key).toString()); + } + } diff --git a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/internal/InternalAuthz.java b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/internal/InternalAuthz.java index 3e28277..9849527 100644 --- a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/internal/InternalAuthz.java +++ b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/internal/InternalAuthz.java @@ -100,6 +100,7 @@ ).mput( Authz.ContextKeys.QUERY_MAX_FILTER_SIZE, configuration.get("config.query.filter.size") + ) ).mput( Base.ContextKeys.BUILD_INTERFACE_VERSION, Base.INTERFACE_VERSION_CURRENT); diff --git a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/DirectorySearchTask.java b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/DirectorySearchTask.java index 5f60c6c..41a874e 100644 --- a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/DirectorySearchTask.java +++ b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/DirectorySearchTask.java @@ -5,8 +5,6 @@ import javax.naming.directory.SearchControls; -import org.ovirt.engine.core.common.config.Config; -import org.ovirt.engine.core.common.config.ConfigValues; import org.springframework.ldap.core.ContextMapperCallbackHandler; public class DirectorySearchTask implements Callable<List<?>> { @@ -37,7 +35,7 @@ controls.setCountLimit(resultcount); // Added this in order to prevent a warning saying: "the returning obj flag wasn't set, setting it to true" controls.setReturningObjFlag(true); - controls.setTimeLimit(Config.<Integer> getValue(ConfigValues.LDAPQueryTimeout) * 1000); + controls.setTimeLimit(Integer.parseInt(Config.getProperty("LDAPQueryTimeout")) * 1000); ldapTemplate.search("", queryExecution.getFilter(), diff --git a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/DirectorySearcher.java b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/DirectorySearcher.java index 7728f3a..3e55f1f 100644 --- a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/DirectorySearcher.java +++ b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/DirectorySearcher.java @@ -7,9 +7,9 @@ import java.util.List; import org.apache.commons.lang.StringUtils; -import org.ovirt.engine.extensions.aaa.builtin.kerberosldap.serverordering.LdapServersOrderingAlgorithmFactory; import org.ovirt.engine.core.utils.log.Log; import org.ovirt.engine.core.utils.log.LogFactory; +import org.ovirt.engine.extensions.aaa.builtin.kerberosldap.serverordering.LdapServersOrderingAlgorithmFactory; public class DirectorySearcher { @@ -21,6 +21,7 @@ private final LdapCredentials ldapCredentials; private Exception ex; + private static final ExceptionHandler<LdapSearchExceptionHandlingResponse, LdapCredentials> handler = new LdapSearchExceptionHandler(); diff --git a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/GSSAPIDirContextAuthenticationStrategy.java b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/GSSAPIDirContextAuthenticationStrategy.java index 764a6fc..99f916e 100644 --- a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/GSSAPIDirContextAuthenticationStrategy.java +++ b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/GSSAPIDirContextAuthenticationStrategy.java @@ -15,8 +15,6 @@ import javax.security.auth.login.LoginContext; import javax.security.auth.login.LoginException; -import org.ovirt.engine.core.common.config.Config; -import org.ovirt.engine.core.common.config.ConfigValues; import org.ovirt.engine.core.utils.kerberos.AuthenticationResult; import org.ovirt.engine.core.utils.kerberos.KerberosReturnCodeParser; import org.ovirt.engine.core.utils.log.Log; @@ -73,7 +71,7 @@ @Override public void setupEnvironment(Hashtable env, String userDn, String password) throws NamingException { env.put(Context.SECURITY_AUTHENTICATION, GSS_API_AUTHENTICATION); - String qopValue = Config.<String>getValue(ConfigValues.SASL_QOP); + String qopValue = Config.getProperty("SASL_QOP"); env.put("javax.security.sasl.qop", qopValue); } diff --git a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/GetRootDSE.java b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/GetRootDSE.java index 640ee94..3b1ba72 100644 --- a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/GetRootDSE.java +++ b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/GetRootDSE.java @@ -12,9 +12,6 @@ import javax.naming.directory.SearchControls; import javax.naming.directory.SearchResult; -import org.apache.commons.lang.StringUtils; -import org.ovirt.engine.core.common.config.Config; -import org.ovirt.engine.core.common.config.ConfigValues; import org.ovirt.engine.core.ldap.LdapProviderType; import org.ovirt.engine.core.utils.log.Log; import org.ovirt.engine.core.utils.log.LogFactory; @@ -59,7 +56,7 @@ searchControls.setSearchScope(queryExecution.getSearchScope()); // Added this in order to prevent a warning saying: "the returning obj flag wasn't set, setting it to true" searchControls.setReturningObjFlag(true); - searchControls.setTimeLimit(Config.<Integer> getValue(ConfigValues.LDAPOperationTimeout) * 1000); + searchControls.setTimeLimit(Integer.parseInt(Config.getProperty("LDAPOperationTimeout")) * 1000); NamingEnumeration<SearchResult> search = ctx.search(queryExecution.getBaseDN(), queryExecution.getFilter(), searchControls); @@ -103,18 +100,6 @@ protected DirContext createContext(Hashtable<String, String> env) throws NamingException { return new InitialDirContext(env); - } - - - private void updateProviderTypeInConfig(String domain, String type) { - String[] types = Config.<String> getValue(ConfigValues.LDAPProviderTypes).split(","); - for (int x = 0; x < types.length; x++) { - if (types[x].startsWith(domain)) { - types[x] = domain + ":" + type; - break; - } - } - Config.getConfigUtils().setStringValue(ConfigValues.LDAPProviderTypes.name(), StringUtils.join(types, ",")); } public Attributes getDomainAttributes(LdapProviderType general, String domain) { diff --git a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/KerberosLdapAuthn.java b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/KerberosLdapAuthn.java index 75cfa20..d0f2d48 100644 --- a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/KerberosLdapAuthn.java +++ b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/KerberosLdapAuthn.java @@ -48,6 +48,7 @@ private void doInit(ExtMap inputMap, ExtMap outputMap) { context = inputMap.<ExtMap> get(Base.InvokeKeys.CONTEXT); configuration = context.<Properties> get(Base.ContextKeys.CONFIGURATION); + Config.setConfiguration((Properties) configuration.get("config")); broker = LdapFactory.getInstance(getAuthzName()); context.<List<String>> get( Base.ContextKeys.CONFIGURATION_SENSITIVE_KEYS diff --git a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/KerberosLdapAuthz.java b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/KerberosLdapAuthz.java index 68dfb19..cad7eea 100644 --- a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/KerberosLdapAuthz.java +++ b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/KerberosLdapAuthz.java @@ -184,6 +184,7 @@ private void doInit(ExtMap inputMap, ExtMap outputMap) { context = inputMap.<ExtMap> get(Base.InvokeKeys.CONTEXT); configuration = context.<Properties> get(Base.ContextKeys.CONFIGURATION); + Config.setConfiguration((Properties) configuration.get("config")); broker = LdapFactory.getInstance(getDirectoryName()); context.mput( Base.ContextKeys.AUTHOR, @@ -201,7 +202,7 @@ "N/A" ).mput( Authz.ContextKeys.QUERY_MAX_FILTER_SIZE, - configuration.get("config.query.filter.size") + Integer.parseInt(Config.getProperty("MaxLDAPQueryPartsNumber")) ).mput( Base.ContextKeys.BUILD_INTERFACE_VERSION, Base.INTERFACE_VERSION_CURRENT); diff --git a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/KerberosManager.java b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/KerberosManager.java index 90f9e03..7082669 100644 --- a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/KerberosManager.java +++ b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/KerberosManager.java @@ -1,7 +1,7 @@ package org.ovirt.engine.extensions.aaa.builtin.kerberosldap; import java.io.File; -import org.ovirt.engine.core.common.config.ConfigValues; + import org.ovirt.engine.core.utils.log.Log; import org.ovirt.engine.core.utils.log.LogFactory; @@ -16,9 +16,9 @@ private boolean isKerberosAuth() { boolean isKerberosAuth = false; - String authMethod = org.ovirt.engine.core.common.config.Config.<String> getValue(ConfigValues.AuthenticationMethod); - String domainName = org.ovirt.engine.core.common.config.Config.<String> getValue(ConfigValues.DomainName); - String ldapSecurityAuthentication = org.ovirt.engine.core.common.config.Config.<String> getValue(ConfigValues.LDAPSecurityAuthentication); + String authMethod = Config.getProperty("AuthenticationMethod"); + String domainName = Config.getProperty("DomainName"); + String ldapSecurityAuthentication = Config.getProperty("LDAPSecurityAuthentication"); if (authMethod.equalsIgnoreCase("LDAP")) { // If there are domains then we need to load the Kerberos configuration in case the LDAP security diff --git a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/LDAPTemplateWrapper.java b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/LDAPTemplateWrapper.java index 3098f10..2224876 100644 --- a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/LDAPTemplateWrapper.java +++ b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/LDAPTemplateWrapper.java @@ -5,8 +5,6 @@ import javax.naming.directory.SearchControls; -import org.ovirt.engine.core.common.config.Config; -import org.ovirt.engine.core.common.config.ConfigValues; import org.ovirt.engine.core.ldap.LdapProviderType; import org.ovirt.engine.core.utils.log.Log; import org.ovirt.engine.core.utils.log.LogFactory; @@ -17,6 +15,7 @@ import org.springframework.ldap.core.support.DirContextAuthenticationStrategy; import org.springframework.ldap.core.support.LdapContextSource; import org.springframework.ldap.core.support.SingleContextSource; + import com.sun.jndi.ldap.LdapCtxFactory; public abstract class LDAPTemplateWrapper { @@ -130,7 +129,7 @@ if (log.isDebugEnabled()) { log.debugFormat("LDAP query is {0}", displayFilter); } - int ldapPageSize = Config.<Integer> getValue(ConfigValues.LdapQueryPageSize); + int ldapPageSize = Integer.parseInt(Config.getProperty("LdapQueryPageSize")); PagedResultsDirContextProcessor requestControl = new PagedResultsDirContextProcessor(ldapPageSize); ldapTemplate.search(baseDN, filter, searchControls, handler, requestControl); PagedResultsCookie cookie = requestControl.getCookie(); diff --git a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/LdapBrokerUtils.java b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/LdapBrokerUtils.java index cb80ec6..f5d51af 100644 --- a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/LdapBrokerUtils.java +++ b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/LdapBrokerUtils.java @@ -12,8 +12,6 @@ import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.exception.ExceptionUtils; -import org.ovirt.engine.core.common.config.Config; -import org.ovirt.engine.core.common.config.ConfigValues; import org.ovirt.engine.core.utils.log.Log; import org.ovirt.engine.core.utils.log.LogFactory; @@ -31,7 +29,7 @@ * @return */ public static List<String> getDomainsList(boolean filterInternalDomain) { - String[] domains = Config.<String> getValue(ConfigValues.DomainName).split("[,]", -1); + String[] domains = Config.getProperty("DomainName").split("[,]", -1); List<String> results = new ArrayList<String>(); for (String domain : domains) { String trimmedDomain = domain.trim(); @@ -40,7 +38,7 @@ } } if (!filterInternalDomain) { - results.add(Config.<String> getValue(ConfigValues.AdminDomain).trim()); + results.add(Config.getProperty("AdminDomain").trim()); } return results; } @@ -211,8 +209,8 @@ * this method adds to hashtable specific ldap configuration. */ public static void addLdapConfigValues(Hashtable<String, String> env){ - env.put("com.sun.jndi.ldap.read.timeout", Long.toString(Config.<Integer> getValue(ConfigValues.LDAPQueryTimeout) * 1000)); - env.put("com.sun.jndi.ldap.connect.timeout", Long.toString(Config.<Integer> getValue(ConfigValues.LDAPConnectTimeout) * 1000)); + env.put("com.sun.jndi.ldap.read.timeout", Long.toString(Integer.parseInt(Config.getProperty("LDAPQueryTimeout")) * 1000)); + env.put("com.sun.jndi.ldap.connect.timeout", Long.toString(Integer.parseInt(Config.getProperty("LDAPConnectTimeout")) * 1000)); } /** diff --git a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/PrepareLdapConnectionTask.java b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/PrepareLdapConnectionTask.java index a943f1e..fc94018 100644 --- a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/PrepareLdapConnectionTask.java +++ b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/PrepareLdapConnectionTask.java @@ -3,8 +3,6 @@ import java.net.URI; import java.util.concurrent.Callable; -import org.ovirt.engine.core.common.config.Config; -import org.ovirt.engine.core.common.config.ConfigValues; import org.ovirt.engine.core.utils.log.Log; import org.ovirt.engine.core.utils.log.LogFactory; import org.ovirt.engine.core.utils.kerberos.AuthenticationResult; @@ -46,7 +44,7 @@ searcher.getExplicitAuth(), searcher.getExplicitBaseDN(), searcher.getDomainObject(domain).getLdapProviderType(), - Config.<Integer> getValue(ConfigValues.LDAPQueryTimeout) * 1000); + Integer.parseInt(Config.getProperty("LDAPQueryTimeout")) * 1000); ldapctx.afterPropertiesSet(); } catch (Exception e) { log.error("Error connecting to directory server", e); diff --git a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/UsersDomainsCacheManagerService.java b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/UsersDomainsCacheManagerService.java index 63bd0ee..d7b643d 100644 --- a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/UsersDomainsCacheManagerService.java +++ b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/UsersDomainsCacheManagerService.java @@ -10,12 +10,10 @@ import org.apache.commons.lang.StringUtils; import org.ovirt.engine.core.common.businessentities.LdapGroup; -import org.ovirt.engine.core.common.config.Config; -import org.ovirt.engine.core.common.config.ConfigValues; import org.ovirt.engine.core.common.utils.EnumUtils; -import org.ovirt.engine.core.utils.collections.DomainsPasswordMap; import org.ovirt.engine.core.ldap.LdapProviderType; import org.ovirt.engine.core.ldap.LdapSRVLocator; +import org.ovirt.engine.core.utils.collections.DomainsPasswordMap; import org.ovirt.engine.core.utils.dns.DnsSRVLocator.DnsSRVResult; import org.ovirt.engine.core.utils.kerberos.AuthenticationResult; import org.ovirt.engine.core.utils.kerberos.KerberosUtils; @@ -23,13 +21,6 @@ import org.ovirt.engine.core.utils.log.LogFactory; -// Here we use a Singleton bean -// The @Startup annotation is to make sure the bean is initialized on startup. -// @ConcurrencyManagement - we use bean managed concurrency: -// Singletons that use bean-managed concurrency allow full concurrent access to all the -// business and timeout methods in the singleton. -// The developer of the singleton is responsible for ensuring that the state of the singleton is synchronized across all clients. -// The @DependsOn annotation is in order to make sure it is started after the stated beans are initialized public class UsersDomainsCacheManagerService implements UsersDomainsCacheManager { private static final Log log = LogFactory.getLog(UsersDomainsCacheManagerService.class); @@ -53,10 +44,10 @@ private static volatile UsersDomainsCacheManagerService instance = null; private void fillLdapServersMap() { - String ldapServerPerDomainEntry = Config.<String> getValue(ConfigValues.LdapServers); + String ldapServerPerDomainEntry = Config.getProperty("LdapServers"); if (!ldapServerPerDomainEntry.isEmpty()) { String[] domainServerPairs = ldapServerPerDomainEntry.split(","); - int ldapPort = Config.<Integer> getValue(ConfigValues.LDAPServerPort); + int ldapPort = Integer.parseInt(Config.getProperty("LDAPServerPort")); for (String domainServerPair : domainServerPairs) { String[] parts = domainServerPair.split(":"); @@ -85,7 +76,7 @@ // use // Note that every change in one will probably require the same change in the other private void fillUsersMap() { - String userPerDomainEntry = Config.<String> getValue(ConfigValues.AdUserName); + String userPerDomainEntry = Config.getProperty("AdUserName"); if (!userPerDomainEntry.isEmpty()) { String[] domainUserPairs = userPerDomainEntry.split(","); @@ -100,12 +91,12 @@ } private void fillPasswordsMap() { - passwordPerDomain = Config.<DomainsPasswordMap> getValue(ConfigValues.AdUserPassword); + passwordPerDomain = new DomainsPasswordMap(Config.getProperty("AdUserPassword")); } private void fillLdapSecurityAuthenticationMap() { - String ldapSecurityAuthEntry = Config.<String> getValue(ConfigValues.LDAPSecurityAuthentication); + String ldapSecurityAuthEntry = Config.getProperty("LDAPSecurityAuthentication"); if (!ldapSecurityAuthEntry.isEmpty()) { String[] ldapSecurityPairs = ldapSecurityAuthEntry.split(","); @@ -124,7 +115,8 @@ public void init() { log.info("Start initializing " + getClass().getSimpleName()); - String authMethod = Config.<String> getValue(ConfigValues.AuthenticationMethod); + + String authMethod = Config.getProperty("AuthenticationMethod"); if (!authMethod.equalsIgnoreCase("LDAP")) { return; } @@ -162,7 +154,7 @@ */ protected Map<String, LdapProviderType> parseLDAPProviders() { Map<String, LdapProviderType> domainProviderTypes = new HashMap<String, LdapProviderType>(); - for (String pair : StringUtils.split(Config.<String> getValue(ConfigValues.LDAPProviderTypes), ",")) { + for (String pair : StringUtils.split(Config.getProperty("LDAPProviderTypes"), ",")) { if (pair != null) { String[] split = StringUtils.split(pair, ":"); if (split != null && split[0] != null && split[1] != null) { @@ -231,7 +223,7 @@ } private void constructLDAPUrlOnDNSFailure(Domain domain) { - int ldapPort = Config.<Integer> getValue(ConfigValues.LDAPServerPort); + int ldapPort = Integer.parseInt(Config.getProperty("LDAPServerPort")); StringBuilder ldapURL = new StringBuilder(); ldapURL.append("ldap://").append(domain.getName()).append(":").append(ldapPort); try { diff --git a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/UsersObjectIdQueryGenerator.java b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/UsersObjectIdQueryGenerator.java index 83b6e6a..802e36e 100644 --- a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/UsersObjectIdQueryGenerator.java +++ b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/UsersObjectIdQueryGenerator.java @@ -6,8 +6,6 @@ import java.util.ArrayList; import java.util.List; -import org.ovirt.engine.core.common.config.Config; -import org.ovirt.engine.core.common.config.ConfigValues; import org.ovirt.engine.core.compat.Guid; /** @@ -16,7 +14,7 @@ public class UsersObjectIdQueryGenerator extends LdapQueryDataGeneratorBase<Guid> { public List<LdapQueryData> getLdapQueriesData(String domain) { - int queryLimit = Config.<Integer> getValue(ConfigValues.MaxLDAPQueryPartsNumber); + int queryLimit = Integer.parseInt("MaxLDAPQueryPartsNumber"); List<LdapQueryData> results = new ArrayList<LdapQueryData>(); LdapQueryData subQueryData = new LdapQueryDataImpl(); diff --git a/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/collections/DomainsPasswordMap.java b/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/collections/DomainsPasswordMap.java index ea9d8c0..d26b319 100644 --- a/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/collections/DomainsPasswordMap.java +++ b/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/collections/DomainsPasswordMap.java @@ -12,6 +12,7 @@ public class DomainsPasswordMap implements Map<String, String> { private final Map<String, String> map; + private String csvOfDomainToPassword; /** * This structure is a map of domains to decrypted password. It initializes from a comma separated list of @@ -23,6 +24,7 @@ * @param certAlias */ public DomainsPasswordMap(String csvOfDomainToPassword) { + this.csvOfDomainToPassword = csvOfDomainToPassword; if (!csvOfDomainToPassword.isEmpty()) { String[] domainPasswordPairs = csvOfDomainToPassword.split(","); map = new HashMap<String, String>(domainPasswordPairs.length); @@ -43,6 +45,10 @@ } } + public String toString() { + return csvOfDomainToPassword; + } + @Override public int size() { return map.size(); -- To view, visit http://gerrit.ovirt.org/27607 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I1384a99f73ab605b61bce8dcdfd63e222b0001fa Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Yair Zaslavsky <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
