TIL(25.1.23)

채채·2025년 1월 23일

Today I Learned

목록 보기
63/75

DRF에서 로그인 구현 시 토큰 리프레시 필요성

DRF 과제로 로그인을 구현하고 나서, 다른 사람들 과제를 봤더니, 토큰 리프레시도 구현되어있었다. 곰곰히 생각해보니 강의에서도 토큰 리프레시를 구현했었던거 같기도하고,,,
access 토큰을 일정시간이 지나면 만료되기 때문에 자동으로 토큰을 리프레시 해주어야 하기때문에, 토큰 리프레시를 구현해야한다.

토큰 리프레시가 필요한 이유

  • 토큰 만료: JWT(JSON Web Token)를 사용한 경우, 토큰에는 유효 기간이 설정되어 있음. 이 기간이 지나면 토큰이 만료되어 API에 접근할 수 없게 됨.
  • 보안 강화: 토큰이 유출되었을 경우, 해당 토큰을 이용한 무단 접근을 방지하기 위해 일정 시간이 지나면 토큰을 무효화하고 새로운 토큰을 발급해야 함.

토큰 리프레시의 작동 방식

  • 로그인 성공: 사용자가 로그인에 성공하면 Access Token과 Refresh Token이 발급됨.
  • Access Token 사용: 클라이언트는 API 요청 시 Access Token을 헤더에 포함하여 인증을 수행함.
  • Access Token 만료: Access Token이 만료되면 서버는 401 Unauthorized 응답을 반환함.
  • Refresh Token 사용: 클라이언트는 Refresh Token을 이용하여 새로운 Access Token을 요청함.
  • 새로운 Access Token 발급: 서버는 Refresh Token의 유효성을 검증하고 새로운 Access Token을 발급함.
  • Access Token 갱신: 클라이언트는 새로운 Access Token을 저장하고 이후 API 요청에 사용함.

토큰 리프레시 시 고려 사항

  • Refresh Token 보안: Refresh Token은 비밀번호와 마찬가지로 보안에 매우 중요한 정보임. 안전한 곳에 저장하고, 유출되지 않도록 주의해야 함.
  • Refresh Token 만료: Refresh Token에도 유효 기간을 설정하여 만료 시 새로운 Refresh Token을 발급받도록 함.
  • Token Rotation: 정기적으로 Access Token과 Refresh Token을 갱신하여 보안을 강화해야함.

구현은,,, 내일해야지,,, ^^

profile
화이팅

0개의 댓글