登录  /  注册
博主信息
博文 16
粉丝 0
评论 0
访问量 5197
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
KgCaptcha 行为验证码安全策略设置
原创
346人浏览过

前言

在验证码项目中,都会遇到验证码被恶意大量高频的调用,给服务造成很多无效的注册或登录,占用大量的系统资源。

而我在想,有没有哪一款验证码产品可以设置黑/白名单限制IP访问设置风 控异常呢?答案是:有,大海茫茫中让我找到了 KgCaptcha,接下来我就给大家讲讲怎么设置吧!

无感验证

开启:当用户通过验证后,再次访问时,无需验证,直接通过。

关闭:用户每次都需手动验证。

当无感验证开启,验证码显示如下:

部分代码片段

  1. def sense_verify(self):
  2. """ 检测当前用户是否为无感免验证用户 """
  3. # 当前应用是否开启无感验证功能
  4. if self.auth.data["sense"] != 1: return 0, self.auth.lang[0]
  5. # 支持客户端调时关闭无感验证:$_GET["sence"] = 1 关闭、默认为 0 即开启 <script src="captcha.js?&sence=1"></script>
  6. if self.kg["GET"].get("sence", "ON") == "OFF": return 40004, self.auth.lang[40004]
  7. # 客户端环境是否支持无感验证,无法获取/写入客户端 COOKIE
  8. if len(str(self.auth.cid)) != 32 or not self.auth.ip: return 40000, self.auth.lang[40000]
  9. ....

IP限制(黑/白名单)

黑名单模式:禁止以下IP访问

白名单模式:只允许以下IP访问

通过选择黑/白名单,填写IP列表来限制指定IP访问验证码。

当访问者IP在黑名单列表里,验证码显示如下:

相反,当访问者IP在白名单列表里,验证码正常显示:

部分代码片段

  1. # 客户端IP检测
  2. ip_list = self.auth.ip_list()
  3. if ip_list == 1: message = "%s : %s" % (self.auth.lang[40010], self.kg["HTTP_ADDR"])
  4. if ip_list == 2: message = "%s : %s" % (self.auth.lang[40011], self.kg["HTTP_ADDR"])
  5. # 服务器黑名单检测
  6. if self.auth.client_blacklist():
  7. message = self.auth.lang[40020] # 服务器黑名单

风 控异常设置

一级:适用于开发调试及对安全要求一般的应用

二级:标准模式,适用于大部分应用

三级:适用于对安全要求极高的应用

当指定分钟内错误记录达到指定次数时,触发风险异常提示:

部分代码片段

  1. # 请求次数限制检测
  2. excess = self.auth.excess(0)
  3. if excess:
  4. message = {1: self.auth.lang[40012], 2: self.auth.lang[40013], 3: self.auth.lang[40014]}[excess]
  5. # 风险检测,在 x 分钟内出错记录超过 n 次则拒绝
  6. if self.auth.data["level"] > 0: # self.auth.cid
  7. # if not self.auth.cid: message = self.auth.lang[40007] # 无 COOKIE ID
  8. if not self.auth.risk():
  9. message = self.auth.lang[40006] #

相关链接

SDK下载:https://github.com/KgCaptcha

在线体验:https://www.kgcaptcha.com/demo/

本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学