【问题标题】:rails hosting questionrails托管问题
【发布时间】:2010-07-25 21:54:46
【问题描述】:

我正在托管我的第一个 Rails 应用程序,我希望在完成所有生产工作之前不向公众开放它,这可能需要几周时间,但我想将它公开给公众朋友/beta测试人员。我使用 authlogic 进行身份验证,但我什至不希望任何人这样做,我想设置一些表单身份验证(http 基本?),只有某些人才能登录,一旦他们这样做,该网站照常工作。基本上,我只是希望这个新的登录层不会弄乱应用程序,一旦产品测试完成,我就可以轻拍并删除它。

1 - authlogic http 身份验证是否适用于此目的?还有什么?

【问题讨论】:

    标签: ruby-on-rails authentication hosting authlogic


    【解决方案1】:

    您的应用程序控制器可以处理 HTTP 基本身份验证 - 您为所有公共/私有内容保留 authlogic,并让 Rails 处理身份验证。

    /app/controllers/application_controller.rb

    class ApplicationController < ActionController::Base
      protect_from_forgery
      layout 'application'
    
      USER_ID, PASSWORD = "yourusername", "yourpassword"
    
      before_filter :authenticate
    
      private
      def authenticate
        authenticate_or_request_with_http_basic do |id, password| 
          id == USER_ID && password == PASSWORD
        end
      end
    end
    

    【讨论】:

      【解决方案2】:

      不知道您是如何托管它的,或者它的安全性有多高,但为什么不限制可以通过您的网络服务器访问它的源 IP 地址或 Mac 地址?

      【讨论】:

        【解决方案3】:

        是的,它确实支持 http basic,您只需要在您的User 模型中输入configure it。或者您可以设置一个模拟账户并将其赠送给您的朋友。

        【讨论】:

        • 谢谢,原生 Rails 身份验证和 authlogic 的 http 身份验证有什么区别。它会进行某种会话维护吗?原谅我的无知,但是假设我在我的 app_controler 中使用基本的 rails http auth 作为前置过滤器,每个页面加载都会要求 http auth 还是会话会保持活动状态直到浏览器关闭?
        猜你喜欢
        • 2021-01-09
        • 2011-05-13
        • 2014-04-05
        • 2012-04-02
        • 1970-01-01
        • 1970-01-01
        • 2016-05-25
        • 1970-01-01
        相关资源
        最近更新 更多