Martin Peřina has uploaded a new change for review. Change subject: aaa: Convert list of ldap server names to URIs ......................................................................
aaa: Convert list of ldap server names to URIs Convert list of ldap server names contained in ConfigValue.LdapServers to list of URIs stored in extension config under key "config.LdapServers" during kerberosldap extension startup. Change-Id: Ic436192e0072af09c4be1cfaa78c9e5bb66743ad Bug-Url: https://bugzilla.redhat.com/1111071 Signed-off-by: Martin Perina <[email protected]> --- M backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/Utils.java 1 file changed, 14 insertions(+), 8 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/71/28971/1 diff --git a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/Utils.java b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/Utils.java index 4a75327..3007daa 100644 --- a/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/Utils.java +++ b/backend/manager/modules/builtin-extensions/src/main/java/org/ovirt/engine/extensions/aaa/builtin/kerberosldap/Utils.java @@ -8,7 +8,6 @@ import java.util.List; import java.util.Map; import java.util.Properties; - import javax.naming.spi.DirectoryManager; import javax.security.auth.login.Configuration; @@ -34,26 +33,33 @@ throw new RuntimeException(e); } } - if (StringUtils.isBlank(conf.getProperty("config.LdapServers"))) { - try { - LdapSRVLocator locator = new LdapSRVLocator(); + List<String> ldapServers = new ArrayList<>(); + LdapSRVLocator locator = new LdapSRVLocator(); + try { + if (StringUtils.isBlank(conf.getProperty("config.LdapServers"))) { + // list of LDAP servers is empty, find LDAP servers using DNS SRV records and convert them + // into the list of URIs DnsSRVResult results = locator.getLdapServers(domain); if (results == null || results.getNumOfValidAddresses() == 0) { throw new Exception(String.format("No ldap servers were found for domain %1$s", domain)); } else { - List<String> ldapServers = new ArrayList<>(); for (int counter = 0; counter < results.getNumOfValidAddresses(); counter++) { String address = results.getAddresses()[counter]; String ldapURI = locator.constructURI("ldap", address, "389").toString(); ldapServers.add(ldapURI); } - conf.setProperty("config.LdapServers", StringUtils.join(ldapServers, ";")); } - } catch (Exception ex) { - throw new RuntimeException(ex); + } else { + // list of LDAP servers was entered, convert them to URIs + for (String server : conf.getProperty("config.LdapServers").split(";")) { + ldapServers.add(locator.constructURI("ldap", server, "389").toString()); + } } + } catch (Exception ex) { + throw new RuntimeException(ex); } + conf.setProperty("config.LdapServers", StringUtils.join(ldapServers, ";")); } private static void putIfAbsent(Properties props, String key, String value) { -- To view, visit http://gerrit.ovirt.org/28971 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ic436192e0072af09c4be1cfaa78c9e5bb66743ad Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Martin Peřina <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
