Şu anda Spring Boot'u kullanarak yeni bir web uygulaması oluşturuyorum ve Spring Security'i kimlik doğrulaması için entegre etme sürecini başlattım. Spring Boot tabanlı LDAP tutorial'u başarıyla uyguladıktan sonra, JavaConfig tabanlı yapılandırmamı Active Directory örneğime yönlendirmek istedim. beklendiği gibiSpring Security ve JavaConfig ile doğrulanırken PartialResultException
başvurum şimdi kötü kimlik bilgilerini işleme, ancak geçerli kimlik bilgileri şimdi
javax.naming.PartialResultException: Unprocessed Continuation Reference(s); remaining name ''
Bu yaygın bir sorundur neden - Bu sorun karşılaşıldı bir numberofplaces vardır. Çözüm, "follow" için Context.REFERRAL ayarını yapıyor gibi görünüyor, ancak JavaConfig kullanarak bu seçeneğin nasıl ayarlanacağını gösteren bir belge bulamıyorum. Tek seçenekim burada XML tabanlı bir yapılandırmaya dönmek mi? Spring'in geliştiricileri JavaConfig'e doğru itmesi gibi görünüyor, bu yüzden mümkünse iki yaklaşımı karıştırmaktan kaçınmak istiyorum.
aşağıdaki
benim güvenlik yapılandırması: Ben (uygun birsetReferral
yöntemi olduğundan) bunu gerçekleştirmek için
LdapContextSource
bir örneğini kullanmanız gerekir his vardı
@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>");
}
}
}