1、二维码信息介绍
二维码认证的基本原理是将访客的终端信息以二维码图案的方式存储,不同的设备跳转到二维码认证页面所包含的信息是不一样的。访客用户将二维码图案给已经安全接入的用户(普通用户)扫描,该安全用户协助访客认证成功,并打开上网的通道,从而使访客可以访问网络。在此过程中,管理员无须为来访者创建用户名和密码,只需要接待访客的内部员工为来访者扫描二维码就会自动创建一个包含有接待者信息的用户名和密码,通过该用户名可以追溯到该访客是由哪位内部员工接待的,从而在减轻管理员工作的情况下,安全性也有所保障。目前SMP支持已经通过1x认证成功的用户或Web认证成功的用户、MAC地址认证成功的用户为访客扫描二维码。为了确保网络的安全性原则上不允许访客为访客进行二维码授权。
二维码界面中包含的信息如下图所示:
内部员工扫描得到的链接
链接中的参数意义:
wlanuserip:当前终端获取的IP地址;
wlanacname:AC设备的名称;
ssid:访客所关联的无线SSID名称;
nasip:NAS(本场景中NAS设备为无线控制器)的IP地址;
mac:访客所持终端的MAC地址;
t:标识一代还是二代portal认证,目前我们的二维码认证是基于二代Portal认证的,并且只支持 SMP/ESS内置 portal,因此在部署时二维码SSID必须使用二代的SMP/ESS内置Portal的方式。
2、访客二维码授权业务流程
流程说明:
第一步:访客关联到二维码认证对应的SSID
第二步:访客使用终端打开浏览器输入任意域名,AC拦截访问的URL,并自动重定向到二维码认证的portal页面,该步骤中根据终端类型的不同及访客访问权限的不同存在以下几种情况:
情况一:如果访客接入的二维码认证对应的vlan能够访问外网地址(例如可以通过DNS解析地址www.baidu.com),则:
a)、部分终端会3~5秒内自动打开浏览器显示二维码页面(例如IOS系统),进入第三步;
b)、如果不会自动弹出,则访客需要手动打开终端的浏览器访问任意一个外网地址(例如www.baidu.com),将会自动跳转到二维码页面;
情况二:如果访客接入的二维码认证SSID对应vlan无法访问外网地址,由于无法解析DNS,因此必须手动打开终端的浏览器访问一个IP地址或者输入可以解析的域名,将会跳转到二维码页面;
第三步:访客将二维码图案给内部员工进行扫描
第四步:内部员工使用扫描软件对二维码图案进行扫描,获取到该二维码图案中所含的URL信息点击认证,提交UserIP、MAC地址、NASIP到SMP中去读取访客的流水号(目的是为了创建一个访客账号,会以流水号进行命名,例如扫描者_访客_1,扫描者_访客_2,扫描者_访客_3,以此类推,次流水号即为访客的上网账号。)
备注:对于已经认证成功过的终端,在账号有效期内会以之前获取到的流水号进行认证,不会重新获取流水号,Portal进行访客流水帐号获取时,SMP服务器首先判断是否存在该用户相关帐号信息如果不存在则创建访客上网帐号,访客流水帐号的命名规则为:扫描者_访客_编号,可能大家会有一个疑问扫描者是如何确认的呢?扫描者提交的报文中不包含任何扫描者帐户的信息,只有报文中的原IP地址是与扫描者地址一致。SMP服务器创建访客流水帐号时提取扫描者发送报文的原地址,通过用户在线信息确认该扫描者对应的账户信息,从而完成访客流水帐号的创建,这是扫描者为什么需要认证且在线信息中需要包含IP地址的原因。
第五步:Portal使用获取到的访客流水号作为用户名,通过Portal协议向AC下发访客的帐号信息,无线AC收到Portal下发的访客信息后发起Radius认证(PAP方式)。
第六步:认证成功后,SMP分别向内部员工和访客反馈认证成功信息(SMP向访客终端反馈的授权成功界面由访客终端主动发起并非通过SMP服务器进行推送)。
第七步:打开访客上网通道,访客上线成功。
在上面的整个认证过程中,管理员无须为来访者创建用户名和密码,只需要接待访客的内部员工为来访者扫描二维码就会自动创建一个包含有接待者信息的用户名,可以追溯到该访客是由谁开户并接待的,从而在减轻管理员工作的情况下,安全性也有所保障。目前SMP2.61(b3)20130618支持已经通过原生1x认证成功的用户、Web认证成功的用户、MAC地址认证成功、SA认证成功的用户为访客扫描二维码,而访客是不允许给其他访客扫描二维码的,以确保网络的安全边界。
访客二维码授权可以总结为一句话:内部员工协助访客提交用户身份信息的二代Portal认证