Errore di timeout nel LDAP | AEM Oak

Problema

Hai configurato l'autenticazione di LDAP tramite AEM [1] e non consente l'accesso agli utenti LDAP.  Vedrai il messaggio di log qui sotto:

Caused by: org.apache.directory.api.ldap.model.exception.LdapException: TimeOut occurred
at org.apache.directory.ldap.client.api.LdapNetworkConnection.writeRequest(LdapNetworkConnection.java:4106)
at org.apache.directory.ldap.client.api.LdapNetworkConnection.bindAsync(LdapNetworkConnection.java:1290)
at org.apache.directory.ldap.client.api.LdapNetworkConnection.bind(LdapNetworkConnection.java:1188)
at org.apache.directory.ldap.client.api.AbstractLdapConnection.bind(AbstractLdapConnection.java:127)
at org.apache.directory.ldap.client.api.AbstractLdapConnection.bind(AbstractLdapConnection.java:112)
at org.apache.directory.ldap.client.api.DefaultLdapConnectionFactory.bindConnection(DefaultLdapConnectionFactory.java:64)
at org.apache.directory.ldap.client.api.DefaultLdapConnectionFactory.newLdapConnection(DefaultLdapConnectionFactory.java:107)
at org.apache.directory.ldap.client.api.ValidatingPoolableLdapConnectionFactory.makeObject(ValidatingPoolableLdapConnectionFactory.java:133)
at org.apache.directory.ldap.client.api.ValidatingPoolableLdapConnectionFactory.makeObject(ValidatingPoolableLdapConnectionFactory.java:59)
at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:1188)
at org.apache.directory.ldap.client.api.LdapConnectionPool.getConnection(LdapConnectionPool.java:123)
at org.apache.jackrabbit.oak.security.authentication.ldap.impl.LdapIdentityProvider.connect(LdapIdentityProvider.java:771)
... 57 common frames omitted

Causa

L'errore di scadenza di solito indica che il server LDAP o non può essere raggiunto da AEM a causa di un firewall, non può essere raggiunto (problema di rete), è guasto o non risponde.

Risoluzione

Per risolvere il problema, è necessario eseguire il debug della connessione da AEM al server LDAP.  Ecco alcune cose da controllare:

  • Verifica che il server LDAP sia accessibile da macchine diverse dal server AEM utilizzando un browser LDAP come JXplorer.  Se non è accessibile, potrebbe essere guasto o potrebbe esserci un problema di rete o di firewall. Contatta il team delle operazioni di rete e il team che gestisce i server LDAP per indagare.
  • Se è possibile accedere al server LDAP da altre macchine, testalo dal sistema operativo del server AEM.  Installa un client LDAP sul sistema operativo del server AEM e prova ad accedere al server ldap da lì.  Su Linux, è possibile utilizzare il comando ldapsearch.  Su Windows, utilizza JXplorer.
  • Se il server può raggiungere il server LDAP, ma l'accesso basato su LDAP di AEM non riesce, dobbiamo controllare la configurazione "LDAP Identity Provider".  Accedi alla Web Console OSGi (http://aem-host:port/system/console/configMgr) e cerca "Apache Jackrabbit Oak LDAP Identity Provider".  Puoi provare alcune cose per risolvere il problema:
    • Ottimizzare la "User base DN", "User extra filter", "Group base DN" e "Group extra filter" perché il filtro di ricerca restituisca solo gli utenti e i gruppi rilevanti a AEM.
    • Assicurati che la "Bind DN" e la "Bind password" siano corrette
    • Deseleziona "Admin pool lookup on validate" e "User pool lookup on validate."
    • Aumenta il "Timeout ricerca"

Schermata della configurazione di LDAP Identity Provider:

  • Nel caso della maggior parte dei clienti aziendali, LDAP è spesso bilanciato dal load. Puoi incontrare questo problema se il load balancer seduto di fronte ai server LDAP ha messo in blacklist il tuo IP AEM Server IP per qualche motivo. Se si verifica questo problema, coinvolgi il team LDAP per risolverlo. Come test rapido, potresti voler colpire l'IP del server LDAP bypassando direttamente il load balancer LDAP per vedere se l'autenticazione LDAP in AEM ha successo.
Logo Adobe

Accedi al tuo account