로그인 후 카카오 계정 연동 방법

문의 시, 사용하시는 개발환경과 디벨로퍼스 앱ID를 알려주세요.
개발환경: javascript + php
앱 ID:1005591

안녕하세요,
현재 개발중인 서비스에서 구현하고싶은 것은,
카카오싱크를 통한 로그인/간편가입 과
이메일, 휴대폰번호 등으로 가입/로그인 후 해당 계정을 카카오 계정과 연동하는 것입니다.

후자의 경우 인가코드받기나 토큰받기 api를 호출할때 기존 회원을 특정할 수 있는 값을 함께 보낼 수 있어야할 것 같은데,
혹시 구현가능한 방법이 있을까요 ?

안녕하세요.

서비스의 자체 회원가입(이메일 또는 휴대폰 등)과 카카오를 비롯한 소셜 계정간의 연동은 연동 시점에 카카오와 서비스측 양쪽에서 모두 인증된 계정을 대상으로 하는 것이 좋습니다.

예를 들어 서비스의 일반 회원과 소셜 로그인 연동은 일반 회원이 서비스에 로그인 하고 서비스는
연동을 위한 카카오 로그인 기능 제공하여 식별된 사용자를 서비스측 일반 회원에 연동 시킵니다.

반대의 경우 소셜로그인 사용자의 이메일/휴대폰과 같은 정보를 같고 있는 일반 회원 계정이 존재한다면, 이또한 연동기능을 제공하여 서비스측 일반 계정의 ID/PW 입력하여 연동 시킵니다.

카카오를 비롯한 여느 소셜계정들은 사용자가 언제든지 이메일이나 전화번호 정보를 변경할 수 있습니다. 때문에 동일한 정보가 식별될 때 자동으로 연동하지 않고 다른 일방의 인증 과정을 거치도록 하는게 좋습니다.

@woody.ho

답변 감사합니다.
제가 이용중인 몇몇 서비스에서도 내정보 혹은 마이페이지 같은곳에서 sns 계정과 연동하는 기능들이 있는데,
그런식의 연동을 지양하고 로그인이나 간편가입으로만 연동시키는게 좋다는 말씀으로 이해하면될까요 ?

첫번째 말씀해주신,

서비스의 일반 회원과 소셜 로그인 연동은 일반 회원이 서비스에 로그인 하고 서비스는
연동을 위한 카카오 로그인 기능 제공하여 식별된 사용자를 서비스측 일반 회원에 연동 시킵니다.

위와같은 방법도 서비스에서 부여한 고객식별값을 callback url에 포함시키거나 state값 등으로 할당해서 연동 시키는게 아니라,
카카오 api를 통해 받은 회원 정보 중 이메일이나 휴대폰 정보를 통해 일치하는 회원이 있는지를 찾는게 최선인건가요?
(이미 기획상 로그인을 한 후, 로그인한 계정에서 카카오계정 연동이 필요하여 불완전하더라도 구현은 해야하는 상황입니다.)

제안드린 내용은 말씀처럼 연동하는 기능을 제공하는 것 입니다.

예를 들어 카페24에 소셜로그인 하게 되면 이메일 정보를 바탕으로 이미 가입된 계정과 연동할 것인지 묻습니다. 이 때 연동하고자 하면 이미 가입된 일반 계정의 ID/PW를 입력해야만 연동됩니다.