그동안 프로젝트를 하기 위해 무지성으로 oauth2를 써왔다.
로그인, 회원가입, 뭐 이런 기능들은 기존 서비스가 이미 있다면 또 할 일이 거의 없겠지만...
나는 운(?)이 좋게도 oauth부터 손볼 수 있게 됐다.
플러터 공홈에도 Firebase
는 뗄 수 없는 baaaaassss인거같은데 우리 서비스에서도 그걸 사용할 지는 잘 모르겠다. 아마 aws를 쓰지 않을까?? 일단 s3는 쓴다고 들었음.
파이어베이스(그리고 비슷한 서비스들에서도)는 많은 작업을 손쉽게 만들어주기 때문에, 파이어베이스에 의존하는 것은 나에게 큰 도움이 되지 않을 것으로 생각된다. 그래서 이제 실무에서 쓰게 되었으니 이 부분에 대해서 더 잘 이해하고 구현해야겠다는 생각이 들었다.
구현하는 방법 자체는 찾아보면 다 있기도 하고, 이미 해본 것도 있고.
내가 진행했던 sns 로그인 구현 과정은 아래와 같다.
1. 카카오 디벨로퍼 페이지에서 내 앱을 등록한다.
1. 유저가 sns 로그인 버튼을 누른다.
2. 이것들은 각 회사에서 서비스를 제공한다.
* 각 회사의 로그인 페이지로 리다이렉트된다.
3. 유저가 리다이렉트된 로그인페이지에서 로그인한다.
4. 인증 정보가 리턴된다.
5. 정보들을 기기, 서버에 연동한다.
Authorization Code
를 발급해 리다이렉트 url으로서 전달Authorization Code
를 가지고 카카오에 Access Token
요청Access Token
발급받는다.Access Token
발급받는다.Access Token
을 내 서버에 전달한다.Access Token
으로 사용자 맞는지 카카오에 확인결론적으로 RestAPI, 네이티브 앱 방식의 차이점은 Authrization Code 관련 로직이 필요한가에 대한 것이다.
우리 서비스는 웹은 따로 개발이 진행되니 나는 네이티브 앱 방식으로 진행하면 될 것 같다.
이전에 내가 구현했었던 카카오 로그인 방식은 REST API 방식이었다.
카카오로그인 뿐 아니라 애플로그인, 페이스북로그인, 네이버로그인 과정에 대해서도 더 잘 이해하고 구현하는 데 도움이 될 것 같다.
두 방식이 어떻게 다르고 어떤 방식으로 이루어지는지 알았으니, 다음엔 네이티브 앱 키로 로그인 시도를 해봐야겠다.