Ask Your Question
0

구글 인증 문제 질문드립니다.

asked 2018-03-29 13:28:40 +0900

casper7609 gravatar image

updated 2018-03-29 13:29:22 +0900

예제에 있는 GooglePlusAuthentication.AuthenticationRequest request = new GooglePlusAuthentication.AuthenticationRequest (accessToken);

        GooglePlusAuthentication.AuthenticationResponse response;
        if (!GooglePlusAuthentication.AuthenticateSync (request, out response)) {
            serverResponse = EServerResponse.LoginGoogleFailToAthenticate;
            Log.Error ("Failed to verify the authentication.");
            return null;
        }

        if (!response.Success) {
            serverResponse = EServerResponse.LoginGoogleFailToAthenticate;
            Log.Error ("Failed to verify the authentication. error.code: {0}, error.message = {1}",
                       response.Error.Code, response.Error.Message);
            return null;
        }

        Log.Info ("Verifying the authentication succeeded. display_name={0}, client_id={1}, image_url={2}",
                  response.DisplayName, response.ClientId, response.ImageUrl);

과 같은 코드를 사용해서 구글 플러스 인증을 하려 하는데요. W0329 13:14:24.556078 130972 google_plus_authentication.cc:327] Authentication is bypassed. I0329 13:14:24.556546 130972 (Mono)Server.HandleLogin.cs:153] Verifying the authentication succeeded. display_name=, client_id=, image_url= 와 같은 메세지가 뜨면서 건너 뛰는것 같습니다. Manifest 쪽에서 설정을 해줘야 하는것 같은데 https://www.ifunfactory.com/engine/do... 를 참고해도 해당

21.9. 인증 검증 서비스 설정 파라미터 아래의 설명과 설정 파일 (MANIFEST.json) 상세 를 참고하여 AuthenticationService 관련 설정을 합니다.

use_authentication_service: 인증 검증 서비스를 활성화합니다. 간단히 테스트 또는 개발 단계에서는 false 로 지정하면 bypass 하고 모든 인증 요청을 성공으로 처리합니다. (type=bool, default=false) nexon_platform: Nexon Platform 인증 처리를 위한 JSON Object 입니다. 아래와 같은 JSON Attribute 를 입력합니다. secret_key: 발급받은 secret key 를 JSON String 으로 입력합니다. (type=string, default=””) authentication_google_play_verify_token: Google Play 인증할 때 클라이언트가 보낸 토큰을 검증한 후에 Google API를 호출하게 합니다. (type=bool, default=true) authentication_google_play_preload_jwks: Google Play 토큰을 검증할 때 사용할 공개키를 미리 가져오게 합니다. (type=bool, default=false)

들의 파라미터가 제 MANIFEST.json 에는 존재하지 않습니다. use_authenticator 프로퍼티만 존재하구요. ifun-athenticator 는 곧 사라질것 같아서 사용하고 싶지가 않은데 가이드 부탁드립니다.

좋은 하루 되세요!

edit retag flag offensive close merge delete

3 answers

Sort by » oldest newest most voted
0

answered 2018-03-29 15:57:50 +0900

inkeun.kim gravatar image

GooglePlayGameSDK 를 사용 중 이시라면 GooglePlayGameAuthenticaiton 을 사용하시는 것을 권장합니다.

위 SDK 에서 사용하는 app idid token 을 이용하여 GooglePlayGameAuthenticaiton.Authenticate 함수를 호출하시면 될 듯 합니다.

edit flag offensive delete link more

Comments

감사합니다 한번 시도해보도록 하겠습니다!

casper7609 gravatar imagecasper7609 ( 2018-03-29 15:58:48 +0900 )edit

네 인증이 지속적으로 실패한다면 로그와 함께 글을 남겨주시면 확인해보겠습니다. 감사합니다.

inkeun.kim gravatar imageinkeun.kim ( 2018-03-29 16:01:29 +0900 )edit

google_play_game_authentication.cc:147] Failed to authenticate google play. invalid app id로 메세지 뜨면서 그뒤로 제가 인증한 정보가 json 형태로 보여지는데요 일단 좀 더 확인을 해봐야겠네요

casper7609 gravatar imagecasper7609 ( 2018-03-29 16:39:25 +0900 )edit

로그에 찍히는 json 데이터 내에 azp, aud 값이 있다면 해당 값을 app id로 사용하실 수 있습니다.

inkeun.kim gravatar imageinkeun.kim ( 2018-03-29 17:27:45 +0900 )edit

아 구글 플레이 서비스 플러그인에서 잘못된 값을 던져주고 있었네요. 다른 에셋을 사용해서 시도하니 문제 없이 동작할 것 같습니다. 이래저래 바쁘실텐데 죄송합니다. 도와주셔서 감사합니다!

casper7609 gravatar imagecasper7609 ( 2018-03-29 17:51:08 +0900 )edit
0

answered 2018-03-29 15:12:07 +0900

inkeun.kim gravatar image

인증에 사용한 access_tokenclient_id 가 유효하지 않은 듯 보이는데요, 이 인자가 정상적인지 확인해주시면 될 듯 합니다.

Google OAuth2 관련된 가이드는 아래 문서를 통하여 참고하실 수 있습니다.

https://developers.google.com/identit...

안드로이드 앱을 통하여 인증하시는 경우 GooglePlayGameAuthentication 을 활용하셔서 인증을 진행 하실 수 있는데요, 클라이언트 상 설정은 아래 github 페이지에서 참고하실 수 있습니다(Unity)

https://github.com/playgameservices/p...

edit flag offensive delete link more

Comments

현재 Google Plus 인증을 시도하는 중이고 2번째 링크 주신 플러그인을 통해서 GetServerAuthCode()를 통해서 가져오는 값이 access_token이 아닌지요? 아니면 Google Play Game 로그인 쪽의 app_id 와 id_token을 시도해 봐야 될까요?

casper7609 gravatar imagecasper7609 ( 2018-03-29 15:48:42 +0900 )edit
0

answered 2018-03-29 13:35:32 +0900

inkeun.kim gravatar image

안녕하세요. 아이펀팩토리입니다. 이미 생성하신 프로젝트의 경우 AuthenticationService 컴포넌트 설정이 MANIFEST.json 에 존재하지 않을 수 있는데요, 이 경우 불편하시겠지만 MANIFEST.json 내에 아래 예제 처럼 AuthenticatonSerivce 컴포넌트 설정을 직접 입력해주시고 동일하게 bypass 되는지 확인 부탁드립니다.

      "AuthenticationClient": {                                             
         // 생략하겠습니다
         ...
      },

      "AuthenticationService": {                                            
        "use_authentication_service": true                                  
      },
edit flag offensive delete link more

Comments

빠른 답변에 감사드립니다! 이제 bypass는 되지 않지만 Failed to authenticate google plus. response status code is not OK(200): 403 "reason": "dailyLimitExceededUnreg", "message": "Daily Limit for Unauthenticated Use Exceeded. Continued use requires signup." 로 메세지가뜨는데요. 어떤식으로 해결해야 될 지 혹시 가능하시면 가이드해주시면 감사하겠습니다

casper7609 gravatar imagecasper7609 ( 2018-03-29 15:02:36 +0900 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2018-03-29 13:28:40 +0900

Seen: 31 times

Last updated: Mar 29