개요


로그인/회원가입을 하기 위해선 유저들을 식별할 수 있는 정보가 필요하다.

OAuth를 이용한 로그인/회원가입만 지원하므로 Kakao/Apple Auth 서버로 부터 해당 유저를 식별할 수 있는 유니크한 값을 가져와야 했다. 카카오에선 id 정보를 줬고, 애플에서도 id_token의 sub claim이 유저별로 유니크한 값이었어서 이를 이용했다.

해당 정보를 이용해 우리 서비스에서 자체적으로 유저를 식별하기 위해 memberHash라는 값을 만들어 이용했다.(간단하게 id값(혹은 sub값)과 ‘kakao’(혹은 ‘apple’)을 함께 해시함수에 넣고 돌린 값을 memberHash로 사용했다.)

Kakao OAuth 절차


kakaologin_sequence.png

iOS분들께서 sdk로 access token을 발급받는 작업까지 가능하다고 하셨다.

로그인 요청시 해당 access token을 우리 서비스 서버로 보내기때문에 위 다이어그램에서 step1, 2가 사실상 생략된 셈이다.

서버에선 해당 토큰을 받아 kakao로부터 유저를 식별하는 id 값을 받아와 회원가입 혹은 로그인을 진행한다.

Apple OAuth 절차