0

我已经在我的 VPS 上安装了用于 MongoDB 管理的Genghis Admin 。我只使用带有“genghisapp -L”的正在运行的应用程序“gem install genghisapp”。

有什么办法可以限制公众访问,并且只有我作为管理员才能访问?

现在每个人都可以访问我的 genghisapp,但它在我的服务器名称旁边显示“连接错误:未经授权”。

谢谢你。

4

2 回答 2

0

如果您已经有一个想要集成的 Rails 应用程序,Michael 是对的。它还有一个额外的好处是不需要单独的进程来运行 Genghis,因为它安装在您的实际 Rails 应用程序的路径上。

如果没有,您可以使用带有基本身份验证和超级简单配置的 Rack:

require 'genghis'
use Rack::Auth::Basic, 'Genghis' { |u, p| u == 'admin' && p == 'hunter2' }
run Genghis::Server

将 'admin' 和 'hunter2' 换成您喜欢的身份验证,然后通过运行rackup而不是genghisapp -L.

于 2013-10-16T13:48:37.223 回答
0

您可以从另一个 Rails 应用程序中安装 Genghis 应用程序,然后引导 Devise 为您处理身份验证。

mount Genghis::Server.new, :at => '/genghis'

然后用设计,做

authenticated :user do
   mount Genghis::Server.new, :at => '/genghis'
end

...并且只有经过身份验证的用户才能访问“/ genghis”。如果您还担心任何经过身份验证的用户,您可以实现一项功能来记录访问此路线的所有用户的详细信息(活动跟踪)并通过电子邮件接收每日摘要;然后甚至可以在顶部添加授权〜请参阅CanCan gem。

于 2013-10-16T11:31:44.203 回答