10주차 RBF
- 인증 vs 인가
- 인증: 인증
- 인가: 접근 권한을 체크
- 전송레이어 보안
- 클라이언트와 서버가 주고 받는 모든 데이터는 암호화되어 있음
- 데이터 암호화를 위해 SSL을 사용
- FilterChainProxy 를 구성하는 Filter들?

- 대칭키 vs 비대칭키
- 대칭키: 암호화와 복호화에 같은 암호 키를 쓰는 알고리즘을 의미
- 비대칭키: RSA → 공개 키, 비밀 키가 한쌍으로 존재하며 공개 키는 누구나 알 수 있지만 그에 대응하는 비밀 키는 키의 소유자만이 알 수 있어야함
- Remember-Me란?
- 인증되지 않은 사용자의 HTTP 요청이 remember-me 쿠키를 갖고 있다면, 사용자를 자동으로 인증 처리함
- 세션처리
- stateless한 http 프로토콜 기반에서 매번 사용자가 요청을 할때마다 로그인 하면 → 좋지 않은 사용자 경험
- 쿠키-세션 기반으로 로그인을 유지
- Spring Session 모듈에서는 SessionRepository를 통해서 접근
- 인가처리
- 인증이 완료 된 사용자에 대해 접근 권한이 있는지 체크
- UserDetails와 Authentication
- UserDetails; UserDetailsService가 반환하는 사용자 정보를 담고 있는 객체
- Authentication: 현재 요청한 사용자의 정보를 담고 있는 객체
- AuthenticationEventPublisher
- 인증 성공 또는 인증 실패가 발생했을때 이벤트를 전달하기 위한 이벤트 퍼블리셔 인터페이스
- 기본 구현체로 DefaultAuthenticationEventPublisher 클래스가 사용됨