하아안우
115
2021-11-06 18:53:46
4
1062

refresh token을 사용하면 jwt가 session보다 좋은 점이 뭔가요?


로그인을 구현하던 도중 세션에서 jwt로 옮겼는데 jwt로 accesstoken과 refreshtoken을 둘 다 발급하려고 합니다. 근데 refreshtoken을 서버사이드 db에 저장하면 세션보다 jwt가 좋은 점이 있나요? 트래픽 크기도 크고 페이로드에 들어가는 정보도 한정적인 것 같은데.. 좋은 의견 감사합니다!

1
  • 댓글 4

  • 아캔두
    232
    2021-11-06 20:26:38

    서버가 MSA 기반으로 구축되어 있을 경우 세션기반의 로그인은 클라이언트와 서버가 1대1 매핑이 되어야 하기때문에 구현이 어렵습니다 ( 세션을 중앙서버에 놓는 방법이 있기는 합니다) 토큰 기반 로그인의 경우 일단 토큰을 발급해주고 나면 서버에서는 해당 토큰에 대해서 모르고 있어도 되겠죠 그래서 토큰 기반 로그인은 MSA 구조의 서버 아키텍처에서 강점을 가집니다. 이상 2년차 개발자의 면접때 답변이었습니다

  • 하아안우
    115
    2021-11-06 23:13:18

    ㄴ 아 그렇구나 그럼 MSA 구조를 사용하는 복잡한 프로젝트에서나 기업이 아니면 세션을 사용하는게 나을까요??

  • zepinos
    21k
    2021-11-06 23:58:15

    세션도 세션클러스터링 구축하면 MSA 형태여도 큰 문제는 없습니다. token 역시 단점이 있고 refresh token 역시 클라이언트 브라우져에 저장하면 보안상 취약해지기 때문에 어떤게 더 나을지 결정해서 사용하면 된다고 생각합니다.

    세션은 기본적으로 언어 종속적인 경우가 대부분이고 범용성이 떨어지지만 token 이나 refresh token 자체는 언어 종속적인 점이 없는게 msa 같은 형태에서 유리한 부분도 있습니다.

  • 하아안우
    115
    2021-11-07 12:58:07

    ㄴ 아하 언어 종속적인 경우도 있구나. 감사합니다.

  • 로그인을 하시면 댓글을 등록할 수 있습니다.