【问题标题】:authlogic and oauth-pluginauthlogic 和 oauth-plugin
【发布时间】:2010-11-15 09:36:39
【问题描述】:

是否有人测试过 - authlogic 是否可以与 oauth-plugin (https://github.com/pelle/oauth-plugin) 一起使用?

【问题讨论】:

    标签: ruby-on-rails oauth authlogic


    【解决方案1】:

    我现在正在让它工作。我只是使用 authlogic 方法推出了我自己的方法,让它发挥得很好。 (我正在尝试让提供程序工作,所以 authlogic-oauth 似乎不适合我)

    我会边走边编辑

    def logged_in?
      return true if current_user 
    end 
    
    def login_required 
      return true if logged_in? 
      store_location 
      redirect_to new_user_session_path and return false                                                                                                                                                                                                                      
    end 
    

    【讨论】:

      【解决方案2】:

      简短的回答是。我目前正在将 oauth-plugin 的服务提供商与我自己的身份验证系统(早于 authlogicacts_as_authenticated 和所有其他系统)集成。

      oauth-plugin 服务提供商通过代码生成器生成两个控制器,然后将它们绑定到插件中的一些库文件中。所有这些文件都需要一个 login_required 类方法,其语义与 acts_as_authenticated 使用的语义相同。

      authlogic 对您的控制器完全不做任何假设,因此它不能与 oauth-plugin 一起使用,但是该设计决策也意味着它可以以预期的方式构建控制器相当容易。因此,构建一个支持 oauth-plugin 的 shim 应该很容易(也许很简单)。

      但是在我的情况下,我决定运行生成器,然后从插件中提取我需要的内容并删除插件本身。我这样做的主要原因是我的身份验证系统中明确没有login_required 方法,所以我必须对lib 进行修补才能使其工作。其次,插件中有很多我不需要的东西。第三,大部分真正库级别的东西已经被抽象到 oauth gem 本身,所以生活在 oauth-plugin lib 目录中的东西在这个生成的代码和实际库之间的奇怪无人区。

      【讨论】:

        【解决方案3】:

        Authlogic 有一个专门为其开发的插件,可以在here 找到。

        【讨论】:

        • 我需要插件来制作 oauth 服务器,但不允许用户通过 oauth 协议使用来自第三方站点的凭据登录
        • pelle 的 oauth-plugin 非常适用于 restful-authentication,但我想知道 - 它是否适用于 authlogic
        • 呵呵.. 我需要将启用 authlogic 的站点作为提供者,而不是消费者
        猜你喜欢
        • 2011-05-16
        • 2010-11-13
        • 2011-02-06
        • 2014-02-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-10-06
        • 2011-01-09
        相关资源
        最近更新 更多