본문 바로가기

프로젝트/개인

11. 스프링 시큐리티 로그인 과정

 

로그인 요청이 오면 

1. SecurityConfig.class의

loginProcessingUrl => /auth/loginProc이 가로챔

2.가로챈 정보를 PrincipalDetailServiced의 

loadUserByUsername이 username을  findByUsername로 비교해서 principal 객체를 만들고,

값을 리턴하기 전 

3. 다시 SecurityConfig.class의

사용자가 입력한 패스워드를 encodePWD()로 암호화 후 , db의 값과 비교해서 정상인지 확인 후 

4. 그 값을 스프링 시큐리티 영역의 user정보를 저장함.  PrincipalDetailServiced의 

PrincipalDetail 로 감싸져서 저장이 됨 (PrincipalDetail가 UserDetails를 extend하니까)

5. 로그인 성공하면 

defaultSuccessUrl인 "/"로 이동함.