🎫 JWT Decoder
JWT (JSON Web Token)을 디코딩하고 검증합니다
JWT(JSON Web Token)란?
왜 필요한가요?
JWT는 웹 애플리케이션에서 사용자 인증과 정보 교환을 위한 표준 토큰 형식입니다. 서버와 클라이언트 간에 안전하게 정보를 전달할 수 있으며, 토큰 자체에 사용자 정보가 포함되어 있어 별도의 세션 저장소 없이도 인증을 구현할 수 있습니다. 특히 마이크로서비스 아키텍처나 API 기반 애플리케이션에서 널리 사용됩니다.
언제 사용하나요?
- 토큰 디버깅: 로그인 실패 시 JWT 토큰의 헤더와 페이로드를 확인하여 문제 원인 파악
- 개발/테스트: API 응답으로 받은 JWT의 내용을 빠르게 확인
- 토큰 검증: exp(만료시간), iss(발급자), aud(대상) 등 클레임 값 확인
- 권한 확인: 토큰에 포함된 role, permissions 등 권한 정보 확인
실무 사용 예시
시나리오: 로그인 후 "Unauthorized" 오류가 발생하는 경우
- 브라우저 개발자 도구에서 JWT 토큰 복사
- JWT 디코더에 붙여넣기하여 페이로드 확인
- exp(만료시간)이 현재 시간보다 이전인지 확인
- iss(발급자)와 aud(대상)가 서버 설정과 일치하는지 확인
- role이나 permissions가 접근하려는 API에 필요한 권한을 가지고 있는지 확인
주의사항
- 민감한 정보 노출: JWT는 Base64로 인코딩되어 있어 누구나 디코딩할 수 있습니다. 비밀번호, API 키 등 민감한 정보는 절대 포함하지 마세요.
- 서명 검증: 이 도구는 디코딩만 수행합니다. 실제 서명 검증은 서버에서 이루어져야 합니다.
- 만료시간 확인: exp 클레임을 항상 확인하여 토큰이 유효한지 확인하세요.
- 토큰 크기: JWT에 너무 많은 정보를 담으면 토큰 크기가 커져 네트워크 오버헤드가 발생할 수 있습니다.