스프링 시큐리티에서 제공해주고, 권고되고있는 BCrypt 해시함수를 사용해서 패스워드를 암호화하여 db에 저장해보자
@Bean
public BCryptPasswordEncoder encodePassword() {
return new BCryptPasswordEncoder();
}
BCryptPasswordEncoder 함수는 스프링 시큐리티에서 제공해주는 클래스이다. 그냥 가져다가 사용한 것이고, 선언만 하면 패스워드 해주는 부분은 이미 구현된 걸로 수행이 되는 것이다.
그것을객체로 만들어서 bean으로 넣어줬는데 다른곳에서도 사용할수있도록 securitycofig에서 bean으로 등록을 한 것이다.
회원가입을 할때 BCryptPasswordEncoder를 사용해서 저장해줘야한다!
@Autowired
public UserService(UserRepository userRepository, PasswordEncoder passwordEncoder) {
this.userRepository = userRepository;
this.passwordEncoder = passwordEncoder;
}