Problem

Die LDAP-Anmeldung schlägt fehl, nachdem die LDAP-Authentifizierung in AEM konfiguriert wurde. In der Datei „error.log“ sehen Benutzer einen ähnlichen Fehler wie den folgenden:

23.01.2017 16:02:48.411 *ERROR* [qtp627435238-105] org.apache.jackrabbit.oak.spi.security.authentication.external.impl.ExternalLoginModule Error while authenticating 'user001' with ldap
org.apache.jackrabbit.oak.spi.security.authentication.external.ExternalIdentityException: Error while binding user credentials
    at org.apache.jackrabbit.oak.security.authentication.ldap.impl.LdapIdentityProvider.authenticate(LdapIdentityProvider.java:375)
    at org.apache.jackrabbit.oak.spi.security.authentication.external.impl.ExternalLoginModule.login(ExternalLoginModule.java:221)
    at org.apache.felix.jaas.boot.ProxyLoginModule.login(ProxyLoginModule.java:52)
    at sun.reflect.GeneratedMethodAccessor32.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at javax.security.auth.login.LoginContext.invoke(LoginContext.java:755)
    at javax.security.auth.login.LoginContext.access$000(LoginContext.java:195)
    at javax.security.auth.login.LoginContext$4.run(LoginContext.java:682)
    at javax.security.auth.login.LoginContext$4.run(LoginContext.java:680)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:680)
    at javax.security.auth.login.LoginContext.login(LoginContext.java:587)
    at org.apache.jackrabbit.oak.core.ContentRepositoryImpl.login(ContentRepositoryImpl.java:165)
    at org.apache.jackrabbit.oak.jcr.repository.RepositoryImpl.login(RepositoryImpl.java:280)
    at com.adobe.granite.repository.impl.CRX3RepositoryImpl.login(CRX3RepositoryImpl.java:94)
Caused by: java.util.NoSuchElementException: Could not create a validated object, cause: ValidateObject failed
    at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:1233)
    at org.apache.jackrabbit.oak.security.authentication.ldap.impl.UnboundLdapConnectionPool.getConnection(UnboundLdapConnectionPool.java:46)
    at org.apache.jackrabbit.oak.security.authentication.ldap.impl.LdapIdentityProvider.authenticate(LdapIdentityProvider.java:364)
    ... 55 common frames omitted

Umgebung

AEM 6.x

Ursache

Der LDAP-Server oder seine Konfiguration funktioniert nicht mit der Validierungsabfrage, die vom „Apache Jackrabbit Oak LDAP-Identitätsprovider“ verwendet wird.

Lösung

Um das Problem zu beheben, deaktivieren Sie die Abfragen, wie es in den folgenden Schritten beschrieben ist:

  1. Gehen Sie auf http://aem-host:port/system/console/configMgr und melden Sie sich als Administator an.

  2. Suchen Sie den LdapIdentityProvider, und klicken Sie darauf, um die Konfiguration zu öffnen.

  3. Deaktivieren Sie die folgenden Kontrollkästchen:

    • Admin pool lookup on validate
    • User pool lookup on validate
  4. Speichern.

Dieses Werk unterliegt den Bedingungen der Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.  Twitter™- und Facebook-Beiträge fallen nicht unter die Bedingungen der Creative Commons-Lizenz.

Rechtliche Hinweise   |   Online-Datenschutzrichtlinie