Spring - LDAP身份验证 - CRYPT-MD5密码的密码编码器

时间:2018-06-12 13:11:24

标签: java spring spring-boot authentication ldap

我正在尝试使用Spring Boot中的LDAP对用户进行身份验证。这是我的网络安全配置:

@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错误。 我假设我选择了错误的编码器。有人知道我应该使用哪种编码器吗?

0 个答案:

没有答案