From b293977c47893bea75bc0d75d171cc387c7c37f8 Mon Sep 17 00:00:00 2001 From: Nowaker Date: Wed, 25 Nov 2020 17:18:21 -0600 Subject: [PATCH 1/2] Make RackAttackAdmin usable --- app/controllers/rack_attack_admin/application_controller.rb | 4 ++-- app/controllers/rack_attack_admin/banned_ips_controller.rb | 2 +- app/controllers/rack_attack_admin/keys_controller.rb | 2 +- app/controllers/rack_attack_admin/rack_attack_controller.rb | 3 +-- 4 files changed, 5 insertions(+), 6 deletions(-) diff --git a/app/controllers/rack_attack_admin/application_controller.rb b/app/controllers/rack_attack_admin/application_controller.rb index f0b5f0f..0cf10fb 100644 --- a/app/controllers/rack_attack_admin/application_controller.rb +++ b/app/controllers/rack_attack_admin/application_controller.rb @@ -1,5 +1,5 @@ module RackAttackAdmin - class ApplicationController < ::ApplicationController + class ApplicationController < ActionController::Base skip_authorization_check if respond_to? :skip_authorization_check before_action :require_admin, except: [:current_request] if method_defined?(:require_admin) before_action :toggle_flags @@ -13,7 +13,7 @@ def toggle_flags helper_method \ def is_redis? - Rack::Attack.cache.respond.store.to_s.match?(/Redis/) + Rack::Attack.cache.store.to_s.match?(/Redis/) end helper_method \ diff --git a/app/controllers/rack_attack_admin/banned_ips_controller.rb b/app/controllers/rack_attack_admin/banned_ips_controller.rb index 9fe6916..f8ba20f 100644 --- a/app/controllers/rack_attack_admin/banned_ips_controller.rb +++ b/app/controllers/rack_attack_admin/banned_ips_controller.rb @@ -23,7 +23,7 @@ def create else flash[:alert] = "Failed to add: #{ban.errors.full_messages.join('. ')}" end - redirect_to root_path + redirect_to rack_attack_admin.root_path end end end diff --git a/app/controllers/rack_attack_admin/keys_controller.rb b/app/controllers/rack_attack_admin/keys_controller.rb index 243934e..9a3aa21 100644 --- a/app/controllers/rack_attack_admin/keys_controller.rb +++ b/app/controllers/rack_attack_admin/keys_controller.rb @@ -5,7 +5,7 @@ def destroy unprefixed_key = Rack::Attack.unprefix_key(orig_key) Rack::Attack.cache.delete unprefixed_key flash[:success] = "Deleted #{unprefixed_key}" - redirect_to root_path + redirect_to rack_attack_admin.root_path end end end diff --git a/app/controllers/rack_attack_admin/rack_attack_controller.rb b/app/controllers/rack_attack_admin/rack_attack_controller.rb index b754b64..a324001 100644 --- a/app/controllers/rack_attack_admin/rack_attack_controller.rb +++ b/app/controllers/rack_attack_admin/rack_attack_controller.rb @@ -5,8 +5,7 @@ class RackAttackController < RackAttackAdmin::ApplicationController # Web version of lib/tasks/rack_attack_admin_tasks.rake def index @default_banned_ip = Rack::Attack::BannedIp.new(bantime: '60 m') - @counters_h = Rack::Attack.counters_h. - without(*Rack::Attack::BannedIps.keys) + @counters_h = Rack::Attack.counters_h.with_indifferent_access.except(*Rack::Attack::BannedIps.keys) render end From 5f68296347a7e8e9facfd4c08e407fd6fe802373 Mon Sep 17 00:00:00 2001 From: Nowaker Date: Sat, 26 Jun 2021 13:39:20 -0500 Subject: [PATCH 2/2] Allow any Rails version --- rack_attack_admin.gemspec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rack_attack_admin.gemspec b/rack_attack_admin.gemspec index d25acba..98eb911 100644 --- a/rack_attack_admin.gemspec +++ b/rack_attack_admin.gemspec @@ -28,12 +28,12 @@ Gem::Specification.new do |spec| spec.require_paths = ['lib'] spec.required_ruby_version = '>= 2.3.0' - spec.add_dependency 'activesupport', ['>= 4.2', '< 5.3'] + spec.add_dependency 'activesupport', '>= 4.2' spec.add_dependency 'activesupport-duration-human_string', '>= 0.1.1' spec.add_dependency 'haml' spec.add_dependency 'memoist' spec.add_dependency 'rack-attack' - spec.add_dependency 'rails', ['>= 4.2', '< 5.3'] + spec.add_dependency 'rails', '>= 4.2' spec.add_development_dependency 'bundler', '~> 2.0' spec.add_development_dependency 'rake', '~> 10.0'