Hello

52. 비밀번호 해쉬 후 회원가입하기

by 볼빵빵오춘기

해쉬

고정길이의 난수인 문자열이다.

더보기

시큐리티 로그인을 하게되면 username, password를 받아 로그인이 진행이된다.

이 때 시큐리티 세션이라는게 생기면서 IoC에 유저정보를 담는데 우리는 유저 정보를 담기위해 User오브젝트를 만들었다. 

하지만 타입은 UserDetails라는 것을 상속받게 User오브젝트인것이다.

그리고 비밀번호는 1234 이런식으로 들어갈 수 없고 해쉬암호화해서 들어가야만 로그인을 할 수 있다.

 

SecurityConfig

encodePWD() Security가 들고있는 함수이다.

 

@Bean
BCryptPasswordEncoder encodePWD() {
    return new BCryptPasswordEncoder();
}

 

UserService

회원가입() 수정하고 BCryptPasswordEncoder DI 주입한다.

@Autowired
private BCryptPasswordEncoder encoder;
@Transactional
public void 회원가입(User user){
    String rawPassword = user.getPassword();
    String encPassword = encoder.encode(rawPassword); // 해쉬암호화
    user.setPassword(encPassword);
    user.setRole(RoleType.USER);
    userRepository.save(user);
}

블로그의 정보

Hello 춘기's world

볼빵빵오춘기

활동하기