Обязательно ли регистрировать наше веб-приложение в Службах Google перед внедрением OAuth? - PullRequest
1 голос
/ 31 января 2011

Я занимаюсь разработкой Java-приложения, которому необходим доступ к личному аккаунту Google Data пользователя.Разработка в настоящее время в NetBeans на моем локальном хосте.Я реализую 3-х сторонний OAuth.И при отправке запроса на предоставление, он отправляет мне токен неавторизованного запроса и затем перенаправляет на URL обратного вызова.

При попытке доступа к токену доступа выдается ошибка «Ошибка при получении HTTP-ответа».Теперь, как указано в Документация Google , указано, что «Если приложение не зарегистрировано, Google использует URL-адрес oauth_callback, если он установлен; если он не установлен, Google использует строку« анонимный »«.Означает ли это, что я должен зарегистрировать свое приложение в Google Apps Engine, прежде чем предоставлять запрос на авторизацию и доступ?Пожалуйста, помогите.

Для справки: OAuth для веб-приложений , OAuth в клиентских библиотеках протокола данных Google

Ответы [ 3 ]

1 голос
/ 01 февраля 2011

Судя по вашему вопросу, вероятно, не проблема с регистрацией вызывает у вас проблемы.Похоже, вы просто не правильно реализовали OAuth - не так просто.Процесс OAuth выглядит примерно так:

  1. Получить токен запроса.Вы должны передать кучу материала, который объявляет, к какому виду вы хотите получить доступ, и куда вы хотите, чтобы Google отправил пользователю, когда они закончат, предоставляя вам доступ к этим данным.Здесь вы передаете свой потребительский ключ, который вы получаете при регистрации.Ключом потребителя будет строка anonymous, если вы разрабатываете установленное приложение (т. Е. Мобильное приложение, настольное приложение и т. Д.).Это обходной путь;альтернативой может быть встраивание вашего клиентского секрета или закрытого ключа RSA в само приложение, что является очень и очень плохой идеей.Если вы используете «анонимный», вы обязательно должны установить параметр xoauth_displayname.(На самом деле, каждый должен установить этот параметр, но это особенно важно, если вы используете anonymous.)
  2. Получив токен запроса, вы затем перенаправляете пользователя в специальную конечную точку авторизации, передавая поключ токена запроса в строке запроса.Предполагая, что пользователь предоставляет доступ, Google перенаправит пользователя обратно на URL-адрес обратного вызова, который вы связали с маркером запроса.Токен запроса теперь авторизован, но его нельзя использовать напрямую.
  3. После авторизации токена запроса вы можете обменять его на пару ключ / секретный токен доступа.Ключ / секретный токен доступа может затем использоваться для подписи запросов на защищенные ресурсы, такие как личные данные в API, к которому вы пытаетесь получить доступ.

Для веб-приложений регистрация почти всегдаотличная идея.Пользователям становится намного проще управлять своими токенами доступа и отзывать их, если ваше приложение ведет себя плохо или если они больше не хотят, чтобы у вас был доступ.Если вы не зарегистрируетесь, ваше приложение, вероятно, будет отображаться в этом списке как довольно анонимное «анонимное».Это действительно только установленные приложения, которые вы не хотите регистрировать.Вы, вероятно, также хотите зарегистрироваться для ключа API .Ключ API значительно увеличит ваш лимит скорости, а также позволит Google связаться с вами, если ваше приложение начнет работать со сбоями.

Я бы связался с документами OAuth, но вы уже нашли их.Надеюсь, мое объяснение поможет!

0 голосов
/ 31 января 2011

Google проверит, зарегистрировано ли доменное имя обратного URL. Вы также можете изменить свой dns / host-file, указав имя используемого вами домена на localhost.

0 голосов
/ 31 января 2011

Если вы разрабатываете на локальном компьютере, вы продолжите получать тот же результат, что и выше.

Для более интересных тестов, тогда да, вам придется зарегистрировать свое приложение и отправить его в движок приложения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...