一、Wifidog认证协议
· Wifidog认证
Wifidog认证是二代WEB认证协议,使用HTTP协议作为传输协议,支持无线精准营销功能,支持短信密码认证/固定账号认证/微信链接认证,不支持微信关注认证。
Wifidog认证是在开源的Wifidog协议的基础上进行改良,以符合锐捷无线精准营销方案的一种认证方式。
· Wifidog认证协议交互流程
协议交互流程如下:
1) WiFi终端上网访问请求。
2) AP设备将访问http请求重定向到portal服务器。
3) WiFi终端请求portal认证页面。
4) Portal服务器返回portal认证页面。
5) WiFi终端提交用户名、密码,发起认证请求。
6) Portal服务器返回认证结果:成功,则带token返回并重定向到AP设备, 失败,则重新重定向到portal上进行认证。
7) WiFi终端带token重定向到AP设备,注意这里访问的IP是设备的WAN口的IP。
8) 在设备收到WiFi终端的token验证请求后,请求portal验证token。
9) Portal服务器返回token的验证结果。需要注意的是,portal响应可支持两种格式类型:
a. Wifidog的Auth:1/0标志,用于表示认证是否成功。
b. 自定义的扩展格式,为JSON字符串。除了可以表示认证是否成功外,还可以传输额外的参数给设备。
10) 如果验证结果表示认证成功,则:
a. 放行WiFi终端访问,并重定向到portal认证结果页。
b. WiFi终端请求认证结果页。
c. Portal服务器返回认证成功的页面,流程结束。
11) 如果验证结果表示认证失败,则:
a. 重定向到portal认证结果页。
b. WiFi终端请求认证结果页。
c. Portal服务器返回认证失败的页面,流程结束。
12) 当AP设备判断到终端满足下线要求时(比如零流量检测机制中判断终端在一定时间内小于流量阀值),AP通告portal用户下线。
13) portal服务器将该用户下线并返回通知响应,流程结束。
· Wifidog认证协议优缺点分析
优点
1) 基于开源的wifidog认证协议的基础上进行改造,适合与第三方平台对接(第三方portal不用实现复杂的TR069协议)。
2) 采用token的安全认证方式,由服务器验证token的有效性。
缺点
1) 不支持基于wifidog的微信认证和APP认证。