php怎么对登录失败的次数实行限制
发布时间:2022-04-18 13:46:04 所属栏目:语言 来源:互联网
导读:php怎么对登录失败的次数进行限制?如果同一站号在同一IP下连续登陆失败多次,出于用户的账号安全问题考虑,我们需要对登陆失败的次进行限制,超出次数,账号应该被锁定。那么要如何实现这一操作呢? 在用户身份验证的情况下,Laravel 具有内置的身份验证系
php怎么对登录失败的次数进行限制?如果同一站号在同一IP下连续登陆失败多次,出于用户的账号安全问题考虑,我们需要对登陆失败的次进行限制,超出次数,账号应该被锁定。那么要如何实现这一操作呢? 在用户身份验证的情况下,Laravel 具有内置的身份验证系统。我们可以根据要求轻松修改它。身份验证中包含的功能之一是Throttling. 为什么我们需要throttling保护? 基本上,throttling是用来保护暴力攻击的。它将在一定时间内检查登录尝试。在短登录中,throttling会计算用户或机器人尝试失败的登录尝试次数。 使用自定义登录实现限制 默认情况下,在内置身份验证控制器中实现限制。但是,如果我们需要实现它到自定义登录呢?实现自定义登录限制非常容易。首先,我们必须将ThrottlesLogins trait包含到您的控制器中。 use IlluminateFoundationAuthThrottlesLogins; 现在,将此ThrottlesLogins trait 加到控制器中。 namespace AppHttpControllers; use IlluminateHttpRequest; use IlluminateFoundationAuthThrottlesLogins; class AuthController extends Controller { use ThrottlesLogins; 首先,我们验证了用户提交的输入,然后实现了hasTooManyLoginAttempts() 方法。此方法将检查用户在某个时间是否执行过一定数量的失败尝试,然后系统将通过sendLockoutResponse() 方法阻止该用户。 现在,我们必须通过incrementLoginAttempts()方法指示对ThrottlesLogins trait的失败登录尝试。 if( Auth::attempt(['username' => $username, 'password' => $password]) ){ // Redirect to appropriate dashboard (编辑:南通站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |