From 7d22407fa842604be25ffdaafe88c6c6c8e9d475 Mon Sep 17 00:00:00 2001 From: James Moger Date: Fri, 16 Aug 2013 08:57:05 -0400 Subject: [PATCH] Fixed anonymous LDAP logins (issue-297) --- releases.moxie | 2 ++ .../java/com/gitblit/LdapUserService.java | 19 +++++++++++++++---- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/releases.moxie b/releases.moxie index 5400234a..e28b83f8 100644 --- a/releases.moxie +++ b/releases.moxie @@ -12,6 +12,7 @@ r19: { fixes: - Fixed Gitblit Authority startup failures when using alternate user services (issue-280) - Manually redirect after branch deletion (issue 282) + - Fixed anonymous LDAP connections (issue-297) - Improved branch deletion-reflog interaction - Encode page url parameters as UTF-8 - Encode filename for binary files on RawPage according to browser @@ -28,6 +29,7 @@ r19: { - Doug Ayers - Ori Livneh - Florian Zschocke + - Tito Nobre settings: - { name: 'web.activityDurationMaximum', defaultValue: 30 } - { name: 'realm.htpasswd.userFile', defaultValue: '${baseFolder}/htpasswd' } diff --git a/src/main/java/com/gitblit/LdapUserService.java b/src/main/java/com/gitblit/LdapUserService.java index 39d564dd..b65f9bb7 100644 --- a/src/main/java/com/gitblit/LdapUserService.java +++ b/src/main/java/com/gitblit/LdapUserService.java @@ -170,13 +170,24 @@ public class LdapUserService extends GitblitUserService { if (ldapPort == -1) // Default Port ldapPort = 636; - SSLUtil sslUtil = new SSLUtil(new TrustAllTrustManager()); - return new LDAPConnection(sslUtil.createSSLSocketFactory(), ldapUrl.getHost(), ldapPort, bindUserName, bindPassword); + LDAPConnection conn; + SSLUtil sslUtil = new SSLUtil(new TrustAllTrustManager()); + if (StringUtils.isEmpty(bindUserName) && StringUtils.isEmpty(bindPassword)) { + conn = new LDAPConnection(sslUtil.createSSLSocketFactory(), ldapUrl.getHost(), ldapPort); + } else { + conn = new LDAPConnection(sslUtil.createSSLSocketFactory(), ldapUrl.getHost(), ldapPort, bindUserName, bindPassword); + } + return conn; } else { if (ldapPort == -1) // Default Port ldapPort = 389; - - LDAPConnection conn = new LDAPConnection(ldapUrl.getHost(), ldapPort, bindUserName, bindPassword); + + LDAPConnection conn; + if (StringUtils.isEmpty(bindUserName) && StringUtils.isEmpty(bindPassword)) { + conn = new LDAPConnection(ldapUrl.getHost(), ldapPort); + } else { + conn = new LDAPConnection(ldapUrl.getHost(), ldapPort, bindUserName, bindPassword); + } if (ldapUrl.getScheme().equalsIgnoreCase("ldap+tls")) { SSLUtil sslUtil = new SSLUtil(new TrustAllTrustManager()); -- 2.39.5