로그인시 토큰발급 구현 문의드립니다

카카오 로그인을 구현하려고 하는데있어 문의사항이 있어 도움부탁드립니다.
먼저 저희 구성은 Front / Back 이 세션기반으로 되어있지가 않습니다. 서버가 restful API 로 제공되고 있습니다
그리고 Token 발급시 보안설정을 통해 client_secret 코드를 발급받아 사용하고자 하는데
Front 에서 이 시크릿 코드를 노출시키지 않고 구현할 수 있는 방법을 알고 싶습니다.

가이드에서도 Service Server의 redirect uri 를 통해서 토큰을 발급하고 프론트에 전달하는 것 같은데,
저희는 front 와 back이 분리가 되어있어서 이게 불가능합니다.

혹시 이 구성에서는 시크릿코드를 통한 카카오 로그인(토큰발급) 이 불가능할까요?

Front 에서 토큰 발급시 Rest API 사용하게되면 secret 코드가 노출될 것 같은데 도움 부탁드립니다.

안녕하세요.

그리고 Token 발급시 보안설정을 통해 client_secret 코드를 발급받아 사용하고자 하는데
Front 에서 이 시크릿 코드를 노출시키지 않고 구현할 수 있는 방법을 알고 싶습니다.

토큰발급을 Front 에서 하지 말고, 백엔드에 일임하면 노출 시키지 않고 사용하실 수 있습니다.
물론, 백엔드에서 토큰 유지를 위해 세션에 담거나 DB 에 저장하는등 보관이 필요합니다.

가이드에서도 Service Server의 redirect uri 를 통해서 토큰을 발급하고 프론트에 전달하는 것 같은데,
저희는 front 와 back이 분리가 되어있어서 이게 불가능합니다.

그렇지 않습니다. REST-API 방식 카카오 API호출은 백엔드에 일임하는 것을 권장합니다.

보안 권장사항 참고 Kakao Developers


아래 node.js 예제를 참고하시면 이해하는데 도움이 되실 것 같습니다.

(1) front에서 인가요청 → (2) backend로 리다이렉트 → (3) backend redirect uri 에서 인가코드와 client_secret으로 액세스 토큰 발급 → (4) backend에서 액세스토큰으로 사용자정보조회 API 호출 → (5) backend에서 로그인 처리 및 회원가입 처리 → (6) front에 결과 전달

[rest api 예제] node.js- 카카오 로그인, 카카오 친구목록 조회, 나에게 메시지 발송