1. 产品功能问题
验证码安全性如何保障?
行为验证码验证过程中,通过动态加密、Pow验证、轨迹分析、特征发现、信用历史、设备指纹、反模拟器、虚拟机加固、黑名单库等多道安全防护,帮助企业对抗黑产,保障业务安全。
验证码拦截效果不理想?
若您正在遭受黑产攻击困扰,期望能够拦截更多异常请求,建议您登录控制台,选择要配置的应用,单击安全配置:
推荐方案将风控等级调整至:安全优先。调整后,验证码服务将以更严格的风控策略对验证请求进行拦截。
选择验证方式:图形点选。由于图形点选问题更复杂,比其他验证方式能更好地拦截异常请求。
验证码并发量限制是多少?
验证码每秒并发请求量(QPS)限制为:1000。
业务请求每秒并发量超出1000时:调用票据校验接口报错(RequestLimitExceeded)。
什么是常规验证,什么是无感验证?两者之间的区别?
行为验证码区分两类验证方式,常规验证方式和无感验证。不同认证方式配置安全配置,实现灵活的验证码验证方式。
1.常规验证方式目前有三种:滑动拼图、文字点选、图形点选,调用验证码会100%显示弹窗。
2.无感验证方式下,用户无需回答验证问题,系统智能判断用户风险情况,通过后台票据校验 API 返回验证结果,适用于用户体验要求极高的场景。
(1)当请求有恶意时,验证码正常返回 ticket(其他验证方式下如果发现恶意,将会在前端进行拦截)。
(2)票据校验阶段,需要额外获取 EvilLevel 字段值来判断请求是否有恶意。
验证码服务是否支持多语言?
支持25种语言,包括简体中文、繁体中文(中国香港)、繁体中文(中国台湾)、英文、阿拉伯语、缅甸语、法语等,具体修改方式请参考开发文档
配置方式如下:
1.在客户端接入时,配置相关参数
2.选择要配置的应用,点击“外观配置”,进入外观配置页签,即可配置验证码提示语言为自适应。自适应通过匹配用户系统浏览器设置的语言和用户系统去显示提示语言,优先匹配用户系统浏览器。
用户回答验证问题正确,却提示“您的操作过于频繁,请稍后再试”,是什么原因?
可能的原因有:
1.用户使用环境异常,被策略判定为可疑用户,需要等待10-20分钟后再试,或更换网络环境后再试。
2.用户为恶意用户或处于恶意环境,被策略拦截。验证码服务会根据用户环境、验证历史、设备指纹等一整套立体策略模型,进行策略打击,来保证验证安全。
3.如果较多用户反馈出现上述问题,可能是策略等级过于严格,建议您登录控制台 ,选择应用,点击“安全配置”,进入应用详情 > 安全配置页签,将风控等级调整至:体验优先。
4.核实业务客户端接入使用的 验证ID(CaptchaAppId) 是否为控制台创建的应用。
数据统计中的请求量、验证量,验证通过量等名词解释
| 名词 | 说明 |
|---|
| 请求量 | 客户端加载验证的次数 |
| 验证量 | 用户回答验证问题后,发起验证的次数 |
| 验证通过量 | 验证通过的次数 |
| 验证拦截量 | 验证未通过,被拦截的次数 |
| 答案错误拦截量 | 因答案错误导致验证被拦截的次数 |
| 安全策略打击拦截量 | 因安全策略打击导致验证被拦截的次数 |
| 票据校验量 | 服务端发起票据校验的次数 |
| 票据校验通过量 | 票据校验通过的次数 |
| 票据校验拦截量 | 票据校验未通过的次数 |
是否支持百度小程序、支付宝小程序等其他小程序接入?
支持。目前支持 Web、Android、iOS客户端和微信以及以上小程序接入。小程序通过H5的方式接入,接入方式请参见 Web 客户端接入
2. 客户端接入问题
接入后没有弹出验证码是什么原因?
- 登录控制台,查看对应的应用是否开启了智能免验证或者无感验证:
若开启了智能免验证:可信用户访问时,默认不弹出验证问题。若需要弹出验证码查看效果,可以同设备频繁触发验证。在多次触发后,由于频繁访问,会被验证码系统识别为风险用户而弹出验证问题。
若开启了无感验证:所有的访问默认不弹出验证问题,仅在票据校验阶段返回验证结果。
- 可能的原因是验证码的相关样式被覆盖,导致无法展示。例如在前端接入时:
.tcaptcha-transform{display:none}:导致验证码弹窗被隐藏。
.tcaptcha-transform{margin-left:9999px}:导致验证码弹窗被平移到其他位置。
Android 使用 Web 前端 H5 方式进行接入,调试过程中先弹出空白背景,后弹出验证码页面如何调整?
调试过程中,正常情况下会首先调起 webview 加载网页,然后弹出验证码页面。
如果出现先弹出空白背景,后弹出图形验证页面的现象。形成原因如下:加载验证码 js 的时间导致白屏。
空白层形成原因是页面没有内容时,加载的 webview 就显示出来,需要等待 ready 事件触发后再进行 webview 展示。
因此,Android 需要先加载页面但不进行展示,等待 ready 回调后,再通知 Android 进行展示。
App 客户端接入验证码显示不完整如何调整?
验证码根据容器宽高进行居中显示,验证码显示不完整可能由于容器本身设置较宽,导致展示的验证码被截断,该情况需要对客户端的弹框进行调整。此外随意加载其他 webview 都可能会出现截断的情况。
验证码以嵌入式方式展示如何配置?
初始化验证码对象时,将 options 提供的配置参数 type 设置为 embed 。
new TencentCaptcha(element, CaptchaAppId, callback, {type: 'embed'});
示例代码
<div id="tc"></div>
<script>
//初始化验证码对象,将验证码绑定到id为‘tc’的容器元素中
new TencentCaptcha(document.getElementById('tc'),CaptchaAppId,callback,{type:'embed'}).show()
</script>
如果使用嵌入式,容器元素在界面里找不到会报错。
微信小程序客户端接入问题
是否支持使用 webview 方式接入微信小程序?
支持。通过H5的方式接入,接入方式请参见 Web 客户端接入。
在微信小程序中以内嵌 Web 页面的方式接入验证码服务,提示“不支持引用非业务域名”?
是否支持使用 uni-app 框架接入微信小程序?
支持。
3. 跨端框架(React-Native,Flutter等)WebView 接入问题
为何在开发测试中频繁触发风控拦截?
当 WebView 组件使用内嵌 HTML 内容时,由于没有明确的域名来源,浏览器会将其视为 null 或 file:// 协议。这会导致风控系统将此类设备上报为异常设备。在使用内嵌 HTML 时,建议通过设置 baseUrl 来指定一个合法的域名来源。 配置示例如下:
<WebView
source={{
html: captchaHtml,// html 字符串模板
baseUrl: '***' // 使用任意合法域名
}}
....// 其他必要配置
/>
4. 服务端票据校验接入问题
票据校验接口超时时间为多久?
票据校验接口超时时间为5秒。
客户端验证生成的票据有效时长为多久?
有效时长为5分钟,若超过5分钟再进行核验票据,接口会返回"CaptchaCode": 8;"CaptchaMsg": "verify timeout"的报错。
验证码票据过期时间能否手动设置?
当前暂不支持手动设置后端票据校验过期时间,后端 ticket 有效时长为5分钟。
5. H5 接入问题
如何关闭遮罩层/自定义 loading 样式?
初始化验证码 SDK 时,修改以下内容。
var captcha = new TencentCaptcha("appid",callback,{loading:false})
入口脚本 TCaptcha.js/TJCaptcha.js 报跨域错误?
目前验证码接入只支持用 script 动态接入,如通过 xhr、fetch 请求接入将会出现 CORS 跨域错误。
如何指定内嵌验证码元素位置?
初始化验证码 SDK 时,修改以下内容。
/** embedEleDom:指定渲染验证码区域dom元素 */
var embedEleDom=document.getElementById('embedEleDom');
var captcha = new TencentCaptcha(embedEleDom, appid, callback, {type:"embed"})
在内嵌验证码时,如果将 loading 设置为 false,为什么 loading 效果仍然存在?**
当 loading 为 false 时,只有弹出式验证码码形生效,内嵌式无法取消 loading 效果。
6. 计费方式
基于客户端验证量计费方式进行计费。每进行一次前端验证,即会产生计费。
没有更多了