로그인

bery·2020년 8월 15일
0

jwt으로 로그인 구현하기

  • jwt는 Json Web Token의 약자로 access token을 만드는 방법 중 하나이다.
  • 백앤드에서 jwt를 생성할 때, 해당 user가 누구인지 식별할만한 정보를 담을 수 있다.
  • 예를 들어 백앤드에서 받은 아래의 access token을 decode해보니 user_id: 5라는 정보를 담고 있었다는 것을 알 수 있다.

  • 프론트엔드와 백엔드 사이의 http 통신은 stateless이기 때문에, API 호출 시 정보를 백엔드에 넘겨줄 뿐 로그인 한 상태가 통신 자체에 저장되지 않는다.
  • 하지만 페이지를 이동하거나, 끄고 켤때마다 매번 로그인을 할 수 없기 때문에 이렇게 access token을 주고 받아서 사용자 인증을 진행한다. 로그인을 반복하지 않기 위해 사용되는 것이 Access Token(JWT)이다.
  • 로그인을 하면 access token을 받아서, 프론트앤드는 어딘가에 보관하고 있다가 사용자 정보가 필요한 api에 해당 access token을 백앤드에 보내준다.

access token 저장하기

저장 장소

  • Local Storage: 해당 도메인에 영구 저장하고 싶을 때
  • Session Storage: 해당 도메인의, 한 세션에서만 저장하고 싶을 때. 창을 닫으면 data가 날라간다.
  • Cookie: 해당 도메인에 날짜를 설정하고 그 때까지만 저장하고 싶을 때

0개의 댓글