#220113 TIL - 토큰, 세션, 쿠키 요약 정리

K·2022년 1월 14일
0

💻TIL

목록 보기
6/13

쿠키(Cookie)

🍪서버는 쿠키를 사용해 브라우저에 데이터를 넣을 수 있다!

  1. 사이트에 방문하면 브라우저는 서버에 요청을 보냄.
  2. 서버는 요청에 응답 -> 그 응답에는 모든 데이터 + 내가 찾던 페이지 정보 + 브라우저에 저장하려는 🍪 포함됨
  3. 일단 브라우저에 쿠키가 저장되면, 이후 해당 웹사이트에 방문할 때마다 브라우저는 해당 🍪를 요청과 함께 보냄

쿠키의 특징

  • 세션 ID를 전달하기 위한 일종의 매개체 역할
  • 도메인에 따라 요청이 제한됨!
  • 유효기간 O(서버가 유효기간을 정함)
  • 인증 + 여러 정보 저장 기능도 있음

세션(Session)

HTTP, 웹사이트를 이용할 때 쓰는 프로토콜은 stateless.
💬 stateless란? 서버로부터 받은 요청이 state의 상태와는 완전히 무관하게 독립적으로 다뤄지는 것 (stateful과 상반되는 개념)

"요청이 끝나면, 서버는 사용자 정보를 잊게 됨"

결국, request할 때마다 사용자가 누군지 알려줘야 함

세션의 특징

  • 현재 로그인한 유저들의 모든 세션ID: DB에 저장 필요
  • 서버는 request에서 쿠키를 받고, 세션 ID와 일치하는 유저를 찾은 뒤 다음 작업 수행
    📝 request가 있을 때마다 DB를 찾아야 함
    📝 유저가 늘어나면 DB리소스가 더 요구됨
  • 서버는 로그인된 유저의 모든 정보를 저장

JWT

  • JWT에서 서버는 유저 인증에 필요한 정보를 토큰에 저장함
  • 페이지 요청 시 서버는 해당 토큰의 유효성만 검증하면 됨
  • DB 없이 검증 가능!
  • 유저 인증을 위해 JWT / 세션 사용 가능

출처: YOUTUBE <노마드코더>
https://www.youtube.com/watch?v=tosLBcAX1vk

0개의 댓글