KgCaptcha 行为验证码安全策略设置

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

前言

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

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


无感验证

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

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

3.png

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

4.png

部分代码片段

defsense_verify(self):
""" 检测当前用户是否为无感免验证用户 """# 当前应用是否开启无感验证功能ifself.auth.data["sense"] !=1: return0, self.auth.lang[0]
# 支持客户端调时关闭无感验证:$_GET["sence"] = 1 关闭、默认为 0 即开启 <script src="captcha.js?&sence=1"></script>ifself.kg["GET"].get("sence", "ON") =="OFF": return40004, self.auth.lang[40004]
# 客户端环境是否支持无感验证,无法获取/写入客户端 COOKIEiflen(str(self.auth.cid)) !=32ornotself.auth.ip: return40000, self.auth.lang[40000]
    ....


IP限制(黑/白名单)

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

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

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

6.png

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

7.PNG

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

10.PNG

部分代码片段

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


风控异常设置

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

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

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

12.png

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

13.PNG

部分代码片段

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


相关链接

SDK下载:KgCaptcha (KgCaptcha) · GitHub

在线体验:凯格行为验证码在线体验

开发文档:凯格行为验证码-开发文档

相关文章
|
PHP 开发工具
KgCaptcha验证的那些事
针对KgCaptcha验证码,当用户点击完成验证,系统进行风险评估,根据风险程度进行验证,并返回结果。下面是我对前/后端验证的分析。
KgCaptcha验证的那些事
KgCaptcha 行为验证码自定义语言/预警信息设置
KgCaptcha 行为验证码自定义语言/预警信息设置
KgCaptcha 行为验证码自定义语言/预警信息设置
|
9月前
|
安全 Java 数据库
SpringSecurity实现多种登录方式,如邮件验证码、电话号码登录
SpringSecurity实现多种登录方式,如邮件验证码、电话号码登录
1636 2
|
NoSQL Java Redis
手机验证码登录
手机验证登录分为三个API接口,分别为:获取图片验证码、获取手机短信验证码、登录。 1.获取图片验证码:通过工具类生成图片验证码,将随机验证码保存到session中,将图片验证码转为base64码放到对应的entity字段里。
9380 0
|
开发工具
[验证码] KgCaptcha风险监测方法
“访问过于频繁,请先完成验证”,相信大家对这句话应该不陌生。当我们访问一个网站过于频繁时,就会弹出这样的提示,甚至于让我们先通过滑动验证码。
[验证码] KgCaptcha风险监测方法
|
6月前
|
NoSQL Java Redis
认证服务---整合短信验证码,验证码倒计时,验证码防刷校验 【一】
这篇文章介绍了如何在分布式微服务项目中整合短信验证码服务,包括使用阿里云短信验证接口、将短信验证功能集成到第三方服务中、其他服务的远程调用,以及通过Redis实现验证码防刷机制的代码实现和遇到的问题解决方案。
|
9月前
|
SQL 前端开发 安全
使用 BurpSuite 绕过验证码实施表单
使用 BurpSuite 绕过验证码实施表单
使用 BurpSuite 绕过验证码实施表单
|
安全 前端开发
KgCaptcha 行为验证码自定义类型设置
KgCaptcha 行为验证码自定义类型设置
KgCaptcha 行为验证码自定义类型设置

热门文章

最新文章