三维身份验证

三维身份验证是基于公用云的云原生、AI模型、防Bots、多维度风控、威胁情报、溯源定位能力的创新型身份验证服务,可以在身份验证场景、活动场景、爬虫场景等用户身份交互场景处部署。可以通过轻量级的部署来有效解决撞库攻击、爬虫、弱口令、实时代理IP、小号注册、人机识别等多种身份验证威胁,同时是传统字符验证码、行为验证码、身份验证解决方案的升级替换解决方案,任何场景的威胁都可以通过三维的身份进行识别、防御和深度溯源关联

1. 前端接入文档

1.1 SDK接入:

弹出式:

http示例: http://sdk.tj.wuthreat.com/PopUpSdk_v2.js

https示例: https://sdk.tj.wuthreat.com/PopUpSdk_v2.js

嵌入式/触发式:

http示例: http://sdk.tj.wuthreat.com/TriggerEmbedSdk_v2.js

https示例: https://sdk.tj.wuthreat.com/TriggerEmbedSdk_v2.js

1.2.1 调用初始化函数---定制按钮

弹出式:


    Window.nextVerify('element', 'appKey',{
            //按钮参数配置
            'width':'320px'//宽度
            'height':'40px'//高度
            'text': '立即点击验证'//按钮文案
            'type':2//按钮类型
            'encryption': false//图片网络协议
        , ready :function (instance) {
            验证按钮初始化加载完成
        }, success:function(passtoken,utoken) {
            // 验证成功后触发该函数,进行二次验证
        }, 
    })
    

*注:如调用二次验证后,再次使用时,须手动初始化验证码方法。

触发式:

       
        Window.nextVerifymold('element', 'appKey',{
                //按钮参数配置
                'width':'320px'//宽度
                'height':'40px'//高度
                'text': '立即点击验证'//按钮文案
                'appear_type':2//验证方式
                'type':2//按钮类型
                'encryption': false//图片网络协议
            , ready :function (instance) {
                验证按钮初始化加载完成
            }, success:function(passtoken,utoken) {
                // 验证成功后触发该函数,进行二次验证
            }, 
        })
    
        

参数配置:

参数名 类型 必填 默认项 描述
element HTMLElement 容器元素或容器元素选择器。
appKey String 无胁安全平台创建验证码后得到的AppKey
width String 310px 验证按钮宽度,推荐设置宽度260px-350px,后缀为px
height String 40px 验证按钮的高度,推荐设置高度35px-65px,后缀为px
text String 立即验证 按钮上的文案
type Number 按钮类型:自有按钮为1,定制按钮为2
appear_type Number 用于区分验证类型,使用触发式或嵌入式时该参数为必填项,1为嵌入式,2为触发式,具体使用请依照示例代码
encryption Boolean 验证图片网络协议,ture为https,false为http
ready function 所有工作准备就绪,用户可以使用验证码并成功显示验证按钮时触发该回调
success function 验证码验证成功后触发回调函数,用户可以执行后续逻辑,如:直接登录或进行二次验证
1.2.2 调用初始化函数---自有按钮

弹出式:

      
        Window.nextVerify('element', 'appKey',{
                'width':'320px'
                'height':'40px'
                'type':1
                'encryption': false
            , ready :function (instance) {
                验证按钮初始化加载完成
            }, success:function(passtoken,utoken) {
                // 验证成功后触发该函数,进行二次验证
            }, 
        })
    
        

触发式:

              
        Window.nextVerifymold('element', 'appKey',{
                'width':'320px'
                'height':'40px'
                'text': '立即点击验证'
                'appear_type':2//验证方式
                'type':1
                'encryption': false
            , ready :function (instance) {
            验证按钮初始化加载完成
            }, success:function(passtoken,utoken) {
            // 验证成功后触发该函数,进行二次验证
            }
        })

        

注:参数配置请参照上方文档,只需配置width,height,type,encryption,appear_type(触发式为必填),其中width,height需与实际自定义按钮的数据一致且为必填项,使用自有按钮时,需给按钮设置相对定位属性(relative),否则不生效,详情请看下方代码示例

1.2.3 调用初始化函数(验证方式:嵌入式)---与按钮类型无关,直接嵌入在页面中

嵌入式:

  
        Window.nextVerifymold('element', 'appKey',{
            'appear_type':1//验证方式
            'encryption': false
        , ready :function (instance) {
            验证按钮初始化加载完成
        }, success:function(passtoken,utoken) {
            // 验证成功后触发该函数,进行二次验证
        }
        })
        

注:嵌入式仅支持普通验证码,不能用于智能验证码!

1.3 相关代码示例

自有按钮-弹出式(#captcha_1),定制按钮-弹出式(#captcha_2):

    
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>智能验证码示例</title> <script charset="UTF-8" type="text/javascript" src="https://sdk.tj.wuthreat.com/PopUpSdk_v2.js"></script> </head> <body> <div id="captcha_1"></div> <div id="captcha_2"></div> <style> #captcha_1{ width:320px; height:40px; position: relative; .... } </style> </body> </html> <script> Window.nextVerify('#captcha_1', 'appKey',{ 'width': '320px', 'height': '40px', 'type': 1, 'encryption': false, ready: function () { // 初始化成功后触发该函数 }, success: function (passtoken,utoken) { // 验证成功后触发该函数,进行二次验证 }, }), Window.nextVerify('#captcha_2', 'appKey',{ 'width': '320px', 'height': '40px', 'text': '立即验证', 'type': 2, 'encryption': false, ready: function () { // 初始化成功后触发该函数 }, success: function (passtoken,utoken) { // 验证成功后触发该函数,进行二次验证 }, }), </script>

自有按钮-触发式(#user_login_hover(上)),定制按钮-触发式(#user_login_hover(下)):

    
    
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>智能验证码示例</title> <script charset="UTF-8" type="text/javascript" src="https://sdk.tj.wuthreat.com/TriggerEmbedSdk_v2.js"></script> </head> <body> <div id="mold_hover"></div> <div id="user_login_hover">确认提交</div> <style> #user_login_hover{ width:320px; height:40px; .... } </style> </body> </html> <script> Window.nextVerifymold('#user_login_hover', 'appKey',{ 'width': '320px', 'height': '40px', 'type': 1, 'appear_type': 2, 'encryption': false, ready: function () { // 初始化成功后触发该函数 }, success: function (passtoken,utoken) { // 验证成功后触发该函数,进行二次验证 }, }), Window.nextVerifymold('#user_login_hover', 'appKey',{ 'width': '320px', 'height': '40px', 'text': '立即验证', 'type': 2, 'appear_type': 2, 'encryption': false, ready: function () { // 初始化成功后触发该函数 }, success: function (passtoken,utoken) { // 验证成功后触发该函数,进行二次验证 }, }), </script>

嵌入式:

    
    
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>智能验证码示例</title> <script charset="UTF-8" type="text/javascript" src="https://sdk.tj.wuthreat.com/TriggerEmbedSdk_v2.js"></script> </head> <body> <div id="mold_inner"></div> <div id="user_login_inner"></div> <style> </style> </body> </html> <script> Window.nextVerifymold('#user_login_inner', 'appKey',{ 'appear_type': 1, 'encryption': false, ready: function () { // 初始化成功后触发该函数 }, success: function (passtoken,utoken) { // 验证成功后触发该函数,进行二次验证 }, }), </script>

注:目前嵌入式与触发式的标签名只能为mold_inner,user_login_inner,mold_hover,user_login_hover,标签属性只支持id且只能按照示例代码位置去引入,后续版本将做修改,敬请期待!