如何修改会话控制器以使用可锁定策略?



我创建了会话控制器,我正在遵循这个.

我已经在模型中添加了可锁定的策略并运行rails db:migrate

我想在不使用warden.authenticate的情况下更新失败的尝试 我阅读了设计文档,可锁定的策略并找到了valid_for_authentication的方法。

我如何使用valid_for_authentication? 如果它为零,我只是跳过sign_in,但我想更新失败的尝试。我缺少什么方法?

def create
@user = User.authenticate(params[:user][:email], params[:user][:password])
sign_in(:user, @user) if @user&.valid_for_authentication?
redirect_to root_path
end

好吧,我只是在这里筛选了相关来源。据我所知,如果超过登录尝试次数,使用@user&.valid_for_authentication?将增加failed_attempts计数器并锁定帐户。所以这应该开箱即用。如果您想对其进行测试,我建议您使用rails console

最新更新