разработка и тестирование гибрида google openid + oauth с openid4java на локальном хосте - PullRequest
7 голосов
/ 12 марта 2011

Я пытаюсь реализовать гибридный протокол Google OpenID + OAuth, чтобы идентифицировать моих пользователей и получить доступ к данным их календаря Google.

Пример запроса выглядит так:

https://www.google.com/accounts/o8/id
?openid.ns=http://specs.openid.net/auth/2.0
&openid.claimed_id=http://specs.openid.net/auth/2.0/identifier_select
&openid.identity=http://specs.openid.net/auth/2.0/identifier_select
&openid.return_to=http://www.example.com/checkauth
&openid.realm=http://www.example.com
&openid.assoc_handle=ABSmpf6DNMw
&openid.mode=checkid_setup
&openid.ns.oauth=http://specs.openid.net/extensions/oauth/1.0
&openid.oauth.consumer=www.example.com
&openid.oauth.scope=http://docs.google.com/feeds/+http://spreadsheets.google.com/feeds/

Яиспользуя openid4java.Я пытался подписаться на этот пост: библиотека-для-интеграции-googles-oauth-openid-hybrid-in-java-web-app

Но у меня возникли проблемы при тестировании моего приложения наlocalhost.

Как вы можете видеть в вышеупомянутом примере запроса, есть три атрибута, которые должны быть равны:

openid.realm
openid.oauth.consumer
openid.return_to

Я зарегистрировал некоторый домен в Google и получил ключ и секретный ключ пользователя.Но когда я хочу разработать и отладить свое приложение на локальном хосте (то есть openid.return_to = http://localhost:8080/ и openid.realm = http://*.mydomain.com и openid.oauth.consumer = www.mydomain.com) и предоставить свой ключ исекрет, openid4java RealmVerifier отклоняет такой запрос аутентификации.

Я даже пытался указать полностью допустимые параметры (мой зарегистрированный домен вместо localhost) - казалось, он функционирует, но перенаправление прошло (я не хочу/ не может развернуть приложение в этом домене из-за отсутствия технологий.).

Не могли бы вы посоветовать, как разработать такое приложение на localhost?Есть ли хитрость, как протестировать такое приложение?

Спасибо за любую помощь!

1 Ответ

6 голосов
/ 15 марта 2011

Попробуйте добавить свой your-machine.your-domain.com, который указывает на 127.0.0.1 в / etc / hosts (в linux) на вашем устройстве разработчика, и затем выберите приложение как http://your -машина.your-domain.com

(примечание: замените your-machine именем вашего компьютера, а your-domain - доменом, который вы зарегистрировали в Google)

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