BACK
[JPA Security Login] 시큐리티 로그인 필수 설정
dbelleloper
2023. 7. 10. 15:22
728x90
"시큐리티 로그인" 이란 ?
-> 사람이 비밀번호를 입력하면 서버에는 평문으로 넘어오는데,
그 평문을 스프링이 자동으로 암호화하고,
이미(회원가입시) 암호화되서 들어가 있는 디비의 패스워드와 비교하여 로그인하는 것
1. JpaConfig
- jpa를 사용한다면 무조건
2. NamingStrategy
- 명명전략
3. UserUtils
- 로그인 상태 제어, 회원 권한 상태 제어
4. WebSecurityConfig
- password암호화
- 자동 로그인
- 권한별 페이지 제어 설정
5. UserLogin
- 엔티티 설정 (username,password,rememberme 등)
6. CustomLoginFilter
- UserLogin에 요청하는 값 저장
7. UserSecurityService
- ex) 이메일=username 판단
8. CustomLoginSuccessHandler
- 모두 성공시 리턴
9. CustomLoginFailureHandler
- 실패시 에러페이지
10. 로그인 컨트롤러
- @AuthenticationPrincipal
: 로그인 세션 정보를 받아오는 방법으로 변경했다.
: 세션 정보 UserDetails(UserUtils)에 접근할 수 있는 어노테이션
-> userDetails(PrincipalDetails 타입).getUser()
로그인 세션 정보가 필요한 컨트롤러에서 매번 @AuthenticationPrincipal로 세션 정보를 받아서 사용한다.
11. 로그인 뷰
728x90