- 인증 vs 인가
- 인증 → 사용자의 신원을 확인
- 인가 → 사용자의 접근 권한을 확인
- 전송레이어 보안
- ssl
- https
- FilterChainProxy 를 구성하는 Filter들?

- 대칭키 vs 비대칭키
- 대칭키 → 암호화 복호화 하는 키가 같음
- 비대칭키 → 암호화 복호화 키가 다름 공개키를 내 개인키로 복호화
- Remember-Me란?
- 로그인 한 사용자의 쿠키 만료 기간을 보고 자동 로그인
- 세션처리
- 세션 하이재킹 공격에 대한 4가지 설정
- none - 아무것도 하지 않음
- newSession - 새로운 세션 만들고 기존 데이터 복제 x
- migrateSession - 새로운 세션 만들고 기존 데이터 복제
- changeSession - 새로운 세션을 만들진 않지만 session-fixation공격에 대비
- 세션 생성 전략
- IF_REQUIRED — 필요시 생성
- NEVER — Spring Security에서는 세션을 생성하지 않지만, 세션이 존재하면 사용함
- STATELESS — 세션을 완전히 사용하지 않음 (JWT 인증이 사용되는 REST API 서비스에 적합)
- ALWAYS — 항상 세션을 사용함
- 인가처리
- FilterSecurityInterceptor
- 필터 체인의 마지막에 위치 인증된 사용자의 권한 정보와 리소스에 대한 권한을 취합하여 접근 여부 결정
- UserDetails와 Authentication ㅊ
- SecurityContext 에 들어갈 수 있는 객체는 Authentication 객체
- Authentication 객체 내에 들어갈 수 있는 타입
- UserDetails, OAuth2User
- AuthenticationEventPublisher