티스토리 뷰

대부분의 모바일 앱, 웹에서

authentication (인증, 넌 누구냐) / authorization (허가, 권한 부여) 과정을 sns 계정을 통해 많이 한다 


새로운 서비스에 가입하려면 메일쓰고 이름쓰고 또 해야 하는데

어차피 다 똑같은 정보이고 또 쓰기 귀찮으니까 이미 가입한 서비스의 정보를 가져가 쓸게~ 하는거다..


facebook, twitter, google (plus) 가 대부분이고 OAuth 방식으로 하고 있다


뭐.. 이건 그렇다 치고


google 이 말이지..

그냥 google 계정이 있고 google plus 계정이 있다


google계정을 가진 사람이 google plus 를 사용하지 않을 수도 있는데

google은 google plus 계정을 사용하도록 유도(?) 하고 있고

개발자 사이트에도 google plus login으로 설명을 하고 있다.


하지만 그냥 google 로그인과 google plus 로그인은 다르지 않남!!??


일단 사용자가 google 계정을 가지고 있고 google plus 도 활성화 해둔 상태를 가정했을때


scope을 아래꺼만 쓰면

https://www.googleapis.com/auth/userinfo.profile


아래와 같이 상단에 Google 이라고 적혀있는것을 볼수있고

허가요청도 basic information 에 대해서만 하고 있다





scope 을 아래 것으로 쓰면

https://www.googleapis.com/auth/plus.login


상단에 Google + 라고 적혀있는것을 알수있고

circle 어쩌고 하면서 google + 관련 기능에 대한 권한을 요청하고 있는것을 볼수 있다.



위 두가지 상황은 나머지 소스는 모두 동일하고

scope만 다르게 설정한경우이다.


Google plus login할거면 PlusClient 클래스를 사용하면 더 간단하게 할수 있다. 


그럼

google 계정은 있는데 google plus 에는 가입을 안하는 경우 어떻게 동작을 할까?

이런경우는 한번더 물어보더라 -ㅅ-!




그리고 웹에 가서 google plus 에 가입하여 프로필에 보면

아래와 같이 google+ 로그인을 사용한 앱에 똵 등록이 되어있다!





즉... 주절주절 말이 많았는데..


내맘대로 결론은

1. 그냥 google 계정만 있으면 google plus에 가입했던 안했던 client 에서 google plus login이 가능..

2. google login / google plus login 은 그냥 범위가 다름

3. 어차피 일반 사용자들은 뭐가뭔지 모름

4. 걍 google 이 원하는대로 google plus login 써주자