Php 在Laravel 5.5中增加多次失败登录尝试的时间
目前,默认情况下,五次登录尝试阻止用户一分钟。我想将系统设计为:Php 在Laravel 5.5中增加多次失败登录尝试的时间,php,laravel,authentication,laravel-5,Php,Laravel,Authentication,Laravel 5,目前,默认情况下,五次登录尝试阻止用户一分钟。我想将系统设计为: 在前三次登录尝试失败后,阻止用户2分钟 之后,对于接下来两次失败的登录尝试(总共第五次),阻止用户5分钟 ThrottlesLogins.php 公共函数maxtures() { 返回属性_存在($this,'maxturents')?$this->maxturents:2; } 公共功能十分钟() { 返回属性_存在($this,'decyminutes')?$this->decyminutes:2; } LoginContr
公共函数maxtures()
{
返回属性_存在($this,'maxturents')?$this->maxturents:2;
}
公共功能十分钟()
{
返回属性_存在($this,'decyminutes')?$this->decyminutes:2;
}
LoginController.php
公共函数adminLogin(请求$Request)
{
$this->validate$请求[
“电子邮件”=>“必需”|电子邮件”,
“密码”=>“必需|最小值:6”
]);
$key=$this->throttleKey($request);
$rateLimiter=$this->limiter();
//检查用户是否有过多的登录尝试。
如果($this->hastoomanyLogin尝试($request)){
$attempts=$RateLimitor->attempts($key);
$rateLimiter->clear($key);
如果($truments==5){
$this->十分钟=5;
}
对于($i=0;$i<$truments;$i++){
$this->incrementLoginAttents($request);
}
$this->fireLockoutEvent($request);//触发锁定事件。
返回$this->sendLockoutResponse($request);//锁定后将用户重定向回。
}
如果(Auth::guard('admin')->尝试(['email'=>$request->email,
'password'=>$request->password],$request->get('memory')){
return redirect()->预期('/admin');
}
//跟踪用户的登录尝试。
$this->incrementLoginAttents($request);
return back()->withInput($request->only('email','memory');
}
我已经注意到这一点:
但这并不能解决我的问题。我怎样才能实现这样一个系统