From fbe5957c23808ab021de4a9a8701fcf73396656d Mon Sep 17 00:00:00 2001 From: Luke Taylor Date: Fri, 27 Jan 2006 18:28:13 +0000 Subject: [PATCH] Add support for ldaps:// urls. (Fix for SEC-146). --- .../providers/ldap/DefaultInitialDirContextFactory.java | 2 +- .../ldap/DefaultInitialDirContextFactoryTests.java | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/org/acegisecurity/providers/ldap/DefaultInitialDirContextFactory.java b/core/src/main/java/org/acegisecurity/providers/ldap/DefaultInitialDirContextFactory.java index b9c5b3c31b..2e99c48ec6 100644 --- a/core/src/main/java/org/acegisecurity/providers/ldap/DefaultInitialDirContextFactory.java +++ b/core/src/main/java/org/acegisecurity/providers/ldap/DefaultInitialDirContextFactory.java @@ -129,7 +129,7 @@ public class DefaultInitialDirContextFactory implements InitialDirContextFactory Assert.hasLength(url, "An LDAP connection URL must be supplied."); - if (url.startsWith("ldap:")) { + if (url.startsWith("ldap:") || url.startsWith("ldaps:")) { URI uri = LdapUtils.parseLdapUrl(url); diff --git a/core/src/test/java/org/acegisecurity/providers/ldap/DefaultInitialDirContextFactoryTests.java b/core/src/test/java/org/acegisecurity/providers/ldap/DefaultInitialDirContextFactoryTests.java index e4d9955590..a3974e5ea1 100644 --- a/core/src/test/java/org/acegisecurity/providers/ldap/DefaultInitialDirContextFactoryTests.java +++ b/core/src/test/java/org/acegisecurity/providers/ldap/DefaultInitialDirContextFactoryTests.java @@ -40,6 +40,12 @@ public class DefaultInitialDirContextFactoryTests extends AbstractLdapServerTest } + public void testSecureLdapUrlIsSupported() { + idf = new DefaultInitialDirContextFactory("ldaps://localhost/dc=acegisecurity,dc=org"); + assertEquals("dc=acegisecurity,dc=org", idf.getRootDn()); + } + + public void testConnectionFailure() throws Exception { // Use the wrong port idf = new DefaultInitialDirContextFactory("ldap://localhost:60389");