Ynns

spring 프로젝트 암호화 로그인 오류 해결 본문

JAVA/Spring

spring 프로젝트 암호화 로그인 오류 해결

yunassnn 2019. 11. 14. 16:00

# pom.xml 에 암호화를 위한 라이브러리 추가

<dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-web</artifactId>
    <version>4.2.4.BUILD-SNAPSHOT</version>
</dependency>
<repositories>
	<repository>
		<id>spring-snapshots</id>
		<name>Spring Snapshots</name>
		<url>https://repo.spring.io/libs-snapshot</url>
		<snapshots>
			<enabled>true</enabled>
		</snapshots>
	</repository>
</repositories>

#MemberServiceImpl 에서 Join 메소드에 암호화를 위한 식 추가

# DB에 암호화 된 비밀번호가 들어온 걸 확인했는데

# (암호화 된 비밀번호) DB password != login password (로그인 시 입력하는 비밀번호) 라서 로그인이 안 된다

#MemberServiceImpl 에서 login 메소드 수정

@Override
	public LoginVO login(LoginVO vo) {
   		//암호화 된 비밀번호를 userid를 통해 DB에서 가져오기
		String password= mapper.loginpassword(vo.getUserid());
		//받아온 password 값을 matches를 이용해 입력된 password와 비교
		BCryptPasswordEncoder bcrypt = new BCryptPasswordEncoder();
		boolean result=bcrypt.matches(vo.getPassword(), password);			
		//입력된 값과 password가 같을 경우
		if(result) {
        	//login에 암호화 된 password를 담아준다
			vo.setPassword(password);
			return mapper.login(vo);
		}
		return mapper.login(vo);
	}

#다시 로그인 시도

암호화 된 password가 나오면서 로그인 성공

 

'JAVA > Spring' 카테고리의 다른 글

spring security 프로젝트(5) 어노테이션  (0) 2019.11.26
spring security 프로젝트(4)  (0) 2019.11.26
spring security 프로젝트 (3)  (0) 2019.11.08
spring security 프로젝트 (2)  (0) 2019.11.08
spring security 프로젝트 실행 (1-1)  (0) 2019.11.08
Comments