
모우다는 모임 서비스인만큼 사용자를 신뢰할 수 있는 방안이 중요합니다. 그룹 내에서 모임에 참여한 사람이 누구인지 명확해야 원활한 모임이 가능할 것이라 예상했어요. 이렇게 명확한 사용자 확인을 위해 실명을 제공하기로 하였어요. 실명을 볼 수 있다면 아무리 닉네임을 사용하더라도 신뢰 있는 사용자 확인이 가능할 것이죠.
기존에는 사용자의 빠른 회원 가입을 위해 카카오 로그인을 지원하고 있었습니다. 카카오 소셜 로그인은 사업자 등록 번호가 없는 서비스에게 사용자의 이름을 제공하지 않아요.
iOS 출시도 고려할 겸 애플 로그인을 서비스에 적용하였으며 좀 더 범용적인 소셜 로그인인 구글까지 지원해주기로 했어요. 두 소셜 로그인 모두 사용자의 이름을 제공하고 있습니다.
그럼 카카오 소셜 로그인을 서비스에서 제외해야 할텐데, 구글과 애플 소셜 로그인으로만 변경해버리면 기존 고객은 어떻게 다시 로그인할까요? 안정적인 데이터 이전과 기존 사용자의 이탈 없이 구글과 애플 소셜 로그인 방식으로 재가입하기 위해 고민을 시작하였습니다.
이를 위해서 카카오 로그인 사용자를 구글, 애플 로그인으로 전환하기 위한 유예기간을 가지기로 했습니다. 우리의 시나리오 대로 사용자가 진입하여 성공적으로 전환할 수 있게 하는 것이 목표입니다.

처음 사용자가 볼 수 있는 화면은 다음과 같아요. 기존 카카오 사용자가 페이지에 진입하고 뭐야 카카오 로그인 버튼 어디갔어? 하고 놀라지 않게, 안내 메시지를 띄워줍니다. 그리고 구글과 애플로 로그인할 수 있게 유도해요.
애플 로그인을 예시로 들어 사용자 관점에서 전환 과정을 따라가볼게요. 애플 로그인 버튼을 눌러서 진행해보겠습니다.

애플 로그인을 누르면 자연스러운 흐름대로 애플 로그인을 하게 되고요.
서버는 애플 로그인을 성공시킨 이후 애플로 로그인한 액세스 토큰을 반환합니다. 클라이언트는 이 사용자 아이디를 로컬 스토리지에 저장해요. 앞으로 로그인을 하는 용도로 사용하며, 기존 카카오 사용자의 로그인 정보를 애플 로그인 정보로 갈아끼우기 위한 식별자로 사용합니다.