使用Cookie PHP跟踪登录尝试

Phi*_*kie 5 php cookies

我已经完成了一项家庭作业,我需要创建一个验证码来登录"评论"部分.

我有验证码工作正常,没问题.我们的任务还包括对验证码的失败尝试进行计数.没问题.

这是我的问题.我们被告知允许用户尝试他或她希望的次数,但是,如果他们在30秒限制内失败5次,他们将被锁定3分钟.

我理解如何跟踪5次错过的尝试,但是你如何跟踪这个尝试的时间?如果用户在15秒内尝试了4次,然后等待了一分钟(或更少,显然),则重置时钟,并且还有5次尝试.此外,如果他们尝试两次并等待30秒,尝试将再次尝试.

我是否需要设置时间cookie,辅助计数cookie(与原始计数cookie一起使用),并跟踪辅助计数器的开始并查看该计数器是否增加到5?你会怎么做?

编辑:

不得不道歉,显然我对自己的情况并不完全清楚.在这个家庭作业中,严格规定我们必须使用cookie来完成这项任务.我们目前没有考虑最佳实践或安全性,教师只是希望我们对cookie感到满意.不幸的是,会话对我来说不是一个选项,我必须使用cookies.

Mar*_*c B 3

鉴于您已将其标记为 PHP,只需使用session_start(). 这通过 cookie 为每个用户提供了唯一的 ID,并且您可以将他们的登录尝试存储在$_SESSION服务器上的数组中。每次登录尝试时,您都可以检查会话中存储的记录尝试,并查看它们是否超出允许的尝试率。

当然,通常的警告仍然存在:在真正的安全系统上,攻击者极不可能在多次尝试中维护该会话 cookie - 他们会忽略它,每次都会强制创建一个新的空白会话。