加入收藏 | 设为首页 | 会员中心 | 我要投稿 南通站长网 (https://www.0513zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

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 

(编辑:南通站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读