본문 바로가기

플밍 is 뭔들/그 외..

[JWT] JSON Web Token JWT Process

※ JWT 프로세스
 
1.사용자가 id /password를 입력하여 로그인을 시도합니다.
 
2.서버는 요청을 확인하고 secret key를 통해 Access Token을 발급합니다.
 
3.JWT 토큰을 클라이언트에 전달합니다.
 
4.이후 JWT가 요구되는 API를 요청할 때는 클라이언트가 Authorization  Header에 Access Token을 담아 보냅니다.
 
5.서버는 JWT signature를 체크하고 Payload로부터 user정보를 확인해 데이터를 리턴합니다
 
 
  • 클라이언트의 로그인 정보를 서버 메모리에 저장하지 않기 때문에 토큰기반 인증 메커니즘을 제공합니다.
  • 인증이 필요한 경로에 접근할 때 서버 측은 Authorization Header에 유효한 JWT가 존재하는지 확인합니다.
  • JWT에는 필요한 모든 정보를 토큰에 포함하기 때문에 데이터베이스와 같은 서버와의 커뮤니케이션 오버 헤드를 최소화 할 수 있습니다.
  • Cross-Origin Resource Sharing (CORS)는 쿠키를 사용하지 않기 때문에 JWT를 채용한 인증 메커니즘은 두 도메인에서 API를 제공하더라도 문제가 발생하지 않습니다.
  • 일반적으로 JWT토큰 기반의 인증 시스템은 위와같은 프로세스로 작동하며 처음 사용자를 등록할 때 Access Token과 Refresh Token이 모두 발급되어야 합니다.