드림투두 로그인 기능 개편
드림투두 로그인 기능 개편
드림투두 백엔드의 로그인 기능을 개편한다.
시나리오별 프론트엔드 / 백엔드 행동을 생각해보았다.
시나리오1. 최초에 Token 을 발급받는 경우
- | Frontend | Backend | 비고 |
---|---|---|---|
- 로그인을 한다. | |||
- Access/Refresh Token 을 발급한다. - Refresh Token 과 UserAgent 를 DB 에 저장한다. - 요청을 처리하고 응답한다. |
|||
- Acceess/Refresh Token 을 저장한다. | |||
- Access Token 으로 요청한다. | |||
- Access Token 을 확인한다. - 요청을 처리하고 응답한다. |
Refresh Token 과 UserAgent 를 DB 에 저장하는 이유는 나중에 Refresh Token 으로 요청이 왔는데, UsetAgent 가 다를 경우 유출이라고 판단하여 삭제처리 하기 위함이다.
시나리오2. Access Token 만료 후 접속하는 경우
- | Frontend | Backend | 비고 |
---|---|---|---|
- 만료된 Access Token 으로 요청한다. | |||
- Access Token 이 만료된 토큰이라고 응답한다. | |||
- Refresh Token 으로 요청한다. | |||
- Refresh Token 과 UserAgent 를 확인한다. - Access/Refresh Token 을 갱신발급한다. - 요청을 처리하고 응답한다. |
|||
- Acceess/Refresh Token 을 저장한다. | |||
- Access Token 으로 요청한다. | |||
- Access Token 을 확인한다 - 요청을 처리하고 응답한다. |
Access/Refresh Token 을 갱신발급하는 이유는 만료일자를 연장시키기 위함이다.
시나리오3. Refresh Token 만료 후 접속하는 경우
- | Frontend | Backend | 비고 |
---|---|---|---|
- 만료된 Access Token 으로 요청한다. | |||
- Access Token 이 만료된 토큰임이라고 응답한다. | |||
- Refresh Token 으로 요청한다. | |||
- Refresh Token 이 만료된 토큰이라고 응답한다. | |||
- 로그인을 한다. |
참고
네이버 사이트 간단 체크
아직 엉성하지만 네이버 사이트 간단 체크 결과가 개선되었다.
Docusaurus Layout 컴포넌트를 이용해서 통과된 것이다.
https://docusaurus.io/ko/docs/seo 에서 SEO 에 대한 설명을 볼 수 있다.