티스토리 뷰

JWT 사용의 우려와 고려사항

octo54 2025. 3. 6. 10:41
반응형

 

JWT(JSON Web Token)는 현대 웹 애플리케이션에서 인증과 권한 부여를 위해 널리 사용되는 기술입니다. 그러나 이러한 장점에도 불구하고, JWT 사용에 대한 몇 가지 우려와 단점이 존재합니다.

 

 

1. 토큰 무효화의 어려움 JWT는 무상태(stateless) 인증 방식을 채택하고 있어, 발급된 토큰을 서버 측에서 직접 무효화하거나 삭제하기 어렵습니다. 이로 인해 토큰이 탈취되거나 사용자가 로그아웃하더라도, 토큰의 만료 시간까지는 유효하게 남아 있을 수 있습니다. 이를 해결하기 위해서는 토큰의 만료 시간을 짧게 설정하고, 리프레시 토큰을 활용하는 방식이 필요하지만, 이는 구현의 복잡성을 증가시킵니다.

2. 토큰 탈취 시 보안 문제 JWT가 탈취되면, 공격자는 토큰의 유효 기간 동안 해당 토큰을 사용하여 인증된 사용자로서 시스템에 접근할 수 있습니다. 이러한 상황을 방지하기 위해서는 HTTPS를 통한 안전한 전송과 토큰의 짧은 유효 기간 설정 등이 필요합니다. 

반응형

3. 토큰 크기에 따른 성능 저하 JWT는 자체적으로 사용자 정보를 포함하므로, 토큰의 크기가 커질 수 있습니다. 이는 네트워크 트래픽을 증가시키고, 특히 모바일 환경이나 대역폭이 제한된 환경에서 성능 저하를 초래할 수 있습니다. 

4. 서버 확장 시 세션 관리의 어려움 전통적인 세션 기반 인증에서는 서버가 세션 정보를 저장하고 관리합니다. 그러나 서버가 확장되어 여러 대로 구성될 경우, 세션 정보를 공유하는 것이 복잡해질 수 있습니다. 이러한 문제를 해결하기 위해 JWT를 사용하지만, 앞서 언급한 보안상의 우려로 인해 신중한 접근이 필요합니다. 

5. 리프레시 토큰 관리의 복잡성 액세스 토큰의 짧은 유효 기간으로 인해, 리프레시 토큰을 사용하여 새로운 액세스 토큰을 발급하는 방식이 일반적입니다. 그러나 리프레시 토큰이 탈취될 경우, 추가적인 보안 문제가 발생할 수 있으며, 이를 방지하기 위한 추가적인 서버 측 저장소나 로직이 필요합니다

반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/03   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
글 보관함
반응형