평소 JWT를 다뤄오면서 어느정도까지 Stateless를 보장해야하는가에 대한 고민을 많이 하였다. 최근 좋은 영상을 만나게 되어 생각을 정리하였기 때문에 해당 내용을 이번 게시글에서 기록하겠다.
먼저 JWT에 대한 생각 정리에 도움을 준 아래 영상을 추천하겠다.
스프링 시큐리티 JWT 14 : JWT의 목표
JWT와 세션 기반 인증 방식의 차이점인 JWT의 Stateless한 특성에 집착하여, Redis 같은 저장소에 토큰 정보를 저장하는 것에 대한 망설임이 있었다. 그래서 고민에 고민을 거듭하며 확신을 가지지 못하였다.
하지만 해당 영상을 통해 생각을 정리할 수 있었다. 영상의 핵심 메시지는 "JWT를 사용하는 이유에 대해 생각해보라"는 것이다. 영상을 보며, JWT의 Stateless한 특성에만 집중하기보다는, JWT를 도입한 본래의 목적에 주목해야 한다는 교훈을 얻었다. 즉, Stateless를 넘어서 JWT가 우리에게 제공하는 보안과 확장성의 이점을 활용하는 것이 중요하다.
이 글이 비슷한 고민을 가진 개발자들에게 도움이 되길 바란다. 개발자 유미님의 말처럼, 이제는 상태를 저장하는 것에 대한 큰 고민을 덜게 되었다. 왜냐하면, 결국 JWT의 본질적 목적이 Stateless가 아니기 때문이다.