Как проверить токен доступа к аутентификации Google?Как проверить токен доступа к API аутентификации Google?
Мне нужно как-то запросить Google и спросить: имеется ли [токен доступа] для учетной записи Google [[email protected]]?
Короткая версия:
Это ясно, как маркер доступа подается через Google Authentication Api :: OAuth Authentication for Web Applications можно использовать для затем запрашивать данные из различных служб Google. Непонятно, как проверить, действительно ли данный токен доступа действителен для данной учетной записи Google. Я хотел бы знать, как это сделать.
Длинная версия:
Я разработки API, который использует маркер проверки подлинности на основе. Токен будет возвращен при предоставлении действительного имени пользователя + пароля или при предоставлении стороннего токена из любого из N поддающихся проверке услуг.
Одним из сторонних сервисов будет Google, позволяющий пользователю аутентифицироваться в отношении моей службы, используя свою учетную запись Google. Впоследствии это будет расширено, чтобы включить учетные записи Yahoo, доверенные поставщики OpenID и так далее.
Схематическое пример Google доступа на основе:
alt text http://webignition.net/images/figures/auth_figure002.png
'API' объект находится под моим полным контролем. Объект «public interface» - это любое приложение для веб-приложений или настольных компьютеров. Некоторые публичные интерфейсы находятся под моим контролем, другие - не будут, а другие, о которых я даже не знаю.
Поэтому я не могу доверять маркеру, предоставленному API, в шаге 3. Это будет поставляться вместе с соответствующим адресом электронной почты учетной записи Google.
Мне нужно как-то запросить Google и задать вопрос: Является ли этот токен доступа действительным для [email protected]?
В этом случае [email protected] - уникальный идентификатор учетной записи Google - адрес электронной почты, который кто-то использует для входа в свою учетную запись Google. Это нельзя считать адресом Gmail - у кого-то может быть аккаунт Google без учетной записи Gmail.
В документации Google четко указано, как с помощью токена доступа данные могут быть получены из нескольких служб Google. Кажется, ничего не говорится о том, как вы можете проверить, действительно ли данный токен доступа действителен.
Обновление Токен действителен для служб N Google. Я не могу попробовать токен в службе Google как средство для его проверки, так как не знаю, какой подмножество всех сервисов Google, которые использует данный пользователь.
Кроме того, я никогда не буду использовать токен доступа к аутентификации Google для доступа к любым службам Google, просто как средство проверки предполагаемого пользователя Google на самом деле является тем, кем они говорят. Если есть еще один способ сделать это, я буду рад попробовать.
Какие конкретные аутентификации обслуживание этот вопрос (OAut h, AuthSub, Установленные приложения, ...)? Пожалуйста, предоставьте более подробную ссылку. – 2008-12-11 15:06:59
@Martin v. Löwis: служба аутентификации OAuth для веб-приложений. Я обновил начало вопроса, чтобы отразить это. Спасибо за указание на это! – 2008-12-11 15:26:12
интересная статья о проверке ключа Google может дать больше информации http://groups.google.com/group/Google-Maps-API/msg/f9e3c5ad3cbda4d7 – dotjoe 2008-12-31 18:04:32