Bean
public BCryptPasswordEncoder encodePassword() {
return new BCryptPasswordEncoder();
}
2.UserService
private final PasswordEncoder passwordEncoder;
...
public UserService(UserRepository userRepository, PasswordEncoder passwordEncoder){
this.userRepository = userRepository;
this.passwordEncoder = passwordEncoder;
}
...
public void signup(SignupRequestDto signupRequestDto) {
String username = signupRequestDto.getUsername();
String password = passwordEncoder.encode(signupRequestDto.getPassword());
String email = signupRequestDto.getEmail();
UserRoleEnum role = UserRoleEnum.USER;
...
적용 방식은 간단하다 Security에 encoder 관련 빈을 등록한 후
PasswordEncoder를 객체화 해서 .encode 메소드를 사용한다.
적용 전과 후가 확실히 다르다.