Plugin adds BCrypt authentication and password hashing to Sequel models.
Model using this plugin should have
This plugin was created by extracting
has_secure_password strategy from rails.
Add this line to your application's Gemfile:
And then execute:
Or install it yourself as:
$ gem install sequel_secure_password
Plugin should be used in subclasses of
Always call super in
validate method of your model, otherwise password
validations won't be executed.
It does not
set_allowed_columns and mass assignment policy must be managed
class User < Sequel::Model plugin :secure_password end # cost option can be used to change computational complexity of BCrypt class HighCostUser < Sequel::Model plugin :secure_password, cost: 12 end # include_validations option can be used to disable default password # presence and confirmation class UserWithoutValidations < Sequel::Model plugin :secure_password, include_validations: false end # digest_column option can be used to use an alternate database column. # the default column is "password_digest" class UserWithAlternateDigestColumn < Sequel::Model plugin :secure_password, digest_column: :password_hash end user = User.new user.password = "foo" user.password_confirmation = "bar" user.valid? # => false user.password_confirmation = "foo" user.valid? # => true user.authenticate("foo") # => user user.authenticate("bar") # => nil
- Open an issue
- Discuss proposed change
- Once we both agree on the change I'll implement it or if you want it really badly, fork the project and create a pull request.