세션
- stateful
- 사용자의 방문을 논리적인 단위로 나눈 것
- 서버에 저장된다.
- 쿠키에 세션 아이디를 담아 응답하고 다시 쿠키에서 전달받아 사용자를 식별한다.
쿠키
- HTTP 쿠키란 사용자가 웹 사이트를 방문할 경우 사용자의 웹 브라우저를 통해 사용자의 컴퓨터나 다른 기기에 설치된느 작은 텍스트 파일
- 쿠키는 key, value, 0개 이상의 속성을 가진다.
- 속성은 쿠키의 만료 기간, 도메인, 플래그 등의 정보를 저장한다.
- HTTP 응답의
Set-Cookie
헤더와 HTTP 요청의Cookie
헤더에 포함된다.
- 브라우저에 저장되기 때문에 보안상 한계가 있다.
- 민감하거나 중요한 정보를 담으면 안된다.
토큰
- stateless
- 서버가 다중화된 경우에 세션은 스티키 세션 혹은 세션 클러스터링(redis, memchached) 등 fail tolerant 를 갖추기 위한 노력이 필요하다.
- 이러한 부담없이 인증과 인가를 구현하기 위해 고안된 것이 Token, JWT 방식
- 토큰 자체에 정보를 담는 방식
Verify Signature = HS256(Header+"."+Payload, secretKey)

- 이미 발급된 토큰을 제어할 수 없다.
- 유호시간을 최대한 짧게 가져며 refresh 토큰을 함께가져가는 방법도 있음
See Also)