59

Recorrí StackOverflow y Google, pero no pude encontrar a nadie que haya reunido una comparación de gemas de autenticación o complementos para Rails (estoy buscando algo para Rails 3). ¿Qué soluciones de autenticación están disponibles para Rails 3, que son las más populares, y cuáles son las diferencias entre ellas?Rails 3 soluciones de autenticación

Respuesta

47

Rubí caja de herramientas tiene una lista de los más populares: http://ruby-toolbox.com/categories/rails_authentication.html

Se puede ver que maquinan y Authlogic son sin duda los más populares.

Personalmente utilizo Devise. Funciona bien con Rails 3, es fácilmente personalizable y hace que sea muy fácil integrar la autenticación basada en Twitter y Facebook.

+0

Uno de los más importantes para mí era sistemas de autenticación basados ​​openID. Gran respuesta :) –

+2

Buena respuesta. [Sorcery] (https://github.com/NoamB/sorcery) es otra excelente biblioteca que es un poco más nueva en la escena. – Andrew

14

Para una aplicación Rails3 definitivamente Idear;). Devise es el único sistema de autenticación que proporciona seguridad en las 3 capas de barandillas: - En 'M', 'v' y 'C', y por lo tanto, es lo mejor. Pero debes aprender más sobre cómo personalizar el diseño para adaptarlo a las necesidades de tu aplicación. Puede encontrar ayuda para personalizar en esta página https://github.com/plataformatec/devise/wiki/_pages

0

Soy un gran defensor de rodar el suyo propio. Dependiendo de sus requerimientos, su dependencia es bastante directa y reducida en un componente clave. Rails 3.1 lo hace aún más fácil.

+5

Me parece que una biblioteca de autenticación sería el _último lugar en el que le gustaría confiar para que usted pueda hacer su propia biblioteca. – jrdioko

+0

authentication! = Encryption. No confío en mí mismo para hacer nada con el cifrado, pero los conceptos básicos de autenticación son muy simples. Rails 3.1 incluso incluye complementos ahora para ayudar con la sal. La otra forma de verlo es, si es lo suficientemente importante como para proteger, ¿a quién recurrir para protegerlo? Definitivamente hay momentos en que una biblioteca ya usada funciona, y creo que Devise es una gran. – loneaggie

+3

También tiene una comunidad más amplia para depurar el código si se encuentra una debilidad. Me vs All Hackers o Me + opensource awesomeness vs Hackers –

0

Un poco tarde a la fiesta, pero me escribió algo para ella aquí:

http://zergsoft.blogspot.jp/2012/08/rails-3-authentication-compared-warden.html 

cubro Warden, idearán y de cosecha propia.

0

El tutorial de Michael Hartl es excelente para aprender a configurar uno propio.

http://ruby.railstutorial.org/ruby-on-rails-tutorial-book

he utilizado en múltiples aplicaciones que el amor y la flexibilidad de la creación de mi propio método de autenticación.

Aunque en su mayor parte uso Devise y LOVE it. Es muy rápido/fácil de implementar, muy seguro y hace exactamente lo que necesito.

https://github.com/plataformatec/devise

que normalmente se utilizan en conjunción con CanCan y Rolify

1

me sorprende OminAuth no obtuvieron una mención en ninguna de las respuestas. (Acuerdo OmniAuth es más reciente que esta pregunta es, pero hay respuestas que vinieron después)

Sin lugar a dudas, esta es la solución de autenticación más exhaustiva disponible actualmente para aplicaciones de rieles.

Debajo del capó, OmniAuth usa OAuth2, que está evolucionando como el estándar de facto para la autenticación en aplicaciones web en plataformas y marcos. Casi todos los principales jugadores de Internet admiten OAuth2 - Github, Google, Facebook, Twitter, LinkedIn son solo algunos de mencionar.

Por supuesto Devise, funciona muy bien con OmniAuth lo que no debería ser un gran dolor de cabeza para los que ya están usando Devise