是否可以在heroku上使用openVPN设置VPN以保持暂存环境的私密性?如果是这样,任何人都有写或链接?
答案 0 :(得分:3)
您不能使用VPN执行此操作,但您可以使用密码保护站点的暂存实例。为此,您需要设置一个名为“staging”的新Rails环境,并在ApplicationController中包含以下内容:
class ApplicationController
before_filter :password_protected if Rails.env.staging?
protected
def password_protected
authenticate_or_request_with_http_basic do |username, password|
username == "foo" && password == "bar"
end
end
end
然后,您需要确保您的暂存实例的环境:
heroku config:add RACK_ENV=staging
答案 1 :(得分:0)
使用防火墙和vpn保护heroku上的登台环境是不可能的。带有轨道3的清洁解决方案(也很容易适用于sinatra),类似于大卫的解决方案
# config/environments/staging.rb
MyApp::Application.configure do
config.middleware.insert_after(::Rack::Lock, "::Rack::Auth::Basic", "Staging") do |u, p|
[u, p] == ['username', 'password']
end
#... other config
end
我写了一篇关于它的简短blog post。