"JWT를 많이 쓰나요?" 질문에는 "네" 라고 답변을 드릴 수 있겠습니다. 다만 문승욱님 말씀처럼 JWT는 인증된 정보를 안전하게 사용하기 위한 방법중 하나이고, JWT 말고도 많은 방법들이 존재
"JWT를 많이 쓰나요?" 질문에는 "네" 라고 답변을 드릴 수 있겠습니다. 다만 문승욱님 말씀처럼 JWT는 인증된 정보를 안전하게 사용하기 위한 방법중 하나이고, JWT 말고도 많은 방법들이 존재합니다. 질문자분께서 커리어리 Q&A 게시판에 질문 글을 올리실 때 어떤 과정을 거칠까요? 회원임을 확인하기 위해 먼저 로그인을 진행하고(인증), 질문자분께서 Q&A 게시판에 질문 글을 작성할 권한(인가)을 가졌는지 인증된 정보를 통해 확인 할 것 같습니다. 단순히 인증/인가만 거친다면 "인증을 마친 상태", 즉 로그인 상태를 유지시켜 줄 수 없습니다. 인증된 정보를 어딘가엔 저장해두어야 로그인이 유지될거에요. 그렇다면 이렇게 인증된 정보는 어디에 담아두는게 좋을까요? 질문자분의 PC에 Cookie를 통해 저장 해두고, 커리어리 서버로 향하는 모든 요청에 Cookie를 포함시키는 건 어떨까요? 아마도 보안이 굉장히 취약할 것 같아요... 커리어리 서버에서 Session을 통해 관리하는 건 어떨까요? 사용자의 수도 많아지고, 요청도 다양해지는데... Session을 모아둔 서버나 DB 에 너무 많은 부하가 걸릴 것 같아요... PC도 안되고 서버도 안되면 도대체 어디에 담아야 할까요? PC와 서버 사이를 오가는 HTTP 요청/응답 속에 조그맣게 인증정보를 끼워넣으면 어떨까요? 그렇게 Token 이라는 개념이 등장했습니다. 그리고 질문의 주제인 JWT는 이 수 많은 Token 중 하나 입니다. 앞서 말씀드린 인증과 인가, Token 인증 방식의 등장 배경을 쉽고 재밌게 정리한 영상을 하나 추천 드리겠습니다. https://www.youtube.com/watch?v=y0xMXlOAfss