카카오싱크 도입 문의

문의 사항에 따라 필요한 정보를 먼저 입력하시면 더 빠르게 대응해 드릴 수 있습니다.

  • 개발 과정에서 문제가 있을 경우

안녕하세요 저희는 금융 서비스 앱이며, 현재 카카오싱크 도입을 검토하고 있습니다.
아직 개발 전이나 검토 과정에서 여러가지 정책과 관련된 여부를 확인하고 있어 아래 내용에 대해 문의 드립니다.

우선 저희가 기획한 프로세스는 다음과 같습니다. (벤치마크는 카카오뱅크 카카오싱크입니다.)

  1. 최초 회원가입 시 휴대폰으로 시작하기, 카카오로 시작하기 분기 처리
  2. 카카오로 시작하기 클릭 시 인증, 인가 등 카카오싱크 프로세스 진행 후 당 서비스에서 필요한 추가 프로세스(간편인증 수단 등록 등) 진행 후 최종 회원 가입 처리
  3. 회원이 당 서비스 앱에 로그인할 때는 패턴 입력, 생체인증 등 간편인증 수단으로 로그인함

위와 같은 프로세스 진행할 경우 문의드릴 사항은 아래와 같습니다.

  1. 카카오로 회원가입을 완료한 회원이 당 서비스 로그아웃 시 카카오 로그아웃도 함께 진행해야 하는지요?

카카오 로그인은 유지하고 당 서비스만 로그아웃 시켜도 될련지요?

당 서비스 로그아웃 시 카카오 로그아웃도 함께 진행해야 한다면, 당 서비스는 회원이 로그인 시 패턴입력, 생체 인증 등으로 진행하는데, 이럴 경우 카카오 로그인 처리는 어떻게 진행해야 할까요?

패턴 입력, 생체 인증 시 카카오 로그인을 했다고 처리해도 될지요?

아니면 당 서비스 로그인 시 카카오 로그인 버튼을 따로 만들어야 할까요?

  1. 서비스 회원 탈퇴가 아닌 카카오 연결 끊기 케이스 발생 시 서비스 회원 탈퇴를 진행해야 하는지요?

서비스 회원은 탈퇴 시키지 않고 카카오 연결 끊기 후 카카오로부터 전달 받은 카카오 정보만 파기처리해도 되는지요?
위와 같이 진행해도 된다면, 카카오 정보 파기는 즉시 처리해야 하는지요?

  • 퍼머링크 생성이 필요할 경우 (자세한 신청 방법은 가이드 참고)
    • 카카오싱크 퍼머링크의 서비스 랜딩URL:
    • 디벨로퍼스 앱과 연결된 카카오톡 채널의 검색용 아이디:

카카오 로그인 관련 에러(Invalid redirect. 예: KOE006)가 발생할 경우, 가이드를 참고합니다.
카카오 싱크 관련 자주하는 질문은 FAQ를 참고합니다.

안녕하세요.

  1. 카카오로 회원가입을 완료한 회원이 당 서비스 로그아웃 시 카카오 로그아웃도 함께 진행해야 하는지요?
    카카오 로그인은 유지하고 당 서비스만 로그아웃 시켜도 될련지요?

로그아웃 API 는 발급된 액세스 토큰을 만료 처리하고
카카오계정과 함께 로그아웃은 카카오 계정 페이지로 리다이렉트 하여 브라우저에 저장된 카카오 계정 로그인 세션도 로그 아웃 합니다.
카카오톡 설치된 모바일 기기에서 간편로그인하면 현재 브라우저에 카카오계정 세션이 설정되지 않고 카카오톡 앱으로 인증하여 로그인하게됩니다.

이러한 전제로 운영하시는 서비스 상황에 맞게 카카오 로그아웃도 함께 처리하여, 안전하게 서비스 제공하는 것을 권장합니다.

당 서비스 로그아웃 시 카카오 로그아웃도 함께 진행해야 한다면, 당 서비스는 회원이 로그인 시 패턴입력, 생체 인증 등으로 진행하는데, 이럴 경우 카카오 로그인 처리는 어떻게 진행해야 할까요?
패턴 입력, 생체 인증 시 카카오 로그인을 했다고 처리해도 될지요?
아니면 당 서비스 로그인 시 카카오 로그인 버튼을 따로 만들어야 할까요?

(1) 현재 로그인된 계정이 카카오 로그인한 계정인지 확인하고
(2) 서비스측 로그아웃 후, 토큰 정보보기 API로 토큰이 유효하다면, 로그아웃 API 또는 카카오계정과 함께 로그아웃 호출하시면됩니다.

  1. 서비스 회원 탈퇴가 아닌 카카오 연결 끊기 케이스 발생 시 서비스 회원 탈퇴를 진행해야 하는지요?

운영하시는 서비스 내부에서 카카오로그인으로 가입한 회원이 탈퇴하는 경우 연결끊기 API 도 호출하셔서 연결끊어주시면되고

운영하시는 서비스 외부에서 연결끊기된 경우 연결끊기 콜백을 받을 수 있습니다.

