Rails中有没有一种方法可以指定允许的最大内容长度,这样超过这个值的请求就会立即被拒绝?
我的应用程序上有一个登录表单,这是未经身份验证的用户唯一可用的POST。这已被确定为缓慢POST DoS攻击的潜在漏洞。缓解措施之一是限制允许的请求大小。
我似乎找不到可以转动的旋钮,如果内容长度超过特定值,它将允许我自动拒绝请求。
如果这影响了答案,我们将使用彪马网络服务器。
Puma实际上有两个参数,线程数和工作者数。如果我们稍微更改默认的puma.rb,它将看起来像:
workers Integer(ENV['WORKERS_NUMBER'] || 1)
max_threads_count = Integer(ENV['RAILS_MAX_THREADS'] || 1)
min_threads_count = max_threads_count
threads min_threads_count, max_threads_count