ruby-on-rails facebook openid ruby-on-rails-3 authlogic

ruby on rails - Autenticación Rails 3 con OpenID, Twitter o Facebook



ruby-on-rails ruby-on-rails-3 (6)

AuthLogic tiene una extensión de OpenID.

Además, esto puede ayudar: http://www.michaelhamrah.com/blog/2009/05/authlogic-and-openid-on-rails/

¿Puedes sugerir algún ejemplo funcional de ello? Probé Authlogic y Devise con mucho éxito.



La forma más fácil que he encontrado para hacer esto es usar el servicio RPX NOW .

Puede encontrar un ejemplo completo de uso de Rails3 y la gema RPX NOW en github .


Pasé aproximadamente una semana intentando (sin éxito) conseguir que open_id_authentication funcione. Estaba intentando usar Authlogic y todas las gemas y complementos asociados. No podía hacer que las cosas funcionaran como yo quería. (La autenticación solo funcionaría con la ruta: acción (/: id) habilitada, pero cuando estaba habilitada, mis otros controladores no funcionaban porque algo en el complemento estaba eliminando el hash de params - muy frustrante).

Sin embargo, finalmente pude hacer que OpenID funcionara utilizando Devise ( http://github.com/plataformatec/devise ) y devise_openid_authenticatable ( http://github.com/nbudin/devise_openid_authenticatable ). Pude seguir el archivo Léame en ambas páginas para que todo funcione exactamente como lo quería. Sencillo. Hacia adelante Y Rails 3.0 compatible.


ACTUALIZACIÓN - Junio ​​de 2011 - He estado usando la gema omniauth recientemente y creo que es una solución mejor que usar las gemas sugeridas en esta respuesta. Funciona bien con Devise y te dará todo lo que necesitas en una gema. Creé un motor que combina Devise y Omniauth y agrega un controlador para manejar las devoluciones de llamada. Tengo algunos cambios planificados para la gema y en este momento no lo considero un complemento estable, pero es posible que pueda reutilizar parte del código de la gema: https://github.com/charlotte-ruby/devise_omniauth_engine/blob/master/app/controllers/users/omniauth_callbacks_controller.rb

Hace poco conseguí este trabajo en Rails 3 (con algunos problemas al usar OpenID). No tengo un ejemplo completo de trabajo que pueda ver en github, pero esto es lo que estoy usando ... todos los cuales tienen ejemplos en los archivos Léame.

Facebook - fbgraph . A diferencia de Facebooker, utiliza la API de Facebook más reciente. Y la fuente es muy fácil de entender si te apetece echar un vistazo al funcionamiento interno. Mira el ejemplo de autenticación en el archivo Léame. Muerto simple.

Twitter - twitter_oauth De nuevo, echa un vistazo al ejemplo de autenticación de readme. Esto fue bastante fácil de configurar también.

OpenID - rails/open_id_authentication utiliza la gema ruby-openid, pero este repositorio en sí no es una gema, por lo que tendrá que colocar el código en su aplicación o colocarlo en su directorio de complementos. Eche un vistazo a su ejemplo en el archivo Léame y también inspeccione la fuente detenidamente para comprender lo que está pasando (solo tiene 130 líneas de código). Lo modifiqué un poco para que funcionara con mi complemento de autenticación, pero tuve algunos problemas para hacerlo funcionar tanto con el Registro simple como con el Intercambio de atributos al mismo tiempo ... pero es posible que pueda hacerlo funcionar fuera de la caja si el ejemplo rdoc es adecuado para su aplicación.

Déjame saber si tienes alguna pregunta específica sobre estos. Me encontré con algunos problemas que pude resolver con los 3 cuando estaba configurando esto.