대표적인 토큰 기반 인증기술로는 JWT 가 있습니다. JWT (JSON Web Token) 데이터 전송에 사용하는 대표적인 토큰기반 인증기술로, JSON 형식으로 저장한 정보(payload)를 암호화(서명)하여 전송합니다. 클라이언트가 서버에 요청을 보낼때 인증정보를 암호화된 JWT 토큰으로 제공하고, 서버는 이 토큰을 검증하여 인증정보를 확인할 수 있습니다. JWT의 구성요소 JWT는 어떻게 토큰을 암호화하고 이를 검증하는 지 알아봅시다 JWT 기술로 만든 토큰은 보통 다음과 같은 형식의 문자열로 이루어집니다 여기에서 점(.)이 찍힌 부분을 기준으로 헤더(Header) , 페이로드(Payload), 시그니쳐(Signiture) 이렇게 3부분으로 나뉩니다 헤더(Header) 가장 앞에 위치한 헤더에는 마..
세션이란 사용자가 인증에 성공한 상태를 말하고, 토큰이란 교통승차권과 같이, 무언가를 이용할 수 있는 권한이나 자격을 나타내는 징표입니다 토큰 기반 인증방식은 세션 기반 인증이 가지고 있던 한계를 극복하고자 만들어졌습니다. 세션 기반인증은 서버에서 유저의 상태를 관리합니다. 그래서 개발자들은 서버의 부담을 줄이기 위해서, 서버에 사용자의 인증상태를 저장하는 것이 아닌 클라이언트에 이를 저장하는 방법을 고안하였고, 그게 바로 토큰입니다. 세션 기반 인증방식 먼저, 토큰 기반 인증방식이 생겨난 배경인, 세션 기반 인증에 대한 간단하게 알아볼까요? 1. 유저가 인증정보를 담아 서버에 로그인 요청을 보냅니다 2. 서버는 데이터베이스에 저장된 유저의 인증정보를 확인합니다 3. 인증에 성공했다면, 해당 유저에 대한..