功能概述
无痕验证是阿里巴巴集团提供的全新的验证码解决方案。由无痕验证组件收集并统一调度下游验证码服务实现综合人机对抗的识别与处理。
在业务中接入无痕验证后,组件完全静默采集所需信息,从而对大部分正常用户完全“零打扰”,仅对存在风险的用户根据风险等级返回相应验证码。
无痕验证采用“服务端-服务端”的风险查询机制,如果您的业务本身具有风控能力,可以轻松将无痕验证的人机识别能力并入到您的业务风控体系中。
无痕验证流程
无痕验证服务通过以下逻辑实现验证码。
在您的应用客户端(网页)和服务端中分别集成无痕验证功能接入代码,在应用的业务逻辑代码中调用getNVCVal()方法获得风控参数。
在您的应用客户端(网页)和服务端中分别集成无痕验证功能接入代码,在应用的业务逻辑代码中调用getNVCVal()方法获得风控参数。
重要在集成智能验证接入代码时,appkey与scene参数值必须按照控制台中相应验证配置分配的值填写,且前端与服务端保持一致。
测试不同前端样式时,可以使用前端代码集成文档中提供的测试参数(appkey+scene)。测试完成后请务必还原appkey与scene参数值,切勿在实际线上环境中使用测试参数。
用户在指定的客户端页面触发应用业务请求。
应用服务端调用afs验证接口(第一次),结合风控参数向阿里云服务器发送无痕验证请求,以判断所收到的业务请求的风险指数。
说明无痕验证的验证逻辑与滑块验证有所不同,是由后端(应用服务端)到后端(阿里云服务器)的验证调用方式。
阿里云服务器利用风控技术,判断验证请求的合法性并将风险结果code返回至应用服务端。
应用服务端根据风险结果code对应的处置方式(resultJson)执行对应的处置。默认处置方式为:
返回code为200:表示验证直接通过
返回code为400:表示唤醒二次验证
返回code为800:表示直接拦截
说明当风险结果code为200或800时,将直接返回最终验证结果至应用客户端。
当风险结果code为400时,在客户端页面唤醒二次验证组件,例如调用getNC()方法唤醒滑动验证。
用户在客户端(网页)中,将滑块滑动至末端。滑块组件代码自动触发,向阿里云服务器发送验证请求,判断此次操作行为是否正常。
阿里云服务器利用风控技术,判断验证请求的合法性并将结果返回至应用客户端。
滑动验证成功:在客户端NVC_Opt对象自动触发nvcCallback回调方法。
滑动验证失败:客户端提示验证失败,并提示用户重新进行滑动验证。
应用客户端通过nvcCallback回调方法获取完整的data信息并传送给应用服务端。
说明回调方法获得的data信息与第一次无痕验证请求中调用的getNVCVal方法获得的字符串样式一致,直接发送至应用服务端即可。
应用服务端调用afs验证接口(第二次),向阿里云服务器发送无痕验证请求,判断所收到的完整的data信息的风险指数。这就意味着如果第一次调用afs验证接口得到的风险结果无法直接判定通过或拦截时,需要进行二次验证并结合二次验证的结果再次调用afs验证接口来获得最终验证结果。
阿里云服务器判断验证请求的合法性并将风险结果code返回至应用服务端。
应用服务端收到验证结果,结合应用业务逻辑进行处理。
返回code为100:表示验证通过(无风险)。
返回code为900:表示二次验证失败(有风险)。
应用客户端收到最终验证结果,根据业务逻辑继续执行后续业务。
快速入门
您可以通过以下方式在业务中接入无痕验证服务:
无痕验证服务仅支持PC网页(PC端Web页面)和**H5(移动端WAP+APP)**业务类型。
登录阿里云验证码控制台,在验证码页面,选择配置管理页签。
单击新增配置。
说明:如果您已经为需要接入无痕验证的场景创建过无痕验证配置,您可以直接使用已创建的配置和接入代码。
根据您的实际业务情况,设置配置名称、高峰期QPS、使用场景、业务类型,并在验证方式项选择无痕验证。
说明:其中,高峰期QPS指您业务峰值期间的每秒页面访问次数。
单击下一步。
重要配置项一旦创建即写入线上配置,不可修改且无法删除,请您谨慎配置。
在系统代码集成&测试页面,妥善保存系统为您自动生成的前端和服务端的功能接入代码。
在您的业务前端页面和服务端中分别集成阿里云验证码提供的前端和服务端功能接入代码。
配置接入完成后,即可在您的业务中使用阿里云的人机识别技术实现验证码。
更多功能
将无痕验证服务接入业务后,您还可以使用以下功能:
自定义样式:您可以在阿里云验证码的配置管理页签,单击自定义样式,设置您喜欢的组件前端样式。
数据监控:您可以在阿里云验证码的数据监控页签,查看验证量数据等信息。