轻松控制 Rails 应用?

Easy access control to Rails app?

我需要在 Rails 应用程序上控制对我的整个 Ruby 的访问,只允许某些选定的用户在开发过程中看到它。

我不是在研究完整的身份验证系统,而是更简单的东西,我可以在其中将电子邮件地址添加到受限用户列表,向其发送电子邮件并让该用户查看该应用程序,拒绝任何其他用户。

我曾尝试在 Heroku 中使用 WWWhisper 附加组件(该应用托管在那里),因为它正是我所需要的,但它似乎在美国以外的地区不可用。

我想我必须自己构建它,但在此之前,我想确保没有更简单的解决方案可用。有任何想法吗?提前致谢。

如果您的访问要求是 "having got an invitation email" 那么我认为您最简单的选择就是拥有这样的东西

#in application.rb

before_filter :require_invite

protected
  def require_invite
    session[:invite_token] ||= params[:invite_token]
    unless session[:invite_token] == "<SOME SECRET KEY STRING>"
      redirect_to external_home_path and return
    end
  end
end

其中 external_home_path 是一些为没有收到邀请的人准备的页面,上面写着 "Sorry you need an invite token blah blah"。您需要将其添加到处理外部主页的控制器中,以避免循环重定向。

skip_before_filter :require_invite, :only => [:external_home]

那么您只需要向其他人发送一个 link 赞

的邀请
http://example.com?invite_token=<SOME SECRET KEY STRING>

显然这不是很安全,但它与 "have i seen the email" 标准一样安全。

当你上线时,你可以把这个 before_filter 拿出来。