-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Labels
Description
기능 요청
기능에 대한 간단한 설명:
- 액세스 토큰과 리프레시 토큰 추가
필요한 이유:
- XSS 공격에 대비하기 위하여 유효기간이 짧은 액세스 토큰과 유효기간이 긴 리프레시 토큰을 같이 사용한다.
기능의 예상 동작:
- 첫 회원가입 및 로그인 시 서버는 클라이언트에게 액세스 토큰과 리프레시 토큰을 전송한다.
- 서버는 리프레시 토큰을 users DB에 저장한다.
- 그 이후 클라이언트는 리프레시 토큰만을 httpOnly 쿠키에 저장하고, 액세스 토큰은 Session Storage에 저장한다.
- 클라이언트는 요청을 전송 시 JSON 헤더에 액세스 토큰을 포함하여 요청한다.
- 만약 서버에서 액세스 토큰이 만료됨을 알리면 쿠키에 저장된 리프레시 토큰을 전송한다.
- 서버는 DB에 저장된 리프레시 토큰과 일치하는지 확인한다.
- 토큰이 일치하면 새로운 액세스 토큰을 받는다. 리프레시 토큰을 받고 새 액세스 토큰을 받는 과정은 사용자가 눈치채지 못하게 몰래 수행한다.
- 사용자가 로그아웃을 수행시 users DB에서 토큰을 삭제한다.
추가 정보:
우선순위:
- 높음
기타 의견:
Reactions are currently unavailable