본문 바로가기
프로그래밍 놀이터/안드로이드, Java

[android] Google Sign In 서버로 검증하기 #3

by 돼지왕 왕돼지 2018. 2. 24.
반응형

[android] Google Sign In 서버로 검증하기 #3


https://developers.google.com/identity/sign-in/android/backend-auth

client sign in, getIdToken, getSignInAccount, getSignInResultFromIntent, google sign in, GoogleSignInOptions, https, id token, requestIdToken, server, sign in, token, user id, verify, [android] Google Sign In 서버로 검증하기 #3, 검증, 서버 검증


-

Client 에서 Sign in 이 끝나면 user의 ID token 을 HTTPS 를 통해 서버로 보낸다.

Server 에서는 ID token 을 이용해 검증한다.


이 때 절대 Account 정보에서 얻어오는 id 정보가 아니라,

ID token 을 보내야 한다.



-

ID Token 을 가져오기 위해서는 GoogleSignInOptions 를 만들 때 requestIdToken 을 호출해야 한다.

GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)

        .requestIdToken(getString(R.string.server_client_id)) // serverClientId 는 json 파일에 들어 있다.

        .build();



-

GoogleSignInResult result = Auth.GoogleSignInApi.getSignInResultFromIntent(data);

if (result.isSuccess()) {

    GoogleSignInAccount acct = result.getSignInAccount();

    String idToken = acct.getIdToken();

    // TODO send idToken to server

}



-

Verify 는 서버의 몫!!




반응형

댓글