jwt

    JWT 총정리 (2) - Access Token, Refresh Token

    이전 게시글 https://morenow.tistory.com/56 JWT 총정리 (1) - JWT의 원리와 흐름 JWT의 탄생 이전의 인증 체계 JWT 탄생 이전의 인증 체계는 Session & Cookie 방식을 사용했다. 이 방식에서의 여러 단점이 있었지만 가장 큰 단점은 세션 저장소였다. 사용자의 세션 ID를 모아놓은 세 morenow.tistory.com 이전 게시글에서 JWT가 어떤 방식으로 동작하는지 어떤 흐름인지 알아보았다. 이제 실제 동작하는 과정을 알아보고, Spring Boot에서의 간단한 코드를 통해 분석해보자. 그리고 JWT의 단점의 절충안인 Refresh Token에 대해서도 알아보자. Access Token 서버에서 발급한 JWT를 해당 서버에 접근할 수 있다는 의미로 Acce..

    Oauth 2.0 & JWT 의 두 가지 흐름, 그리고 OIDC

    아래 그림들은 카카오 소셜 로그인의 흐름을 정리한 그림이다. 인터넷에 나와있는 각종 그림들을 보고 내 식대로 정리한 것이다. 또한 이런 흐름은 하나만 정답이 아니다. 나는 다음 게시글에서 많은 참고를 했다. https://ttl-blog.tistory.com/1434#%F0%9F%A7%90%20OAuth%202.0%20%ED%94%8C%EB%A1%9C%EC%9A%B0%20%EC%A0%95%EB%A6%AC-1 [Spring] 확장에 유연한 OAuth2.0 로그인 구현(카카오, 네이버, 구글 등) (Security 사용 X) (전 순정 백엔드 개발자기 때문에 React는 못합니다. React 코드는 Chat GPT 시켜서 구현하였고, 대신 백엔드에 온 진심을 담하서 구현하였으니, 프론트 코드는 정말 그냥 테..

    JWT 총정리 (1) - JWT의 원리와 흐름

    JWT의 탄생 이전의 인증 체계 JWT 탄생 이전의 인증 체계는 Session & Cookie 방식을 사용했다. 이 방식에서의 여러 단점이 있었지만 가장 큰 단점은 세션 저장소였다. 사용자의 세션 ID를 모아놓은 세션 저장소를 관리해야 했다. 그리고 매 요청마다 세션 저장소에 접근해야 하는 비용이 컸다. 또한 Monolith 방식의 구조에서 프론트엔드와 백엔드의 분리가 일어나고, 더 나아가 백엔드가 여러 서버로 갈라지는 Microservice 구조가 나타났다. 이 과정에서 세션 방식은 너무 큰 비용을 발생시켰다. 서버가 따로 세션을 관리해서 HTTP의 무상태성을 위배시키는 방식이 아니라 새로운 인증 체계가 필요했다. 이것이 JWT이다. 새로운 인증 체계 - 토큰 그럼 이렇게 하기 위해서 어떤 흐름을 가져..