我正致力于将旧系统迁移到java Web应用程序。现在我使用spring mvc + spring security + spring boot jpa,没有xml。但是当使用bcyrpt作为spring security 4登录时我遇到了问题。使用md5 + salted生成的旧版db密码。
答案 0 :(得分:0)
您需要与此类似的配置:
@Configuration
@EnableWebMvcSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Autowired
Md5PasswordEncoder md5CryptEncoder;
@Autowired
UserDetailsService myDetailsService
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
DaoAuthenticationProvider authProvider = new DaoAuthenticationProvider();
authProvider.setPasswordEncoder(md5CryptEncoder);
authProvider.setUserDetailsService(myDetailsService);
ReflectionSaltSource saltSource = new ReflectionSaltSource();
saltSource.setUserPropertyToUse("salt");
authProvider.setSaltSource(saltSource);
auth.authenticationProvider(authProvider);
}
}
但您必须使用正确的编码器配置Auth。