我需要一个非常精细的授权系统,可以与Authlogic无缝协作。
到目前为止,我已尝试过这些宝石/插件:
我也看过了,但没有尝试过实施:
我一直在寻找一个很好的教程,详细说明如何使用Authlogic以一种有意义的方式设置其中任何一个(只有Lockdown doc似乎概述了如何使用Authlogic进行设置),但是已经提出了几乎没有。对我来说最偏向于我的唯一一个是Lockdown的文档,但我不认为这个包对我有用(根据我的理解)。
我真正喜欢的是一个很好的教程具体关于使用Authlogic设置其中一个授权解决方案,或者是一个简单的示例应用程序,我可以看到代码如何组合在一起工作。任何人都可以指出任何好的循序渐进(以及为什么)资源,或者提供一个简单的应用程序,其中一个授权解决方案设置在Authlogic之上?
答案 0 :(得分:10)
耶!截至2009年11月16日,Ryan Bates终于通过专门针对此主题的Railscast接听了我的电话!
#188 - Declarative Authorization(使用Authlogic)
谢谢,贝茨先生!
答案 1 :(得分:5)
我认为你的第一句话中有拼写错误。您必须表示“与Authlogic无缝协作的授权”。 AuthLogic已经是一种身份验证解决方案。
我认为您可能很难找到专门针对AuthLogic的教程,因为授权和身份验证无需彼此紧密耦合。
身份验证回答了以下问题:“访问此页面的人是谁?” 授权回答了以下问题:“访问此页面的人有哪些权限?
因此,您的授权需要Authlogic的唯一内容是来自控制器的current_user()方法。例如,参考Acl9教程(http://github.com/be9/acl9/tree/master)。我相信您需要自定义的是:subject_method部分(Acl9将您的活动用户称为'主题',因此:subject_method需要设置为返回当前用户的方法的名称,即:current_user如果您遵循基本的AuthLogic文档。