Ruby on rails认证指南

时间:2010-03-31 13:48:51

标签: ruby-on-rails ruby authentication system

有没有人知道在ruby on rails上构建自己的身份验证系统的好指南? 我想将我自己的系统用于我的社区建设:)

谢谢!

6 个答案:

答案 0 :(得分:8)

我建议从Warden开始 - 它将为您处理会话的基础知识,并为您提供良好的基础来构建您的逻辑。 Rails Warden插件是一个相当小的库,可以帮助将它集成到Rails中。这两个项目都相当成熟,结构合理,但仍在积极开发中 - 它们都是很好的选择。

您应该了解Devise,另一个基于Warden的身份验证框架(如Authlogic或Restful Authentication)。它可能不适合你的项目(它不适合我的项目),但是查看源代码可能会给你一些关于如何最好地使用Warden的想法。

我要注意的另一件事是,就哈希密码而言,你绝对应该使用bcrypt

答案 1 :(得分:4)

michael hartl很快就会出版一本好书,前8章以pdf格式免费提供:http://www.railstutorial.org/ - 它们涵盖了创建一个非常可靠的rspec驱动的身份验证系统的整个过程 - 可以'推荐它足够

答案 2 :(得分:2)

嗯,在您提出问题之后出现了一段时间,但如果您热衷于构建自己的身份验证系统而不是使用像Devise这样的内容可能必须Ryan Bates' Authentication from Scratch Screencast

答案 3 :(得分:1)

由于身份验证是一个已经解决过很多次的常见问题,我首先会调查已有的解决方案。

例如,查看Restful Authentication,它为Rails中的身份验证提供了良好的基础。即使您更愿意使用自己的系统,使用Restful Authentication并了解其工作方式,也可以让您充分了解开始构建自己的系统时所需的组件。

答案 4 :(得分:0)

查看这篇文章:

http://www.aidanf.net/rails_user_authentication_tutorial

作者将逐步完成整个身份验证框架,并提供有关进一步改进的建议。甚至讨论了测试。

答案 5 :(得分:0)

我同意Ritchie ...... Devise有一些非常好的功能,但它并不适合其他人。对于许多用例,它劫持路由的方式可能会使您的工作更加困难。在许多情况下,你可能最好自己动手。

Devise在我的Rails资产管道中引起了循环引用,并且已安装的初始化程序中的设置(截至昨天的最新版本)与它生成的迁移中的默认值冲突。

我已经构建了企业级身份验证系统,包括电子邮件验证,密码恢复等。而且它们都不需要Devise使用的路由恶作剧。如果您真的需要所有功能,它可能适合您。但是也有很多理由不使用它。