2015-01-15 2 views
1

Google oauth2 id_tokens를 확인하기위한 간단한 Python 서버가 있습니다. 이 코드는 오류 AppIdentityError: Wrong recipient가 발생합니다 실행할 때 :AppIdentityError 란 무엇입니까? 잘못된 수신자입니까?

def verify(): 
    id_token = request.form['id_token'] 
    status = {} 
    if id_token is not None: 
     try: 
      jwt = verify_id_token(id_token, config['google']['clientId']) 
      status['valid'] = True 
      status['jwt'] = jwt 
     except AppIdentityError: 
      status['valid'] = False 
      status['message'] = "Invalid id token" 
    pprint.pprint(status) 
    response = make_response(json.dumps(status)) 
    response.headers['Content-Type'] = 'application/json' 
    return response 

AppIdentityError: Wrong recipient은 무엇을 의미합니까 내가 그것을 어떻게 해결할 수 있습니까?

답변

0

확인하려는 JWT에 잠재 고객 (aud) 값이 포함되어 있습니다. 이 오류는 aud 값이 예상과 일치하지 않는 결과입니다.

사용중인 라이브러리가 확실하지 않지만 identity-toolkit-python-client 패키지에서 VerifyGitTotken 함수는 JWT를 확인하기 위해 제공되는 project_id 및 client_id 값을 조사합니다.

이 오류가 발생하면 gitkit-server-config.json 파일이 Google 개발자 콘솔에서 제공 한 것과 일치하지 않는 것으로 나타났습니다. 값은 API 관리자 >> 개요 >> ID 도구 키트 API 페이지에서 제공됩니다.

json 파일을 수정 했으므로 오류가 발생했습니다.