PartialResultException при аутентификации с помощью Spring Security и JavaConfig
В настоящее время я создаю новое веб-приложение с использованием Spring Boot и начал процесс интеграции Spring Security для аутентификации. После успешного следования Spring Boot-basedУчебник по LDAPЯ хотел указать мою конфигурацию на основе JavaConfig на мой экземпляр Active Directory.
Мое приложение теперь обрабатывает неверные учетные данные, как ожидалось, но действительные учетные данные теперь приводят к
javax.naming.PartialResultException: Unprocessed Continuation Reference(s); remaining name ''
Это общая проблема - естьчисло из мест где эта проблема встречалась. Решение, кажется, устанавливает Context.REFERRAL на «follow», но я не могу найти никакой документации, указывающей, как установить эту опцию, используя JavaConfig. Мой единственный вариант здесь, чтобы вернуться к конфигурации на основе XML? Кажется, что Spring подталкивает разработчиков к JavaConfig, поэтому я бы хотел, по возможности, избегать смешивания двух подходов.
Вот моя конфигурация безопасности:
@Configuration
@EnableWebMvcSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests().antMatchers("/css/**").permitAll().anyRequest()
.fullyAuthenticated().and().formLogin();
}
@Configuration
protected static class AuthenticationConfiguration extends
GlobalAuthenticationConfigurerAdapter {
@Override
public void init(AuthenticationManagerBuilder auth) throws Exception {
auth.ldapAuthentication()
.userSearchBase("")
.userSearchFilter("(&(cn={0}))").contextSource()
.managerDn("<username>")
.managerPassword("<password>")
.url("ldap://<url>");
}
}
}