Mat*_*ith 23 security ip rack ruby-on-rails heroku
有没有办法实现IP过滤或IP访问规则,就像我使用nginx/apache来限制或阻止Heroku上的某些IP一样?
注意:我知道这可以在我的应用程序(Rails 3.2)中轻松完成,但我不认为这是Heroku上最有效的资源使用.此外,基于Rack的解决方案比在Rails中实现过滤更好.
Phi*_*hil 16
你应该看看rack-attack.看起来它与rack-block相同,但是更频繁地使用和更新.要阻止特定IP,您可以执行以下操作:
# Block requests from 1.2.3.4
Rack::Attack.blacklist('block 1.2.3.4') do |req|
# Requests are blocked if the return value is truthy
'1.2.3.4' == req.ip
end
Run Code Online (Sandbox Code Playgroud)
我添加了'rack-block'作为Rack中间件.在config/initializers中,添加一个新文件:
YourApp::Application.configure do
config.middleware.insert_before(Rack::Lock, Rack::Block) do
# Add your rules with the rack-block syntax in here
end
end
Run Code Online (Sandbox Code Playgroud)
奇迹般有效.
| 归档时间: |
|
| 查看次数: |
10978 次 |
| 最近记录: |