소셜 로그인 유지를 위한 갱신토큰 (refresh_token) 사용 방법 질문입니다
본문
sns가입으로 네이버와 카카오를 사용중인데요. 너무 빨리 로그인이 풀려버려서 방법을 찾아보고 있습니다. 네이버의 경우는 refresh token이 있던데, 어떻게 그누보드에 적용해야할지 감이 안오네요.
네이버에서 개발가이드를 제공중인데 요청예제문을 봐도 어떻게 적용해야 할지 감감합니다.
https://developers.naver.com/docs/login/devguide/devguide.md
어떻게 적용해야 할지 귀한 답변 부탁드립니다.
답변 1
클라이언트 ID와 시크릿은 네이버 API에 접근하기 위한 인증 정보를 제공하지만, 리프레시 토큰은 액세스 토큰이 만료되었을 때 새로운 액세스 토큰을 발급받기 위해 사용하게 되므로,
따라서, 리프레시 토큰을 사용하여 새로운 액세스 토큰을 발급받는 로직을 추가하는 것이 필요하며,
OAuth2 라이브러리를 사용하여 리프레시 토큰을 관리하고 새로운 액세스 토큰을 발급받는 코드를 작성을 하셔야 할것입니다.
이유는
네이버 Client ID와 Client Secret은 이미 그누보드 환경설정에서 등록되어 있으므로 더 이상 설정할 필요 없게되므로, 리프레시 토큰 관리와는 별개의 문제이지만 이미 로직을 가지고있기때문에 로그인 시 Refresh Token 저장해야하므로 회원테이블에 필드추가하시고 네이버 콜벡처리에서 저장로직을 추가 해 줘야 할 것으로 보이며, 또한 Access Token이 만료되었을 때 Refresh Token을 사용해야하므로, 새로운 Access Token을 요청해야하므로, 갱신요청 로직이 구현이 추가로 되어야 합니다.
그렇면......음