JanRain PHP-Bibliothek und Google-Endpunkt für OpenId
-
22-07-2019 - |
Frage
Im mit JanRain Php-Bibliothek für OpenID und YADIS Entdeckung und egal, was ich tue, werde ich in Sachen wie user.openid.org oder meine eigenen Provider arbeiten, aber wenn ich versuche, den Google-Endpunkt zu verwenden, ich kann jeden bekommen Ermittlungsinformationen.
Auch wenn ich die Entdeckung Beispiel für die JanRain Bibliothek laufen, bekomme ich das nächste Ergebnis Beansprucht
Identifier http://www.google.com/accounts/o8/id
No OpenID services discovered.
, und es passiert das gleiche, wenn ich die https hinzufügen. // vor der URL
Meine Frage ist wahrscheinlich nicht, wie es funktioniert, aber wenn sie tatsächlich möglich, was andere Möglichkeiten habe ich (diese laufen in meiner Website, keine freche Auth im Projekt wollte).
Warum ist OpenID so # @! # @ Komplex und ohne Papiere? (Beachten Sie, ich gebe Zend_OpenId ein paar Stunden, um das gleiche Ergebnis haben)
Lösung
es funktioniert hier. einige Hinweise:
- , wie ich es verstehe,
http(s)://www.google.com/accounts/o8/id
ist kein openid Endpunkt, sondern Googles Entdeckung Endpunkt. Sie haben einen gültigen (google) OpenID Identifier, wieexample.blogspot.com
zu liefern, für die es Identifier Beansprucht zurückzugibt, Server-URL-Service-Typen, etc. - bekam ich die Entdeckung Beispiel nur zu arbeiten, nachdem die
<?
und<?=
indiscover.php
Festsetzung (sie mit<?php
und<?php echo
ersetzen). alternativ können Sieini_set('short_open_tag', '1')
. es ist standardmäßig deaktiviert inphp.ini-recommended
. - ist Ihre PHP-Installation unterstützen SSL? finden Sie unter README , insbesondere dieser Teil:
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.
Andere Tipps
Dies ist ein legitimes Rindfleisch. Google sagt, dass sie OpenID unterstützen, aber ihre nicht funktioniert wie jeder elses. MyOpenID.com, blogspot, aol, yahoo, Wordpress, myspace, livejournal und alle viele andere unterstützen den Standard richtig und es funktioniert wie erwartet. Wie Sie Ihre eigenen OpenID-Provider tun können Sie das CommunityID Server-Projekt erstellen werden.
/ seufzen
Sie müssen eine gerichtete Identität Anfrage zu tun. Normalerweise beinhaltet, dass nur die URL übergeben, als ob der Benutzer es betreten hatte ... das war immer für mich in der Vergangenheit (so lange, wie die Bibliothek, die Sie unterstützt verwenden OpenID2.0).
Ich schlage vor, Sie diese Frage aussehen: JanRain PHP-OpenID und Google / Yahoo