JS SDK에서 AccessToken 문의

카카오 아이디로 로그인을 구현 중에 JS SDK의 AccessToken 설정에 대해 문의드리고자 합니다.

https://developers.kakao.com/docs/latest/ko/kakaologin/js에서 사용자 토큰 할당을 보면 서버에서 발급받은 AccessToken을 SDK에서 사용할 수 있도록 Kakao.Auth.setAccessToken(USER_ACCESS_TOKEN);를 호출하는데요.

외부에서 이렇게 설정해놓은 AccessToken을 Kakao.Auth.getAccessToken()으로 가져와 RestAPI의 /v2/user/me로 이용자 정보를 요청하는 문제가 생길 수 있는지 궁금합니다.

1개의 좋아요

@anon96542462

말씀하신 방식으로 사용하실 수 있습니다.

@anon96542462

말씀하신 방식으로 사용하실 수 있습니다.

답변 감사합니다!

그러면 Kakao.Auth.getAccessToken()과 Rest API의 /v2/user/me가 이용자(resource owner)로부터 허가받은 파트너(client) 외 사용할 수 있는 위험도 있을까요?

JS SDK의 app Key는 브라우저에 노출되어 있고 REST API 호출은 client secret를 설정하지 않으면 파트너 식별값이 없어 제 3자가 프론트에서 토큰을 습득하여 이용자 정보 요청이 가능한 지 알려주시면 감사하겠습니다.

@anon96542462

말씀하신 것과 같이 JS-SDK 키는 웹 페이지에 노출될 수 있습니다.
하지만 JS-SDK를 통한 AccessToken 요청 시 에는
디벨로퍼스에 등록된 도메인만 허용되기 때문에,
JS-SDK키가 노출되더라도 제3자가 임의로 토큰발급 요청을 할 수 없습니다.

REST-API 방식의 경우에도, 디벨로퍼스에 등록된 RedirectURI만 허용되기 때문에
제3자가 인가코드를 취득하여 토큰발급 요청을 할 수 없으며,
추가적인 보안을 위하여 client_secert을 사용할수도 있습니다.

1개의 좋아요