Module: Sorcery::Model::Submodules::BruteForceProtection::InstanceMethods

Defined in:
lib/sorcery/model/submodules/brute_force_protection.rb

Instance Method Summary collapse

Instance Method Details

#locked?Boolean

Returns:

  • (Boolean)


84
85
86
# File 'lib/sorcery/model/submodules/brute_force_protection.rb', line 84

def locked?
  !unlocked?
end

#register_failed_login!Object

Called by the controller to increment the failed logins counter. Calls ‘lock!’ if login retries limit was reached.



62
63
64
65
66
67
68
69
70
71
# File 'lib/sorcery/model/submodules/brute_force_protection.rb', line 62

def register_failed_login!
  config = sorcery_config
  return if !unlocked?

  sorcery_adapter.increment(config.failed_logins_count_attribute_name)

  if self.send(config.failed_logins_count_attribute_name) >= config.
    lock!
  end
end

#unlock!Object

/!\ Moved out of protected for use like activate! in controller /!\



76
77
78
79
80
81
82
# File 'lib/sorcery/model/submodules/brute_force_protection.rb', line 76

def unlock!
  config = sorcery_config
  attributes = {config.lock_expires_at_attribute_name => nil,
                config.failed_logins_count_attribute_name => 0,
                config.unlock_token_attribute_name => nil}
  sorcery_adapter.update_attributes(attributes)
end