用设计定制盐
Custom salt with devise
我有自己的 enctypter,使用 devise 的 encyptable module.However 我不能设置自己的 salt。有没有办法强制使用自己的盐?
我试过使用
制作盐
def password_salt
'test'
end
但这没有用
从 2.1 版开始,如果您想使用自定义加密器,则需要使用另一个 gem:Devise Encryptable。摘自您需要的文档:
将其添加到您的 Gemfile
:
gem "devise-encryptable"
将其添加到您的模型中:
class User < ActiveRecord::Base
devise :database_authenticatable, :encryptable
end
在用户模型上添加迁移:
class DeviseCreateUsers < ActiveRecord::Migration
def change
add_column :users, :password_salt, :string
end
end
修改密码只需要更改数据库中的值或使用方法User.password_salt(new_salt)
。请记住,您可能需要更新密码才能使用新盐。
我有自己的 enctypter,使用 devise 的 encyptable module.However 我不能设置自己的 salt。有没有办法强制使用自己的盐?
我试过使用
制作盐def password_salt
'test'
end
但这没有用
从 2.1 版开始,如果您想使用自定义加密器,则需要使用另一个 gem:Devise Encryptable。摘自您需要的文档:
将其添加到您的 Gemfile
:
gem "devise-encryptable"
将其添加到您的模型中:
class User < ActiveRecord::Base
devise :database_authenticatable, :encryptable
end
在用户模型上添加迁移:
class DeviseCreateUsers < ActiveRecord::Migration
def change
add_column :users, :password_salt, :string
end
end
修改密码只需要更改数据库中的值或使用方法User.password_salt(new_salt)
。请记住,您可能需要更新密码才能使用新盐。