Библиотека php Janrain и конечная точка Google для OpenId - PullRequest
0 голосов
/ 14 марта 2009

Я использую библиотеку janRain Php для открытия OpenId и yadis, и независимо от того, что я делаю, я буду работать над такими вещами, как user.openid.org или моим собственным провайдером, но если я попытаюсь использовать конечную точку Google, я не смогу получить какую-либо информация об обнаружении.

Даже если я запускаю пример обнаружения для библиотеки janrain, я получаю следующий результат Заявлено

Identifier  http://www.google.com/accounts/o8/id
No OpenID services discovered.

и происходит то же самое, если я добавляю https: // перед URL.

Мой вопрос, вероятно, не о том, как заставить это работать, но, если это действительно возможно, какие у меня есть другие варианты (которые запускаются на моем сайте, в проекте не требуется нахальный аутентификации).

Почему openId такой # @! # @ Сложный и недокументированный? (Обратите внимание, я дал zend_openid пару часов, чтобы получить тот же результат)

Ответы [ 4 ]

3 голосов
/ 16 марта 2009

здесь работает. некоторые подсказки:

  • Насколько я понимаю, http(s)://www.google.com/accounts/o8/id не является конечной точкой openid, но находит в Google discovery конечную точку. вы должны предоставить ему действительный (google) идентификатор OpenID, например example.blogspot.com, для которого он возвращает заявленный идентификатор, URL-адрес сервера, типы услуг и т. д.
  • Я получил пример обнаружения, работающий только после исправления <? и <?= в discover.php (заменив их <?php и <?php echo). В качестве альтернативы вы можете ini_set('short_open_tag', '1'). по умолчанию он выключен в php.ini-recommended.
  • поддерживает ли ваша установка PHP SSL? см. README , а именно эту часть:
Not all PHP installations support SSL.  You can find out if yours
supports SSL by reading the "HTTP Fetching" section of the output of
"examples/detect.php."  If your installation does not support SSL,
then https:// identity URLs and server URLs will not be supported by
the library.  An attempt to use such an identity URL will be
equivalent to using an invalid OpenID.  To enable SSL support,
recompile PHP with OpenSSL support or install the appropriate OpenSSL
module for your platform.  If you are using CURL, CURL will need to be
built with OpenSSL support.
1 голос
/ 02 июня 2010

Это законная говядина. Google говорит, что они поддерживают OpenID, но они не работают, как кто-либо другой. MyOpenID.com, blogspot, aol, Yahoo, WordPress, MySpace, LiveJournal и многие другие поддерживают стандарт правильно, и он работает как положено Как и ваш собственный провайдер OpenID, вы можете создать его с помощью проекта сервера CommunityID.

/ вздыхает

0 голосов
/ 12 марта 2010

Предлагаю вам посмотреть этот вопрос: PHP-OpenID Janrain и Google / Yahoo

0 голосов
/ 16 марта 2009

Вам необходимо направить запрос на идентификацию. Обычно это просто передача URL-адреса, как если бы пользователь ввел его ... это всегда работало для меня в прошлом (если используемая библиотека поддерживает OpenID2.0).

...