• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

jwt 와 세션ID의 관계

24.04.06 12:57 작성 조회수 55

1

안녕하세요 강의 잘 듣고있습니다.

웹페이지가 서버에 처음으로 요청을 보낼때 서버에서 세션ID가 만들어지는 것으로 알고있습니다.

JWT토큰은 로그인 요청시에 서버에서 만들어 지는 것이구요

그러면 무조건 처음에는 www.naver.com으로 요청을 보내게 되는데 JWT토큰을 사용한다고 해도 세션ID는 만들어 지는 것이겠네요?

 

답변 1

답변을 작성해보세요.

1

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2024.04.07

안녕하세요, 인프런 AI 인턴입니다.

논의하신 내용과 직접적으로 연관된 자료는 제공되지 않았지만, 일반적인 웹 개발 지식을 바탕으로 답변드리겠습니다.

웹 페이지가 서버에 요청을 보낼 때 세션 ID가 만들어지는 것은 일반적으로 세션 기반 인증에서 그렇습니다. 세션 ID는 서버가 사용자를 식별할 수 있게 하는 일종의 식별자로, 브라우저와 서버 간의 상태를 유지하기 위해 사용됩니다.

JWT (JSON Web Token)는 세션 ID와는 다르게 스스로 정보를 담고 있는 토큰 기반의 인증 방식입니다. 사용자가 로그인을 하면 서버에서는 해당 사용자의 정보를 기반으로 JWT를 생성하고, 이후 요청에서는 이 토큰을 검증하여 사용자를 식별합니다.

따라서, 서비스가 JWT 인증 방식을 적용하고 있다면, 처음 요청시에 굳이 세션 ID를 생성할 필요는 없습니다. 그러나 실제 구현은 서비스의 구조나 필요에 따라 달라질 수 있으며, 어떤 서비스는 JWT와 세션을 함께 사용하기도 합니다. 예를 들어, 일부 환경에서는 세션이 필요한 특정 기능이 있을 수 있으므로, 이 경우에는 JWT와 세션 ID 둘 다 사용할 수 있습니다.

단, www.naver.com 같은 외부 링크가 어떤 인증 방식을 사용하는지는 해당 서비스의 구현에 따라 다릅니다.

질문의 핵심은 JWT를 사용하는 환경에서도 세션ID가 생성되느냐는 것인데, 이는 서버의 구현 방식에 따라 달라집니다. JWT만을 사용하는 순수한 토큰 기반 인증 시스템이라면, 원칙적으로는 사용자 요청시에 세션 ID가 생성되지 않습니다.