Skip to content

Commit 2a35c13

Browse files
committed
Miscellaneous fixes for LDAP SDK v6 upgrade
This commit makes a few changes to LDAP testing to improve the stability of tests on UnboudID LDAP SDK v6 Backport of: elastic#79891
1 parent e6d4fad commit 2a35c13

File tree

4 files changed

+10
-6
lines changed

4 files changed

+10
-6
lines changed

x-pack/plugin/security/src/test/java/org/elasticsearch/xpack/security/authc/ldap/LdapRealmTests.java

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -435,10 +435,11 @@ public void testLdapRealmMapsUserDNToRole() throws Exception {
435435
PlainActionFuture<AuthenticationResult<User>> future = new PlainActionFuture<>();
436436
ldap.authenticate(new UsernamePasswordToken("Horatio Hornblower", new SecureString(PASSWORD)), future);
437437
final AuthenticationResult<User> result = future.actionGet();
438-
assertThat(result.getStatus(), is(AuthenticationResult.Status.SUCCESS));
438+
assertThat(result, notNullValue());
439+
assertThat(result.toString(), result.getStatus(), is(AuthenticationResult.Status.SUCCESS));
439440
User user = result.getValue();
440441
assertThat(user, notNullValue());
441-
assertThat(user.roles(), arrayContaining("avenger"));
442+
assertThat(user.toString(), user.roles(), arrayContaining("avenger"));
442443
}
443444

444445
/**
@@ -530,7 +531,8 @@ protected void loadMappings(ActionListener<List<ExpressionRoleMapping>> listener
530531
PlainActionFuture<AuthenticationResult<User>> future = new PlainActionFuture<>();
531532
ldap.authenticate(new UsernamePasswordToken("Horatio Hornblower", new SecureString(PASSWORD)), future);
532533
final AuthenticationResult<User> result = future.actionGet();
533-
assertThat(result.getStatus(), is(AuthenticationResult.Status.SUCCESS));
534+
assertThat(result, notNullValue());
535+
assertThat(result.toString(), result.getStatus(), is(AuthenticationResult.Status.SUCCESS));
534536
User user = result.getValue();
535537
assertThat(user, notNullValue());
536538
assertThat(user.roles(), arrayContainingInAnyOrder("_user_hhornblo", "sales_admin"));
@@ -560,7 +562,8 @@ public void testLdapConnectionFailureIsTreatedAsAuthenticationFailure() throws E
560562
PlainActionFuture<AuthenticationResult<User>> future = new PlainActionFuture<>();
561563
ldap.authenticate(new UsernamePasswordToken(VALID_USERNAME, new SecureString(PASSWORD)), future);
562564
final AuthenticationResult<User> result = future.actionGet();
563-
assertThat(result.getStatus(), is(AuthenticationResult.Status.CONTINUE));
565+
assertThat(result, notNullValue());
566+
assertThat(result.toString(), result.getStatus(), is(AuthenticationResult.Status.CONTINUE));
564567
assertThat(result.getValue(), nullValue());
565568
assertThat(result.getMessage(), is("authenticate failed"));
566569
assertThat(result.getException(), notNullValue());

x-pack/plugin/security/src/test/java/org/elasticsearch/xpack/security/authc/ldap/SearchGroupsResolverInMemoryTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ public class SearchGroupsResolverInMemoryTests extends LdapTestCase {
4747
@After
4848
public void closeConnection() {
4949
if (connection != null) {
50-
connection.close();
50+
connection.closeWithoutUnbind();
5151
}
5252
}
5353

x-pack/plugin/security/src/test/java/org/elasticsearch/xpack/security/authc/ldap/support/LdapServerDebugLogging.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ protected void failed(Throwable e, Description description) {
5252
}
5353

5454
public void configure(InMemoryDirectoryServerConfig config) {
55+
targetLogger.info("Configuring debug logging for LDAP server [{}]", config);
5556
config.setLDAPDebugLogHandler(logHandler);
5657
}
5758

x-pack/plugin/security/src/test/java/org/elasticsearch/xpack/security/authc/ldap/support/LdapTestCase.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ void tryConnect(InMemoryDirectoryServer ds) {
156156
AccessController.doPrivileged((PrivilegedExceptionAction<Void>) () -> {
157157
try (var c = ds.getConnection()) {
158158
assertThat("Failed to connect to " + ds + " - ", c.isConnected(), is(true));
159-
logger.info("Test connection to [{}] was successful ({})", ds, c);
159+
logger.info("Test connection to [{}](port {}) was successful ({})", ds, ds.getListenPort(), c);
160160
} catch (LDAPException e) {
161161
throw new AssertionError("Failed to connect to " + ds, e);
162162
}

0 commit comments

Comments
 (0)