spring_JWT

Today Jeeho Learned·2022년 6월 15일
0

Spring

목록 보기
15/31
post-thumbnail

JWT

JMT이 생각나는데..

JSON Web Token의 약자로 간단하게 설명하면 Header, Payload, Signature의 구조를 갖추고 있는 JSON 타입의 self-contained 한 암호화 서명이다.

기존에서 client와 server관계에서는

ex)
1. clinet에서 로그인 요청을 보낸다.
2. 서버에서 프로세스를 거쳐 요청이 맞으면 server에서는 sessionID를 cookie에 저장해서 응답으로 같이 돌려준다. 서버내부에서는 sessionID를 관리한다.
3. clinet가 다시 sever에 요청할때 쿠키(sessionID를 포함)를 같이 보내는데, 서버에서는 sessionID를 확인하고, 로그인시에 볼수있는 웹 페이지들을 보여준다.

여러 sessionID를 관리하는 것이 사용자가 증가할수록 점점 어려워지면서 JWT를 사용하게 되었다.

최초 로그인 시점에서 JWT토큰을 서버에서 발급받고, 이후에 인증이 필요한부분에 접근하려고할때 항상 JWT토큰을 요청과 함께보내면 토큰이 털리지 않는 이상 해당 유저가 인증된 유저임을 보장 가능하다.

헤더에는 암화화하는 알고리즘과 데이터 타입이 들어가고 payload에는 내가 설정하는 정보들의 값들이 들어간다. 마지막 사인에는 헤더와 payload와 secret키를 포함한다.

profile
기록해야 (살아)남는다 !

0개의 댓글