Я пытаюсь аутентифицировать пользователей, используя LDAP в Spring Boot.Это моя конфигурация веб-безопасности:
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
.anyRequest().fullyAuthenticated()
.and()
.formLogin();
}
@Override
public void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.ldapAuthentication()
.userDnPatterns("uid={0},ou=people")
.groupSearchBase("ou=groups")
.contextSource()
.url("ldap://my.ldap.url/dc=mysite,dc=com")
.and()
.passwordCompare()
.passwordEncoder(new LdapShaPasswordEncoder())
.passwordAttribute("userPassword");
}
Используя Apache Directory Studio, я вижу, что метод шифрования пароля CRYPT-MD5
.Я использовал LdapShaPasswordEncoder в качестве кодировщика пароля, поскольку я не знал точно, какой кодировщик мне следует использовать.Я получаю java.lang.NullPointerException: null
ошибку при попытке войти.Я предполагаю, что выбрал неправильный кодировщик.Кто-нибудь знает, какой кодер мне использовать?