카카오톡 로그인 Flutter sdk with firebase or etc

안녕하세요. 빠른 소통에 인상깊어하고 있습니다.
저는 flutter 사용중입니다.
카카오톡/계정으로 로그인(가입)을 구현중인데,
flutter sdk가 있어서 구현이 편하게 되어있어서 기쁩니다.

다만, firebase나 유사 baas에서 oauth2 프로바이더에
카카오가 없다보니 통합 인증을 하고싶은데 그러려면
일부 구현을 해야하더라구요.
서버는 node js를 사용중인데 조언을 얻고 싶습니다.

2가지 방법이 떠오르는데요.
첫째는
! flutter 클라이언트에서 앱키를 이용해서 카카오인증 서버에 로그인요청
-> flutter 앱으로 redirect
-> flutter앱에서 다시 nodejs 서버에 토큰을 넘겨주고
-> 서버에서 rest api로 카카오인증 서버와 검증질의 & 비즈니스처리
이렇게 하는 방안과

두번째 기대하는 방법은
! 첫번째와 마찬가지로 앱키를 이용해서 카카오 인증서버에 로그인요청
-> *콘솔에서 등록한 nodejs 엔드포인트 url로 redirect & 앱은대기중
-> 서버에서 카카오에서 넘겨준 토큰으로 비즈니스로직 실행
-> 앱스키마로 리턴(어떻게 하는지 모름 가능한가요?)
이 두과정이 올바른 접근이 맞는지
아니면 더 탁월한 use case가 있는지 조언부탁드립니다.

flutter를 사용하면서 카카오"톡"을 이용한 소셜 통합 로그인을 구현하려니
이런고민이 듭니다.
미리 답변 감사합니다

안녕하세요.

프론트와 백엔드가 분리된경우
보통은 프론트에 로직을 두지 않고 백엔드에 데이터를 요청하는 방식으로 많이 구현하는데요.
기재 해주신 첫째 방법과 유사한데, 액세스 토큰은 주고받지 않고 백엔드에서만 가지고 있는 것으로 하면 좋을 것같아요.

(1) 프론트에서 카카오로 인가요청
(2) 리다이렉트된 프론트에서 인가 코드받아서 백엔드로 인가 코드전달
(3) 백엔드에서 인가 코드로 토큰 발급, 필요시 사용자 정보조회까지 해서 프론트로 전달

1개의 좋아요