Uploaded image for project: 'WildFly Core'
  1. WildFly Core
  2. WFCORE-5643

LDAP Direct Verification failure when not using ssl-context

XMLWordPrintable

    • Icon: Task Task
    • Resolution: Not a Bug
    • Icon: Major Major
    • None
    • None
    • None
    • None

      A community user was having trouble configuring the LDAP realm to not have an authentication-context linked to the dir-context when creating an LDAP realm with direct-verification and blank-password set to true.

      I verified that it was not working for me too by removing the ssl-context from the authentication-context, and running this test case.
      I get the error

      [ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.822 s <<< FAILURE! - in org.wildfly.extension.elytron.LdapTestCase
      [ERROR] testLdapRealmDirectVerification(org.wildfly.extension.elytron.LdapTestCase) Time elapsed: 0.82 s <<< ERROR!
      org.wildfly.security.auth.server.RealmUnavailableException: ELY01125: Ldap-backed realm failed to obtain context
      at org.wildfly.security.auth.realm.ldap.LdapSecurityRealm.obtainContext(LdapSecurityRealm.java:223)
      at org.wildfly.security.auth.realm.ldap.LdapSecurityRealm.access$600(LdapSecurityRealm.java:104)
      at org.wildfly.security.auth.realm.ldap.LdapSecurityRealm$LdapRealmIdentity.exists(LdapSecurityRealm.java:638)
      at org.wildfly.extension.elytron.LdapTestCase.testLdapRealmDirectVerification(LdapTestCase.java:305)
      Caused by: javax.naming.NamingException: LDAP connection has been closed
      at java.naming/com.sun.jndi.ldap.LdapRequest.getReplyBer(LdapRequest.java:133)
      at java.naming/com.sun.jndi.ldap.Connection.readReply(Connection.java:443)
      at java.naming/com.sun.jndi.ldap.LdapClient.ldapBind(LdapClient.java:365)
      at java.naming/com.sun.jndi.ldap.LdapClient.authenticate(LdapClient.java:214)
      at java.naming/com.sun.jndi.ldap.LdapCtx.connect(LdapCtx.java:2895)
      at java.naming/com.sun.jndi.ldap.LdapCtx.<init>(LdapCtx.java:348)
      at java.naming/com.sun.jndi.ldap.LdapCtxFactory.getLdapCtxFromUrl(LdapCtxFactory.java:262)
      at java.naming/com.sun.jndi.ldap.LdapCtxFactory.getUsingURL(LdapCtxFactory.java:226)
      at java.naming/com.sun.jndi.ldap.LdapCtxFactory.getUsingURLs(LdapCtxFactory.java:280)
      at java.naming/com.sun.jndi.ldap.LdapCtxFactory.getLdapCtxInstance(LdapCtxFactory.java:185)
      at java.naming/com.sun.jndi.ldap.LdapCtxFactory.getInitialContext(LdapCtxFactory.java:115)
      at java.naming/javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:730)
      at java.naming/javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:305)
      at java.naming/javax.naming.InitialContext.init(InitialContext.java:236)
      at java.naming/javax.naming.ldap.InitialLdapContext.<init>(InitialLdapContext.java:154)
      at org.wildfly.security.auth.realm.ldap.SimpleDirContextFactoryBuilder$SimpleDirContextFactory.createDirContext(SimpleDirContextFactoryBuilder.java:431)
      at org.wildfly.security.auth.realm.ldap.SimpleDirContextFactoryBuilder$SimpleDirContextFactory.obtainDirContext(SimpleDirContextFactoryBuilder.java:350)
      at org.wildfly.extension.elytron.DirContextDefinition.lambda$obtainDirContextSupplier$0(DirContextDefinition.java:228)
      at org.wildfly.extension.elytron.LdapRealmDefinition$RealmAddHandler.lambda$configureDirContext$0(LdapRealmDefinition.java:490)
      at org.wildfly.security.auth.realm.ldap.LdapSecurityRealm.obtainContext(LdapSecurityRealm.java:211)
      ... 3 more

      This was the community user question that prompted the test: https://groups.google.com/g/wildfly/c/8f5AAcoU7HY

              lvydra Lukas Vydra
              araskar@redhat.com Ashpan Raskar (Inactive)
              Votes:
              1 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: