TIL 13주차 2일 - [Sprint]auth-token

Sang heon lee·2021년 9월 10일
2

TIL 리스트

목록 보기
52/60

Server

A. controllers/login.js (POST /login)

  • request로부터 받은 userId, password와 일치하는 유저가 DB에 존재하는지 확인합니다.

  • 일치하는 유저가 없을 경우: 로그인 요청을 거절합니다.

  • 일치하는 유저가 있을 경우:

    • 필요한 데이터를 담은 두 종류의 JWT(access, refresh)를 생성합니다.
    • 생성한 JWT를 적절한 방법으로 반환합니다.
      • access token은 클라이언트에서 react state로 다루고 있습니다.
      • refresh token은 클라이언트의 쿠키에서 다루고 있습니다.

  • 클라이언트에서 req.body에 userId 와 password 담는 방법 확인

  • refreshToken은 왜 cookie로?

B .controllers/accesstokenrequest.js (GET /accesstokenrequest)

  • authorization header에 담긴 토큰이 서버에서 생성한 JWT인지 확인합니다.

    • 서버에서 생성한 유효한 토큰일 경우, 유효하지 않은 토큰일 경우 각각 다른 응답을 반환합니다.

    • 토큰 로그 상에 보이는 Bearer ?

C .controllers/refreshtokenrequest (GET /refreshtokenrequest)

  • 요청에 담긴 refresh token이 유효하다면 새로운 access token을 발급해줌과 동시에 유저가 요청한 정보를 반환합니다.

  • 요청에 담긴 refresh token이 유효하지 않거나, 조작된 토큰일 경우 각각 다른 응답을 반환합니다.

profile
개초보

0개의 댓글