본문 바로가기

개발

JWT token expire하는 법

반응형

jwt token은 stateless합니다. 그리고 토큰 탈취 우려가 있지요. 

token 기반 인증시 로그아웃등 토큰을 못쓰게 해야할때 어떻게 할까요?

exp을 앞당기거나 token을 무력화 시키면 될까요?

 

정답은 안됩니다. exp을 연장하는건 가능해도 이전에 발급한 토큰의 유효성을 수정할수는 없습니다. 

만약 토큰이 갈취되면 갈취된 토큰은 유효합니다.

 

그래서 두가지 방식을 제안드립니다.

1) 토큰의 만료 기간을 짧게 한다.

2) payload에 로그인한 ip를 담아, 로그인한 ip가 아니면 block한다.

 

위 방법들은 임시방편일 뿐입니다. 더 견고한 보안을 위해서면 아예 세션으로 auth로직을 구현해야할듯 합니다.

감사합니다.