我们在集群环境(Alfresco和tomcat)中有两个节点,带有passthru身份验证以及配置的ldap和NTLM。协议顺序是TCPIP,NETBIOS。它在大多数情况下工作正常,但有时候对于某些用户来说,身份验证屏幕会一次又一次地出现。
下面是堆栈跟踪。任何指针都会有所帮助。
net.sf.acegisecurity.AuthenticationServiceException:I / O错误;嵌套 异常是java.net.SocketException:Socket关闭了 org.alfresco.repo.security.authentication.ntlm.NTLMAuthenticationComponentImpl.authenticatePassthru(NTLMAuthenticationComponentImpl.java:908) 在 org.alfresco.repo.security.authentication.ntlm.NTLMAuthenticationComponentImpl.authenticate(NTLMAuthenticationComponentImpl.java:555) at sun.reflect.GeneratedMethodAccessor812.invoke(Unknown Source)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 在java.lang.reflect.Method.invoke(Method.java:597)at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307) 在 org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183) 在 org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150) 在 org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107) 在 org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) 在 org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202) 在$ Proxy220.authenticate(未知来源)at org.alfresco.repo.webdav.auth.BaseNTLMAuthenticationFilter.processType3(BaseNTLMAuthenticationFilter.java:536) 在 org.alfresco.repo.webdav.auth.BaseNTLMAuthenticationFilter.authenticateRequest(BaseNTLMAuthenticationFilter.java:291) 在 org.alfresco.repo.webdav.auth.BaseSSOAuthenticationFilter.doFilter(BaseSSOAuthenticationFilter.java:134) at sun.reflect.GeneratedMethodAccessor543.invoke(Unknown Source)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 在java.lang.reflect.Method.invoke(Method.java:597)at org.alfresco.repo.management.subsystems.ChainingSubsystemProxyFactory $ 1.invoke(ChainingSubsystemProxyFactory.java:103) 在 org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) 在 org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202) 在$ Proxy229.doFilter(未知来源)at org.alfresco.repo.web.filter.beans.BeanProxyFilter.doFilter(BeanProxyFilter.java:82) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 在 org.alfresco.web.app.servlet.WebScriptSSOAuthenticationFilter.doFilter(WebScriptSSOAuthenticationFilter.java:128) at sun.reflect.GeneratedMethodAccessor543.invoke(Unknown Source)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 在java.lang.reflect.Method.invoke(Method.java:597)at org.alfresco.repo.management.subsystems.ChainingSubsystemProxyFactory $ 1.invoke(ChainingSubsystemProxyFactory.java:103) 在 org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) 在 org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202) 在$ Proxy229.doFilter(未知来源)at org.alfresco.repo.web.filter.beans.BeanProxyFilter.doFilter(BeanProxyFilter.java:82) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 在 org.alfresco.web.app.servlet.GlobalLocalizationFilter.doFilter(GlobalLocalizationFilter.java:58) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 在 org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 在 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 在 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 在 org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 在 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 在 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) 在 org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852) 在 org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process(Http11Protocol.java:588) 在 org.apache.tomcat.util.net.JIoEndpoint $ Worker.run(JIoEndpoint.java:489) 在java.lang.Thread.run(Thread.java:662)引起: java.net.SocketException:Socket关闭了 java.net.SocketInputStream.read(SocketInputStream.java:162)at java.io.DataInputStream.read(DataInputStream.java:132)at org.alfresco.jlan.netbios.NetBIOSSession.Receive(NetBIOSSession.java:1836) 在 org.alfresco.jlan.server.auth.passthru.SMBPacket.ExchangeSMB(SMBPacket.java:286) 在 org.alfresco.jlan.server.auth.passthru.AuthenticateSession.doSessionSetup(AuthenticateSession.java:1158) 在 org.alfresco.jlan.server.auth.passthru.AuthenticateSession.doSessionSetup(AuthenticateSession.java:992) 在 org.alfresco.repo.security.authentication.ntlm.NTLMAuthenticationComponentImpl.authenticatePassthru(NTLMAuthenticationComponentImpl.java:834) ......还有48个
答案 0 :(得分:1)
您没有提到您使用哪种类型的域控制器进行身份验证以及您的网络架构是什么,但基于堆栈跟踪,看起来连接意外关闭。
这可能表明网络或DC存在问题,但您需要查看通过线路传输的流量,以确切了解发生的情况。
最后,您可能还需要查看DC的日志,看看它是否报告了其结尾的任何问题。