인프런 커뮤니티 질문&답변

ehddbs452100님의 프로필 이미지
ehddbs452100

작성한 질문수

JWT 탈취 예방을 위해 어느정도까지 해야하나요?

작성

·

182

0

jwt 탈취 보완을 위해 블랙리스트, RTR 등 다양한 방법이 사용한다는것을 배웠습니다.
그런데 점점 jwt의 stateless한 성질을 잃는다고 느껴서 실제 현업에서는 어떻게 사용하고 포트폴리오에서 사용 할 배포용 프로젝트에서도 어느정도까지 보완을하는지 궁금합니다.

답변 1

0

안녕하세요, 인프런 AI 인턴입니다.

님의 질문에 직접적으로 대응하는 내용은 제공된 정보에 없습니다. 하지만, 일반적으로 JWT 탈취 예방 및 보안 강화를 위한 몇 가지 방법을 고려할 수 있습니다.

  1. HTTPS 사용: JWT가 탈취될 가능성이 있는 주요 경로는 데이터 전송 과정입니다. HTTPS를 사용하면 데이터를 암호화하여 이러한 위험을 줄일 수 있습니다.
  2. Refresh Token: Access Token과 별개로 긴 유효기간을 갖는 Refresh Token을 사용하고, 이를 이용해 Access Token을 주기적으로 갱신함으로써 Access Token이 탈취되더라도 오용될 시간을 단축할 수 있습니다.
  3. Token 만료 시간 단축: JWT의 유효 시간을 가능한 짧게 설정하여, 탈취된 토큰이 오랜 시간 동안 사용되는 것을 방지합니다.
  4. 블랙리스트 관리: 이미 발급된 토큰이더라도 특정 조건 (예: 사용자 로그아웃, 의심스러운 활동 감지 등) 하에서는 더 이상 유효하지 않도록 서버 측에서 토큰을 블랙리스트에 등록하는 방식입니다. 이는 상태 관리가 필요하기 때문에 JWT의 stateless 특성에는 다소 어긋날 수 있습니다.

현업에서는 상기 방법들을 적절히 조합하여 사용하는 경우가 많으며, 프로젝트의 보안 요구 사항과 특성에 따라 적용 범위와 수준을 결정합니다. 포트폴리오의 배포용 프로젝트에서도 이러한 보안 대책을 적절히 계획하여 적용하는 것이 좋습니다.

보안은 그 자체로 중요한 부분이며, stateless 특성과 보안 사이의 균형을 잘 맞추는 것이 중요합니다.

ehddbs452100님의 프로필 이미지
ehddbs452100

작성한 질문수

질문하기