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

이지수님의 프로필 이미지

작성한 질문수

생산성을 향상시키는 스프링부트 기반의 API 템플릿 프로젝트 구현

리프레시 토큰 사용 관련 문의 건

24.02.28 16:42 작성

·

204

·

수정됨

0

강사님 안녕하세요 :)

강의 관련하여 문의 드립니다.

 

현재 강의 내용에선 액세스 토큰과 리프레시 토큰을 DTO에 담아 서버에서 클라이언트로 전달하고 있습니다.

1) 이 경우, 사용자 또한 네트워크 탭에서 전달되는 토큰을 모두 확인할 수 있는건가요? 보안 문제는 없을지요?

2) 프로젝트에 리프레시 토큰을 적용하는 중인데, 위 사항을 감안하고도 DTO로 전달하는 방식으로 진행해도 될지요? 또한 이 경우가 가장 일반적인 경우일지요?

3) 만약 액세스 토큰은 쿠키에 담아 웹브라우저가 컨트롤하게 하고,

리프레시 토큰만 서버에서 DTO에 담아 전달하는 방식은 어떤지요?

 

프로젝트 진행 기준으로 안내주시면 참고하여 진행하도록 하겠습니다. :)

답변 1

2

구파고님의 프로필 이미지
구파고
지식공유자

2024. 02. 29. 21:18

안녕하세요 저도 보안에 대해서 자세히 아는건 아니지만 제가 아는선에서 답변드리겠습니다.

  1. https로 전송 시 값 자체를 암호화해서 보내기 때문에 중간에 탈취되더라도 토큰 값 자체를 볼 수는 없을 것 2. 입니다. 카카오 API도 그렇고 다른 it기업들의 API문서를 보더라도 Response Body에 토큰 값을 담아서 반환하고 있습니다.


    3. Client에 토큰을 저장 시 어디에 저장할지가 사실 더 중요하다고 생각합니다. 참고할만한 블로그들을 첨부드립니다!

https://www.google.com/search?q=%ED%86%A0%ED%81%B0+%ED%81%B4%EB%9D%BC%EC%9D%B4%EC%96%B8%ED%8A%B8+%EC%A0%80%EC%9E%A5&sourceid=chrome&ie=UTF-8

https://blogeon.tistory.com/entry/JWT%EC%9D%98-Refresh-Token%EA%B3%BC-Access-Token%EC%9D%80-%EC%96%B4%EB%94%94%EC%97%90-%EC%A0%80%EC%9E%A5%ED%95%B4%EC%95%BC-%ED%95%A0%EA%B9%8C