25 de marzo de 2020

:: Liferay. Error Configuración de autenticación a través del LDAP: invalid attribute description; remaining name

En Liferay es posible definir el proceso de autenticación a través de nuestro Directorio Activo Corporativo (LDAP). En este caso, u únicamente a modo de recordario sobre un problema -que al final era una tontería- pero que nos llevó un poco de tiempo localizar.

Tras llevar a cabo la definición -desde el panel de control de Liferay- del servidor LDAP y mapeo de los campos correspondientes, verificando que la prueba de conexión era correcta, a la hora de pulsar el botón: "Probar la configuración de usuarios LDAP", no devolvía ningún resultado y los logs se observaba la siguiente traza:


ERROR [ajp-bio-8009-exec-19][IncludeTag:129] Current URL /group/control_panel/manage?p_p_id=130&p_p_lifecycle=0&p_p_state=exclusive&p_p_mode=view&refererPlid=22323&_130_struts_action=%2Fportal_settings%2Ftest_ldap_users generates exception: javax.naming.directory.InvalidSearchFilterException: invalid attribute description; remaining name 'OU=Plantilla, OU=XXXXXXXX, DC=XXXXXXXX, DC=XXXXX'

javax.naming.directory.InvalidSearchFilterException: invalid attribute description; remaining name 'OU=Plantilla, OU=XXXXXXXX, DC=XXXXXXXX, DC=XXXXX'

        at com.sun.jndi.ldap.Filter.encodeSimpleFilter(Filter.java:446)

        at com.sun.jndi.ldap.Filter.encodeFilter(Filter.java:146)

        at com.sun.jndi.ldap.Filter.encodeFilterString(Filter.java:74)

        at com.sun.jndi.ldap.LdapClient.search(LdapClient.java:547)

        at com.sun.jndi.ldap.LdapCtx.doSearch(LdapCtx.java:1985)

        at com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1847)

        at com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1772)

        at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.java:386)

        at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:356)

        at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:339)

        at javax.naming.directory.InitialDirContext.search(InitialDirContext.java:267)

        at com.liferay.portal.security.ldap.PortalLDAPUtil.searchLDAP(PortalLDAPUtil.java:820)

        at com.liferay.portal.security.ldap.PortalLDAPUtil.getUsers(PortalLDAPUtil.java:617)

        at org.apache.jsp.html.portlet.portal_005fsettings.test_005fldap_005fusers_jsp._jspService(test_005fldap_005fusers_jsp.java:677)

        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)

        at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)

        at com.liferay.portal.servlet.DirectRequestDispatcher.include(DirectRequestDispatcher.java:57)

        at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.doDispatch(ClassLoaderRequestDispatcherWrapper.java:78)

        at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.include(ClassLoaderRequestDispatcherWrapper.java:53)

        at com.liferay.taglib.util.IncludeTag.include(IncludeTag.java:295)


En nuestro caso el problema era que en el campo: "Filtro de búsqueda para la importación", habíamos puesto -debido a una modificación-: "((objectClass=Person))", cuando debería ser: "(objectClass=Person)", es decir, sobraría el "doble paréntesis".


No hay comentarios:

Publicar un comentario

Déjanos tu comentario

:: Cookies de nuestra página web. ¿Para qué sirve cada una?

A menudo una pregunta que nos hacen es qué cookies se están utilizando en mi página y para qué sirven. Para ver las cookies, podemos selecci...