Google 인증 액세스 토큰을 확인하려면 어떻게합니까?
어떻게 든 Google에 쿼리하고 다음을 질문해야합니다. [given access token]은 [example@example.com] Google 계정에 유효합니까?
간단한 버전 : 웹 애플리케이션 용 Google 인증 API :: OAuth 인증을
통해 제공되는 액세스 토큰을 사용하여 다양한 Google 서비스에서 데이터를 요청 하는 방법이 분명합니다 . 주어진 액세스 토큰이 주어진 Google 계정에 유효한지 확인하는 방법은 명확하지 않습니다. 방법을 알고 싶습니다.
Long version :
토큰 기반 인증을 사용하는 API를 개발 중입니다. 유효한 사용자 이름 + 비밀번호를 제공하거나 N 개의 검증 가능한 서비스 중 하나에서 제 3 자 토큰을 제공하면 토큰이 반환됩니다 .
타사 서비스 중 하나는 Google이므로 사용자는 Google 계정을 사용하여 내 서비스에 대해 인증 할 수 있습니다. 나중에 Yahoo 계정, 신뢰할 수있는 OpenID 제공 업체 등을 포함하도록 확장 될 것입니다.
Google 기반 액세스의 개략도 :
대체 텍스트 http://webignition.net/images/figures/auth_figure002.png
'API'엔터티는 내 모든 권한을 갖습니다. '공개 인터페이스'엔터티는 모든 웹 또는 데스크톱 기반 앱입니다. 일부 공용 인터페이스는 내 통제하에 있으며 다른 인터페이스는 사용하지 않으며 다른 인터페이스는 여전히 알지 못할 수도 있습니다.
따라서 3 단계에서 API에 제공 한 토큰을 신뢰할 수 없습니다. 해당 Google 계정 이메일 주소와 함께 제공됩니다.
어떻게 든 Google에 쿼리하고 질문해야합니다 : 이 액세스 토큰은 example@example.com에 유효 합니까?
이 경우 example@example.com은 Google 계정 고유 식별자로, 누군가가 Google 계정에 로그인 할 때 사용하는 이메일 주소입니다. 이것은 Gmail 주소로 가정 할 수 없습니다. 누군가 Gmail 계정 없이도 Google 계정을 보유 할 수 있습니다.
Google 문서에는 액세스 토큰을 사용하여 여러 Google 서비스에서 데이터를 검색하는 방법이 명시되어 있습니다. 주어진 액세스 토큰이 처음에 유효한지 확인할 수있는 방법은 없습니다.
업데이트 토큰은 N Google 서비스에 유효합니다. 특정 사용자가 실제로 사용하는 모든 Google 서비스의 하위 집합을 알지 못하기 때문에이를 확인하기 위해 Google 서비스에 대해 토큰을 시도 할 수 없습니다.
또한 Google 인증 액세스 토큰을 사용하여 Google 서비스에 액세스하는 것은 결코 아닙니다. 단지 Google 사용자가 실제로 누구인지 확인하는 수단 일뿐입니다. 다른 방법이 있다면 기꺼이 시도해보십시오.