오늘의 키워드
- Refresh Token
오늘의 내용
- Refresh Token
- 사용자의 인증을 위한 토큰이 아니라 새로운 Access 토큰을 생성하는 용도로 사용된다
- 인증은 access토큰이 담당하지만 시간이 만료되면 refresh토큰으로 다시 access토큰을 생성해 준다
- 토큰은 만료시간을 두는데 이유는 토큰이 유출되게 되면 사용자의 정보가 탈취당하기 때문에 만료시간을 주어 시간이 만료되면 아무 의미 없는 문자열이 되기 때문이다
- access토큰은 보안 때문에 시간을 짧게 정해 잦은 로그인을 해야 되는 상황이 발생하기 때문에 refresh토큰을 사용한다. refresh토큰은 만료시간이 길고 access토큰을 발급하는 기능을 하기 때문이다
- 적용방법
- JwtRokenProvider를 사용해 Refresh 토큰을 발급하는 메서드를 만든다
- 반환값을 Access와 Refresh 토큰들의 응답 DTO를 따로 만든다
- Refresh 토큰 엔티티와 레파지토리를 만든다
- Refresh 토큰을 발급하고 저장 후 Access 토큰과 함께 반환해 준다
- Refresh 토큰이 만료되면 재 로그인을 통해 토큰을 재발급받는다
오늘의 회고
- 어찌어찌 프로젝트를 완성했는데 추가 구현단계에서 로깅과 Refresh Token부분을 구현하려고 보니 찾아서 할만한 수준이 아닌 거 같아 개념만 먼저 찾아봤다 주말에 시간이 허락하면 다시 시도해봐야 할 듯하다.
'TIL' 카테고리의 다른 글
내일배움캠프 8주차 Java Class, 예외처리 (0) | 2024.06.04 |
---|---|
내일배움캠프 8주차 프로젝트 리펙토링 (0) | 2024.06.03 |
내일배움캠프 7주차 Spring Password Encoder, @Authenticationprincipal (0) | 2024.05.31 |
내일배움캠프 7주차 Spring @PathVariable, @RequestParam, @ModelAttribute, @RequestBody,...... (0) | 2024.05.29 |
내일배움캠프 7주차 모의면접 (0) | 2024.05.28 |