운영하시는 서비스 상황에 따라 탈퇴를 연동하셔도 좋고, 서비스내 처분해야할 자산이 있다면, 연결끊기와 별개로 서비스내에서 자산 처분 후, 탈퇴 가능하도록 안내 및 탈퇴 기능 제공하시면됩니다.

서비스 회원은 탈퇴 시키지 않고 카카오 연결 끊기 후 카카오로부터 전달 받은 카카오 정보만 파기처리해도 되는지요?

이용자에게 혼선 발생하지 않도록 서비스 약관등에 탈퇴 방법과 데이터 보관/파기를 명시하여 동의 받아 처리하시면됩니다.

위와 같이 진행해도 된다면, 카카오 정보 파기는 즉시 처리해야 하는지요?

카카오 로그인으로 제3자 정보 제공 동의 받아 저장한 이용자의 개인정보는 관리주체가 운영하시는 서비스가 되며,
저장된 개인정보의 파기는 탈퇴 즉시 파기를 원칙으로하지만
재가입 방지, 이용자 CS 등의 사유로 한시적 보관이 필요한 경우 서비스 약관에 명시하여 이용자 동의 받아 일정기간 보관 후 파기 하시면됩니다.

참고.
서비스 약관 Kakao Developers
운영 정책 Kakao Developers
보안 권장사항 보안 권장사항 | Kakao Developers 보안 권장사항

감사합니다.

안녕하세요

답변해주셔서 감사드립니다.

답변 주신 내용을 보다보니 추가 질의 사항이 생겨 추가 댓글을 남깁니다.

(1) 현재 로그인된 계정이 카카오 로그인한 계정인지 확인하고
(2) 서비스측 로그아웃 후, 토큰 정보보기 API로 토큰이 유효하다면 로그아웃 API 또는 카카오 계정과 함께 로그아웃 호출

당 서비스 로그아웃 시 위와 같이 말씀 주신대로 카카오 로그아웃도 함께 진행해야하는 부분 인지하였습니다.

그렇다면 위 케이스처럼 카카오로 회원 가입 및 로그인한 회원이 로그아웃 후
다음날 당 서비스에 로그인을 할 경우 카카오 로그인 프로세스를 어떻게 가져갈 수 있을까요?

당 서비스는 최초 회원가입 시 받은 패턴 입력, 생체 인증 등으로만 로그인을 진행하고 있습니다.

카카오로 회원가입 및 로그인한 회원이 로그아웃 후
다음날 앱 로그인 시 패턴입력 또는 생체 인증(간편인증)으로만 로그인이 가능한데요,
(카카오 회원 가입 프로세스 후 당 서비스 간편인증 수단을 등록해야 하는 프로세스로 기획하고 있습니다.)

이미 카카오톡을 통해 회원가입을 진행한 회원이 등록한 패턴 또는 생체인증으로 당 서비스에 로그인하였을 경우
카카오로 로그인하였다고 간주하고 호출프로세스를 가져갈 수 있을까요?

당 서비스는 최초 회원가입 시 받은 패턴 입력, 생체 인증 등으로만 로그인을 진행하고 있습니다.

카카오로그인을 다시 해야 액세스토큰을 새로 받을 수 있습니다.

카카오로 로그인하였다고 간주하고 호출프로세스를 가져갈 수 있을까요?

말씀하신 상황은 최초 가입 시, 카카오로그인+2차인증으로 로그인하고 로그인을 유지 하는 방향으로
이후에는 더이상 카카오로그인을 사용하지 않는 Flow인 것으로 보입니다.


로그아웃으로 토큰만료가 되지 않더라도 아래와 같이 토큰 만료 됩니다.

Android, iOS: 12시간
JavaScript: 2시간
REST API: 6시간

즉,

(1) 서비스측 최초 로그인 후, 로그인 유지
카카오측 API를 호출 해야한다면 토큰 정보보기로 유효한지 확인 뒤,

  • 유효하지 않은 경우, 리프레시 토큰으로 액세스 토큰 재발급 ( 재발급 시, 리프레시 토큰도 재발급되었다면 기존 리프레시 토큰 폐기하고 교체저장 )
  • 리프레시토큰도 유효하지 않은 경우, 다시 카카오 로그인 해야합니다.

(2) 서비스측 로그아웃
말씀하신 프로세스라면 운영하시는 서비스만 로그아웃하고 카카오로그인은 로그아웃하지 않는 것입니다.

  • 최초 가입 이후, 더이상 카카오 API를 호출하지 않는다면 그렇게 하셔도됩니다.
  • 카카오 API를 호출해야한다면, 위 (1)번과 같이 처리 하시면됩니다.

운영하시는 서비스 특성상 위와 같이 구성하셔도 무방합니다.


다만
카카오로그인으로 가입한 이용자가 서비스 탈퇴시, unlink 호출해주셔야하며
액세스 토큰이 유효하지 않은 상황이 있을 수 있으니 탈퇴 시, Admin key로 백엔드에서 unlink 호출 해주시면 됩니다.