Janrain biblioteca de php y google extremo para OpenId
-
22-07-2019 - |
Pregunta
Im usando janRain librería Php para OpenId y yadis descubrimiento y no importa lo que haga, voy a trabajar en cosas como user.openid.org o mi propio proveedor, pero si intento usar el google extremo, puedo conseguir cualquier información de descubrimiento.
Incluso si ejecuto el descubrimiento de ejemplo para el janrain biblioteca, obtengo el siguiente resultado Afirmó
Identifier http://www.google.com/accounts/o8/id
No OpenID services discovered.
y sucede lo mismo si puedo añadir el https:// antes de la dirección url.
Mi pregunta es, probablemente, no se cómo hacer que funcione, pero si en realidad es posible, ¿qué otras opciones tengo (que se ejecutan en mi sitio, no sassy auth quería en el proyecto).
¿Por qué es openId para #@!#@ complejo e indocumentados?(nota, me dio zend_openid un par de horas para tener el mismo resultado)
Solución
es que el trabajo aquí.algunos consejos:
- como yo lo entiendo,
http(s)://www.google.com/accounts/o8/id
no es un openid extremo, pero googles descubrimiento endpoint.usted debe proporcionar una validez (de google) OpenID Identificador, comoexample.blogspot.com
, para la cual se devuelve Afirmó Identificador, dirección URL del Servidor, tipos de Servicio, etc. - tengo el descubrimiento sólo un ejemplo de trabajo después de la fijación de la
<?
y<?=
endiscover.php
(en sustitución de ellos con<?php
y<?php echo
).alternativamente, usted puedeini_set('short_open_tag', '1')
.está desactivada de forma predeterminada enphp.ini-recommended
. - ¿su instalación de PHP soporte SSL?ver LÉAME, específicamente esta parte:
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.
Otros consejos
Esta es una carne legítima. Google dice que admiten OpenID, pero el suyo no funciona como NADIE. MyOpenID.com, blogspot, aol, yahoo, wordpress, myspace, livejournal y muchos otros son compatibles con el estándar correctamente y funciona como se espera. Al igual que su propio proveedor de OpenID, puede construir utilizando el proyecto del servidor CommunityID.
/ suspiro
Debe hacer una solicitud de identidad dirigida. Normalmente eso solo implica pasar la URL como si el usuario la hubiera ingresado ... eso siempre funcionó para mí en el pasado (siempre que la biblioteca que use sea compatible con OpenID2.0).
Le sugiero que mire esta pregunta: PHP-OpenID de Janrain y Google / Yahoo