我已经在Sinatra和Padrino上进行了一段时间的编程。但是,我仍然无法找到适用于Padrino的正确身份验证和授权解决方案。让我解释一下我的期望以及我已经尝试过的东西。

通过Sinatra,我成功地使用了sinatra-authentication gem 和role_model gem 。我通常使用Mongoid ORM与MongoDB交谈。这两个瑰宝使我可以进行身份​​验证,保护路由,检查已登录用户的角色以应用访问控制。

sinatra身份验证不适用于Padrino-它非常特定于Sinatra。我尝试了多次。我已经使用相应的Padrino模块尝试了omniauth和warden,但是由于一个或另一个原因,我无法让它们像美妙的sinatra增强 gem 那样简单地工作。

因此,在我可以尝试实现自己的解决方案(或将sinatra身份验证移植到Padrino)之前,有人可以建议其他任何身份验证和授权解决方案吗?目前,我不需要任何花哨的东西-基于数据库的简单例份验证就可以完美地工作。

最佳答案

我知道这个问题已经有两年了。但是最近我仍然遇到Padrino-warden ist错误记录的同样的麻烦,而且我遇到了很多问题。因此,我在workaround.org上记录了我的发现。愿它帮助那些不幸的人。

我认为padrino-admin是一个值得学习的好支架。但是用户模型相当不灵活。授权概念奇怪地做了Padrino的作者不喜欢的事情:将配置路径放在中央位置,而不是将配置移动到 Controller 中。 (padrino管理员还有其他问题,例如缺少分页和缺少对外键的支持。因此,它与Django提供的功能远不可比。)

关于padrino - Padrino的身份验证和授权解决方案,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7332809/

10-11 08:07