Upgrade to Spring Ldap 2.3.3.RELEASE

Closes gh-21342
This commit is contained in:
Stephane Nicoll 2020-05-07 14:11:24 +02:00
parent 66afe280cb
commit 1a4f6df0a3
3 changed files with 20 additions and 10 deletions

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2019 the original author or authors. * Copyright 2012-2020 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -56,9 +56,10 @@ public class LdapProperties {
private String password; private String password;
/** /**
* Whether read-only operations should use an anonymous environment. * Whether read-only operations should use an anonymous environment. Disabled by
* default unless a username is set.
*/ */
private boolean anonymousReadOnly; private Boolean anonymousReadOnly;
/** /**
* LDAP specification settings. * LDAP specification settings.
@ -97,11 +98,11 @@ public class LdapProperties {
this.password = password; this.password = password;
} }
public boolean getAnonymousReadOnly() { public Boolean getAnonymousReadOnly() {
return this.anonymousReadOnly; return this.anonymousReadOnly;
} }
public void setAnonymousReadOnly(boolean anonymousReadOnly) { public void setAnonymousReadOnly(Boolean anonymousReadOnly) {
this.anonymousReadOnly = anonymousReadOnly; this.anonymousReadOnly = anonymousReadOnly;
} }

View File

@ -1,5 +1,5 @@
/* /*
* Copyright 2012-2019 the original author or authors. * Copyright 2012-2020 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -48,7 +48,7 @@ public class LdapAutoConfigurationTests {
LdapContextSource contextSource = context.getBean(LdapContextSource.class); LdapContextSource contextSource = context.getBean(LdapContextSource.class);
String[] urls = getUrls(contextSource); String[] urls = getUrls(contextSource);
assertThat(urls).containsExactly("ldap://localhost:389"); assertThat(urls).containsExactly("ldap://localhost:389");
assertThat(contextSource.isAnonymousReadOnly()).isFalse(); assertThat(contextSource.isAnonymousReadOnly()).isTrue();
}); });
} }
@ -73,6 +73,15 @@ public class LdapAutoConfigurationTests {
}); });
} }
@Test
public void contextSourceWithUserDoesNotEnableAnonymousReadOnly() {
this.contextRunner.withPropertyValues("spring.ldap.username:root").run((context) -> {
LdapContextSource contextSource = context.getBean(LdapContextSource.class);
assertThat(contextSource.getUserDn()).isEqualTo("root");
assertThat(contextSource.isAnonymousReadOnly()).isFalse();
});
}
@Test @Test
public void contextSourceWithExtraCustomization() { public void contextSourceWithExtraCustomization() {
this.contextRunner.withPropertyValues("spring.ldap.urls:ldap://localhost:123", "spring.ldap.username:root", this.contextRunner.withPropertyValues("spring.ldap.urls:ldap://localhost:123", "spring.ldap.username:root",
@ -96,7 +105,7 @@ public class LdapAutoConfigurationTests {
LdapContextSource contextSource = context.getBean(LdapContextSource.class); LdapContextSource contextSource = context.getBean(LdapContextSource.class);
assertThat(contextSource.getUserDn()).isEqualTo(""); assertThat(contextSource.getUserDn()).isEqualTo("");
assertThat(contextSource.getPassword()).isEqualTo(""); assertThat(contextSource.getPassword()).isEqualTo("");
assertThat(contextSource.isAnonymousReadOnly()).isFalse(); assertThat(contextSource.isAnonymousReadOnly()).isTrue();
assertThat(contextSource.getBaseLdapPathAsString()).isEqualTo(""); assertThat(contextSource.getBaseLdapPathAsString()).isEqualTo("");
}); });
} }
@ -113,7 +122,7 @@ public class LdapAutoConfigurationTests {
LdapContextSource contextSource = context.getBean(LdapContextSource.class); LdapContextSource contextSource = context.getBean(LdapContextSource.class);
String[] urls = getUrls(contextSource); String[] urls = getUrls(contextSource);
assertThat(urls).containsExactly("ldap://localhost:389"); assertThat(urls).containsExactly("ldap://localhost:389");
assertThat(contextSource.isAnonymousReadOnly()).isFalse(); assertThat(contextSource.isAnonymousReadOnly()).isTrue();
}); });
} }

View File

@ -174,7 +174,7 @@
<spring-hateoas.version>0.25.2.RELEASE</spring-hateoas.version> <spring-hateoas.version>0.25.2.RELEASE</spring-hateoas.version>
<spring-integration.version>5.1.10.RELEASE</spring-integration.version> <spring-integration.version>5.1.10.RELEASE</spring-integration.version>
<spring-kafka.version>2.2.13.RELEASE</spring-kafka.version> <spring-kafka.version>2.2.13.RELEASE</spring-kafka.version>
<spring-ldap.version>2.3.2.RELEASE</spring-ldap.version> <spring-ldap.version>2.3.3.RELEASE</spring-ldap.version>
<spring-plugin.version>1.2.0.RELEASE</spring-plugin.version> <spring-plugin.version>1.2.0.RELEASE</spring-plugin.version>
<spring-restdocs.version>2.0.4.RELEASE</spring-restdocs.version> <spring-restdocs.version>2.0.4.RELEASE</spring-restdocs.version>
<spring-retry.version>1.2.5.RELEASE</spring-retry.version> <spring-retry.version>1.2.5.RELEASE</spring-retry.version>