LDAP 身份验证超时

LDAP Authentication Times out

在 Spring 引导中,我将身份验证委托给 LDAP 服务器。当我使用与 LDAP 服务器连接的相同 Wi-Fi 时,身份验证过程运行顺利。它登录经过身份验证的用户并为未经身份验证的用户抛出错误。但是,运行网站使用另一个未连接LDAP服务器的Wi-Fi,导致网站无法验证用户并导致超时错误,如下所示:

org.springframework.security.authentication.InternalAuthenticationServiceException:ldap.x.ac.uk:636; nested exception is javax.naming.CommunicationException: ldap.x.ac.uk:636 [Root exception is java.net.ConnectException: Connection timed out (Connection timed out)]

我的LDAP配置如下:

public class AuthenticationConfig extends WebSecurityConfigurerAdapter {
@Override
public void configure(AuthenticationManagerBuilder auth) {
    try {
        auth
                .ldapAuthentication()
                .userSearchFilter("(uid={0})")
                .userSearchBase("ou=uan,o=ac,c=uk")
                .contextSource()
                .url("ldaps://ldap.x.ac.uk");
    } catch (Exception ex) {
        ex.printStackTrace();
    }
  }
}

我的问题是为什么更换 Wi-Fi 会导致网站崩溃?

该错误不是身份验证问题,而是网络连接问题。 如果您的计算机所在的网络不知道如何解析 LDAP 服务器的名称或无法路由到它,则无法连接到它并验证用户。