diff --git a/lib/rack/attack.rb b/lib/rack/attack.rb index afb5b08..7aa29c7 100644 --- a/lib/rack/attack.rb +++ b/lib/rack/attack.rb @@ -31,7 +31,7 @@ module Rack autoload :Allow2Ban, 'rack/attack/allow2ban' class << self - attr_accessor :enabled, :notifier, :discriminator_normalizer + attr_accessor :enabled, :notifier, :throttle_discriminator_normalizer attr_reader :configuration def instrument(request) @@ -83,7 +83,7 @@ module Rack # Set defaults @enabled = true @notifier = ActiveSupport::Notifications if defined?(ActiveSupport::Notifications) - @discriminator_normalizer = lambda do |discriminator| + @throttle_discriminator_normalizer = lambda do |discriminator| discriminator.to_s.strip.downcase end @configuration = Configuration.new diff --git a/lib/rack/attack/throttle.rb b/lib/rack/attack/throttle.rb index 1cc50f4..6992339 100644 --- a/lib/rack/attack/throttle.rb +++ b/lib/rack/attack/throttle.rb @@ -51,8 +51,8 @@ module Rack def discriminator_for(request) discriminator = block.call(request) - if discriminator && Rack::Attack.discriminator_normalizer - discriminator = Rack::Attack.discriminator_normalizer.call(discriminator) + if discriminator && Rack::Attack.throttle_discriminator_normalizer + discriminator = Rack::Attack.throttle_discriminator_normalizer.call(discriminator) end discriminator end diff --git a/spec/rack_attack_throttle_spec.rb b/spec/rack_attack_throttle_spec.rb index feb599c..0b0d68a 100644 --- a/spec/rack_attack_throttle_spec.rb +++ b/spec/rack_attack_throttle_spec.rb @@ -145,7 +145,7 @@ describe 'Rack::Attack.throttle with block retuning nil' do end end -describe 'Rack::Attack.throttle with discriminator_normalizer' do +describe 'Rack::Attack.throttle with throttle_discriminator_normalizer' do before do @period = 60 @emails = [ @@ -161,16 +161,16 @@ describe 'Rack::Attack.throttle with discriminator_normalizer' do end end - it 'should not differentiate requests when discriminator_normalizer is enabled' do + it 'should not differentiate requests when throttle_discriminator_normalizer is enabled' do post_logins key = "rack::attack:#{Time.now.to_i / @period}:logins/email:person@example.com" _(Rack::Attack.cache.store.read(key)).must_equal 3 end - it 'should differentiate requests when discriminator_normalizer is disabled' do + it 'should differentiate requests when throttle_discriminator_normalizer is disabled' do begin - prev = Rack::Attack.discriminator_normalizer - Rack::Attack.discriminator_normalizer = nil + prev = Rack::Attack.throttle_discriminator_normalizer + Rack::Attack.throttle_discriminator_normalizer = nil post_logins @emails.each do |email| @@ -178,7 +178,7 @@ describe 'Rack::Attack.throttle with discriminator_normalizer' do _(Rack::Attack.cache.store.read(key)).must_equal 1 end ensure - Rack::Attack.discriminator_normalizer = prev + Rack::Attack.throttle_discriminator_normalizer = prev end end