Message Boards

Conexión segura con LDAP

Guillermo Díaz Lorenzo, modified 3 Years ago.

Conexión segura con LDAP

New Member Posts: 4 Join Date: 5/7/20 Recent Posts
Buenas a todos,
Estoy tratando de realizar un desarrollo a medida en Liferay 7.0 CE GA7 sobre el cual necesito interactuar con LDAP por medio de una conexión segura TLS/SSL, para ello se han instalado los certificados SSL de la manera que indica la documentación oficial (https://help.liferay.com/hc/en-us/articles/360017896112-LDAP#security) y se ha configurado correctamente el protocolo y el puerto desde la configuración del propio Liferay, el cual realiza la conexión segura correctamente.
El problema recae, al tratar de recuperar el 'context' del LDAP por medio de código mediante los mecanismos que la api de Liferay proporciona y con los valores establecidos en la configuracion este es incapaz de conectarse al LDAP, adjunto un trozo del codigo:
        LDAPServerConfiguration ldapServerConfiguration = _ldapServerConfigurationProvider.getConfiguration(user.getCompanyId());
        
        long ldapServerId = ldapServerConfiguration.ldapServerId();
        LdapContext ctx = null;
        try {
            ctx = _defaultPortalLDAP.getContext(ldapServerConfiguration.companyId(), ldapServerConfiguration.baseProviderURL(),                  ldapServerConfiguration.securityPrincipal(), ldapServerConfiguration.securityCredential());
        } catch (Exception e) {
        }
¿Alguien le ha ocurrido algo similar?

Un saludo.
thumbnail
Sergio Sánchez, modified 3 Years ago.

RE: Conexión segura con LDAP

Regular Member Posts: 143 Join Date: 7/6/11 Recent Posts
Hola Guillermo, ¿se muestra algún error en logs?

Veo que no tratas  la excepción en tu código. Trátala con una traza de error, por si se estuviera generando un error y no quede ignorada con el código que tienes.
Guillermo Díaz Lorenzo, modified 3 Years ago.

RE: Conexión segura con LDAP

New Member Posts: 4 Join Date: 5/7/20 Recent Posts
Buenas Sergio,Cabe decir que el código anterior es un resumen a modo de ejemplo donde se produce el error.Y si se muestra el siguiente error: "[DefaultPortalLDAP:157] Unable to bind to the LDAP server", por  lo que entiendo que no es capaz a alcanzar el servidor.
También comentar que he inspeccionado todos los parámetros que se le pasan al método getContext() y llegan con los  valores correctos. 
Un saludo.
thumbnail
Sergio Sánchez, modified 3 Years ago.

RE: Conexión segura con LDAP

Regular Member Posts: 143 Join Date: 7/6/11 Recent Posts
Ah genial que estés depurando!

Estaba viendo el código de la clase DefaultPortalLDAP.java y dos líneas más abajo mostraría una traza de DEBUG.
Tendrás que activar el nivel de DEBUG para esa clase a través del Pane de Control > Configuración > Administración del servidor > Niveles de trazas
A ver si así, con más información del error, damos con el problema
Guillermo Díaz Lorenzo, modified 3 Years ago.

RE: Conexión segura con LDAP

New Member Posts: 4 Join Date: 5/7/20 Recent Posts
Activado a nivel DEBUG se ve el siguiente mensaje:{java.naming.provider.url=ldaps://XXX.XX.XX.XX:636, java.naming.factory.initial=com.sun.jndi.ldap.LdapCtxFactory, com.sun.jndi.ldap.connect.timeout=500, com.sun.jndi.ldap.connect.pool=true, java.naming.security.principal=**********, java.naming.security.credentials=********, java.naming.referral=follow, com.sun.jndi.ldap.read.timeout=15000}
El cual va acompañado de la siguiente excepcion:
2020-05-08 08:33:03.102 DEBUG [http-nio-8080-exec-4][DefaultPortalLDAP:161] javax.naming.CommunicationException: XXX.XX.XX.XX:636 [Root exception is java.lang.ClassNotFoundException: javax.net.ssl.SSLSocketFactory cannot be found by test_1.0.0]
javax.naming.CommunicationException: XXX.XX.XX.XX:636 [Root exception is java.lang.ClassNotFoundException: javax.net.ssl.SSLSocketFactory cannot be found by test_1.0.0]
&nbsp; &nbsp; &nbsp; &nbsp; at com.sun.jndi.ldap.Connection.<init>(Connection.java:226)
&nbsp; &nbsp; &nbsp; &nbsp; at com.sun.jndi.ldap.LdapClient.<init>(LdapClient.java:137)
&nbsp; &nbsp; &nbsp; &nbsp; at com.sun.jndi.ldap.LdapClient.getInstance(LdapClient.java:1615)
&nbsp; &nbsp; &nbsp; &nbsp; at com.sun.jndi.ldap.LdapCtx.connect(LdapCtx.java:2749)
&nbsp; &nbsp; &nbsp; &nbsp; at com.sun.jndi.ldap.LdapCtx.<init>(LdapCtx.java:319)
&nbsp; &nbsp; &nbsp; &nbsp; at com.sun.jndi.ldap.LdapCtxFactory.getUsingURL(LdapCtxFactory.java:192)
&nbsp; &nbsp; &nbsp; &nbsp; at com.sun.jndi.ldap.LdapCtxFactory.getUsingURLs(LdapCtxFactory.java:210)
&nbsp; &nbsp; &nbsp; &nbsp; at com.sun.jndi.ldap.LdapCtxFactory.getLdapCtxInstance(LdapCtxFactory.java:153)
&nbsp; &nbsp; &nbsp; &nbsp; at com.sun.jndi.ldap.LdapCtxFactory.getInitialContext(LdapCtxFactory.java:83)
&nbsp; &nbsp; &nbsp; &nbsp; at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:684)
&nbsp; &nbsp; &nbsp; &nbsp; at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:313)
&nbsp; &nbsp; &nbsp; &nbsp; at javax.naming.InitialContext.init(InitialContext.java:244)
&nbsp; &nbsp; &nbsp; &nbsp; at javax.naming.ldap.InitialLdapContext.<init>(InitialLdapContext.java:154)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.security.ldap.internal.DefaultPortalLDAP.getContext(DefaultPortalLDAP.java:153)
&nbsp; &nbsp; &nbsp; &nbsp; at test.action.ChangePassword.updateUserLDAP(ChangePassword.java:104)
&nbsp; &nbsp; &nbsp; &nbsp; at test.action.ChangePassword.processAction(ChangePassword.java:76)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.portlet.bridges.mvc.MVCPortlet.callActionMethod(MVCPortlet.java:380)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.portlet.LiferayPortlet.processAction(LiferayPortlet.java:94)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.portlet.bridges.mvc.MVCPortlet.processAction(MVCPortlet.java:260)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:71)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:48)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:108)
&nbsp; &nbsp; &nbsp; &nbsp; at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
&nbsp; &nbsp; &nbsp; &nbsp; at org.eclipse.equinox.http.servlet.internal.registration.EndpointRegistration.service(EndpointRegistration.java:153)
&nbsp; &nbsp; &nbsp; &nbsp; at org.eclipse.equinox.http.servlet.internal.servlet.ResponseStateHandler.processRequest(ResponseStateHandler.java:62)
&nbsp; &nbsp; &nbsp; &nbsp; at org.eclipse.equinox.http.servlet.internal.context.DispatchTargets.doDispatch(DispatchTargets.java:118)
&nbsp; &nbsp; &nbsp; &nbsp; at org.eclipse.equinox.http.servlet.internal.servlet.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:48)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portlet.InvokerPortletImpl.invoke(InvokerPortletImpl.java:535)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portlet.InvokerPortletImpl.invokeAction(InvokerPortletImpl.java:581)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portlet.InvokerPortletImpl.processAction(InvokerPortletImpl.java:335)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.monitoring.internal.portlet.MonitoringInvokerPortlet.processAction(MonitoringInvokerPortlet.java:189)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portlet.PortletContainerImpl._processAction(PortletContainerImpl.java:394)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portlet.PortletContainerImpl.processAction(PortletContainerImpl.java:120)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portlet.SecurityPortletContainerWrapper.processAction(SecurityPortletContainerWrapper.java:94)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portlet.RestrictPortletContainerWrapper.processAction(RestrictPortletContainerWrapper.java:75)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.portlet.PortletContainerUtil.processAction(PortletContainerUtil.java:114)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.action.LayoutAction.processLayout(LayoutAction.java:295)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.action.LayoutAction.execute(LayoutAction.java:159)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.struts.PortalRequestProcessor.process(PortalRequestProcessor.java:170)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
&nbsp; &nbsp; &nbsp; &nbsp; at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.servlet.MainServlet.callParentService(MainServlet.java:608)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.servlet.MainServlet.service(MainServlet.java:585)
&nbsp; &nbsp; &nbsp; &nbsp; at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:119)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:144)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.servlet.filters.uploadservletrequest.UploadServletRequestFilter.processFilter(UploadServletRequestFilter.java:93)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:49)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:112)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:144)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.servlet.filters.secure.BaseAuthFilter.processFilter(BaseAuthFilter.java:340)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:49)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:112)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:144)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.servlet.filters.jsoncontenttype.JSONContentTypeFilter.processFilter(JSONContentTypeFilter.java:42)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:49)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:112)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:144)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.monitoring.internal.servlet.filter.MonitoringFilter.processFilter(MonitoringFilter.java:181)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:49)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:112)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:100)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:720)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:466)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:391)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:318)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.servlet.FriendlyURLServlet.service(FriendlyURLServlet.java:154)
&nbsp; &nbsp; &nbsp; &nbsp; at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:119)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:144)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.frontend.compatibility.ie.servlet.filter.IEMimeTypeCompatibilityFilter.processFilter(IEMimeTypeCompatibilityFilter.java:48)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:49)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:112)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:144)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.servlet.filters.uploadservletrequest.UploadServletRequestFilter.processFilter(UploadServletRequestFilter.java:93)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:49)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:112)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:144)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.servlet.filters.strip.StripFilter.processFilter(StripFilter.java:343)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:49)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:112)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:144)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.servlet.filters.i18n.I18nFilter.processFilter(I18nFilter.java:364)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:49)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:112)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:144)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.servlet.filters.secure.BaseAuthFilter.processFilter(BaseAuthFilter.java:340)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:49)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:112)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:144)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.servlet.filters.jsoncontenttype.JSONContentTypeFilter.processFilter(JSONContentTypeFilter.java:42)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:49)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:112)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:144)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.servlet.filters.autologin.AutoLoginFilter.processFilter(AutoLoginFilter.java:261)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:49)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:112)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:144)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.sharepoint.SharepointFilter.processFilter(SharepointFilter.java:88)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:49)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:112)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:144)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.processFilter(VirtualHostFilter.java:263)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:49)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:112)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:144)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.monitoring.internal.servlet.filter.MonitoringFilter.processFilter(MonitoringFilter.java:181)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:49)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:112)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:188)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:188)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
&nbsp; &nbsp; &nbsp; &nbsp; at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:176)
&nbsp; &nbsp; &nbsp; &nbsp; at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:145)
&nbsp; &nbsp; &nbsp; &nbsp; at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:92)
&nbsp; &nbsp; &nbsp; &nbsp; at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:394)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.servlet.filters.urlrewrite.UrlRewriteFilter.processFilter(UrlRewriteFilter.java:65)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:49)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:112)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:168)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:168)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:188)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
&nbsp; &nbsp; &nbsp; &nbsp; at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:100)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:522)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1095)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:672)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1456)
&nbsp; &nbsp; &nbsp; &nbsp; at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
&nbsp; &nbsp; &nbsp; &nbsp; at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
&nbsp; &nbsp; &nbsp; &nbsp; at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
&nbsp; &nbsp; &nbsp; &nbsp; at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.ClassNotFoundException: javax.net.ssl.SSLSocketFactory cannot be found by test_1.0.0
&nbsp; &nbsp; &nbsp; &nbsp; at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:444)
&nbsp; &nbsp; &nbsp; &nbsp; at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:357)
&nbsp; &nbsp; &nbsp; &nbsp; at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:349)
&nbsp; &nbsp; &nbsp; &nbsp; at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:160)
&nbsp; &nbsp; &nbsp; &nbsp; at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
&nbsp; &nbsp; &nbsp; &nbsp; at java.lang.Class.forName0(Native Method)
&nbsp; &nbsp; &nbsp; &nbsp; at java.lang.Class.forName(Class.java:348)
&nbsp; &nbsp; &nbsp; &nbsp; at com.sun.jndi.ldap.VersionHelper12.loadClass(VersionHelper12.java:72)
&nbsp; &nbsp; &nbsp; &nbsp; at com.sun.jndi.ldap.Connection.createSocket(Connection.java:281)
&nbsp; &nbsp; &nbsp; &nbsp; at com.sun.jndi.ldap.Connection.<init>(Connection.java:203)
&nbsp; &nbsp; &nbsp; &nbsp; ... 174 more
</init></init></init></init></init>
thumbnail
Sergio Sánchez, modified 3 Years ago.

RE: Conexión segura con LDAP

Regular Member Posts: 143 Join Date: 7/6/11 Recent Posts
Hola Guillermo, curioso porque esa clase la provee la JDK de Oracle, ¿o usas una JVM diferente?
Si ejecutas
java -version
  en la JVM que ejecuta Liferay, ¿cual es?
Guillermo Díaz Lorenzo, modified 3 Years ago.

RE: Conexión segura con LDAP

New Member Posts: 4 Join Date: 5/7/20 Recent Posts
Buenas,Al final en base al siguiente hilo: https://liferay.dev/forums/-/message_boards/message/110998506 hemos modificado el bnd y conecta con éxito.
Un saludo.
thumbnail
Sergio Sánchez, modified 3 Years ago.

RE: Conexión segura con LDAP

Regular Member Posts: 143 Join Date: 7/6/11 Recent Posts
Gracias por compartir la solución Guillermo!