如标题中所述,什么时候应该使用设计,什么时候应该实现我自己的身份验证。本质上,我想知道某些教程(例如this 一个)中创建的身份验证是否安全可靠。
如果我不需要电子邮件确认、可恢复性等(许多与 Devise 相关的“爵士乐”),帐户信息是否会像我创建自己的帐户一样安全?
如果您仍然对我正在寻找的答案感到困惑 – 您是否应该尽可能/只要有帐户就使用 Devise?或者它真的应该是一个决定吗?
注意:我并不是专门指 Devise,任何身份验证 gem 都可能被替换。
最佳答案
implement my own authentication
任何时候您开始考虑是否应该创建自己的身份验证,都需要停下来。接受这个想法,将其切碎,浇上汽油,然后燃烧!
身份验证很难。身份验证中存在一些微妙之处,习惯于 CRUD 样式编程的开发人员将会错过它们。这并不是一种侮辱。我是那些程序员中的一员,我从事安全工作。认清自己的长处和短处。
Devise(和最流行的身份验证框架)已经进行了数千小时的代码审查、设计、测试和生产时间,与您将自己推出的框架相比。
我wrote a blog post about a "smart" security feature这实际上使公司的安全性变得更糟。这是一个很好的例子,说明身份验证和安全性是多么微妙!
关于ruby-on-rails - 何时使用设计与创建我自己的身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27166128/