我如何配置RepositoryRestResource来加密用户类的密码?
我在“ WebSecurityConfigurerAdapter”类中使用密码编码器bean设置了JWT身份验证。
@Override
protected void configure(AuthenticationManagerBuilder auth) throws
Exception {
auth.userDetailsService(userSecurityService).passwordEncoder(encoder());
}
@Bean
public PasswordEncoder encoder() {
return new BCryptPasswordEncoder();
}
我的存储库如下
@RepositoryRestResource(collectionResourceRel = "user", path = "user")
public interface UserRepository extends MongoRepository<User, String> {
User findByUsername(@Param("username") String name);
}
答案 0 :(得分:0)
假设登录/注册数据是通过HTTPS(TLS)传输的。
我如何配置RepositoryRestResource来加密用户类的密码?
RepositoryRestResource处理REST,与在后端加密密码无关。在将实体保存到数据库之前,只需将您的PasswordEncoder bean以及在您设置域用户的密码(例如:userToBeSaved.setPassword(passwordEncoder.encode(inputUser.getPassword()))
)中自动连线即可。然后,您应该在数据库中得到一个哈希密码。