文/张妍 杨传斌
微信校园卡已于近期在各大高校正式上线。它区别于传统的校园一卡通系统,是由微信卡包推出,并联合腾讯微校提供的低门槛校园线上线下服务解决方案的一种虚拟卡[1];能够借助于微信庞大的用户基础及连接一切的能力,将是革新学校管理模式及用户生活体验的最佳载体。微信校园卡目前可实现的通用功能是身份识别、消费支付及信息查询,需要在高校完成卡片投放,学生在领卡与激活绑定身份之后方可投入使用。在给广大师生提供便利与安全保障的同时,真正实现无卡化校园生活。而微信校园卡的信息化服务被限制在本校,高校之间的合作交流却被阻隔开来。因此,为了实现跨学校的应用,需要通过跨学校的身份认证漫游系统,建立统一的身份互认机制,使得一所学校的卡在其他学校也能使用。
Enamoured(全球教育无线网络漫游联盟)致力于为全球大学和科学研究机构提供安全、免费的全球无线接入服务,参与联盟的机构成员只需使用本机构的合法账号,即可在全球已参与eduroam计划的机构内实现无线网络访问的无障碍漫游。本系统将基于eduroam无线联盟实现微信校园卡用户的漫游认证与管理,建立高校间微信校园卡的互联互通。
eduroam无线漫游认证机制
eduroam 联盟基于802.1X与 RADIUS 代理服务器架构,在实现漫游认证过程中需要经过TLR(顶级服务器)、FLR(联盟服务器)、ILR(区域服务器)以及ULR(用户服务器)与其IdP(身份提供者)、SP(服务提供者)、UID(用户身份)等部分[2]。其中FLR(联盟服务器)通常负责一个地区或一个国家的认证转发;ILR(区域服务器)负责联盟内某个区域的认证转发。IDP(Identity Provider)主要作用是向服务提供者提供用户的属性,以便使服务提供者根据其属性对其访问操作进行授权和响应;SP(Service Provider)主要作用是响应用户的访问请求,并向该用户所在的 IDP 查询用户的属性,然后根据属性作出是否通过访问的决策。
以来自于B机构访客访问A机构的无线网络为例,在此树形架构下接入漫游网络的认证过程如图1:
B机构的访客尝试向A机构提交无线漫游认证信息;A机构的SP服务器在接收到认证请求后对认证信息进行判断,向上级转发至联盟服务器FLR;用户B从联盟服务器的机构列表中找到他的源组织(IdP-B);联盟服务器把用户B重定向到位于源组织上的 IdP-B 服务器上;根据本地的规则和方法,对用户B进行认证;认证完成后IdP-B把用户B重定向到SP-A;SP-A收到用户的身份信息后,允许认证成功用户B访问A机构无线网络。
微信校园卡漫游认证机制
校园网作为微信校园卡系统系统与智慧校园应用系统集成的承载平台,可进行数据交换和共享传递。一般采取各部门级的应用子系统以VLAN 的方式接入校园网,占用局域网内的一个逻辑网段实现虚拟工作组,从而满足微信校园卡系统与智慧校园各应用系统的连接。全国高校内已经开通使用的微信校园卡将利用eduroam无线漫游认证功能建立互认机制,要求以加入eduroam 无线联盟的高校为必要前提,高校内部建立数据交换(认证代理)平台,联盟内高校用户信息(IDP集群)同步至数据交换平台内。学生在外校使用微信校园卡时,需在本校事先完成领卡及激活绑定身份的操作,确认本校已有该用户数据的记录。B校学生想要进出A校的图书馆或者在A校的食堂就餐,首要进行二维码扫码识别的步骤,A校方在接收到访问请求时,判断为非本校用户后,将认证请求同时通过已授权的微信后台转发至数据交换(认证代理)平台,平台内部的高校IDP集群收到认证请求同时对该学生信息进行判断,将用户B的身份信息定向到B校,B校在身份认证通过后,根据认证请求路径返回确认结果,扫码机通过二维码的扫描操作,完成一码通两校。
图1 eduroam无线漫游认证流程
图2 微信校园卡漫游认证流程
身份识别功能
微信校园卡的身份识别主要作用在图书馆闸机出入、门禁刷卡、自助考勤等,代替实物卡在微信APP中引入原生动态二维码机制,通过微信自身维持其稳定性和运行环境的安全性。使用过程中防止多人用一码或二维码被盗用的现象发生,每个二维码的有效时间及学工单位的入闸频次被加以限制,同时扫码的过程确保网络畅通,以便顺利通过身份认证。主要流程为用户通过手机调用微信卡券靠近扫码机,闸机在识别二维码后将18位动态数字发送至本地后台与微信服务器建立连接,解析得到对应学工号推送给闸机校验后台,后台经过认定该学工号具有入闸权限后,更新用户最新数据后入闸机具完成开闸行为。校内闸机硬件的构成兼有校园一卡通刷卡与微信二维码扫码两种设备,给予师生在申请通过闸机时拥有自由选择实物卡或手机的权利[4]。
一般情况下外校师生想要使用微信校园卡被拒绝通过的,漫游认证系统功能下高校间建立互认关系,可启动远程认证非本校用户,认证通过后则等同本校微信校园卡做身份识别类应用管理,默认为校级认证。异校入闸的基本流程在本校入闸的基础上,增加已建立互认关系的高校间用户数据交换这一重要环节。卡券后台通过接收到的二维码序号对应用户学工信息,在判断是否为本校用户,本校用户则直接通过认证返回真实code至闸机;异校用户则转发至数据交换平台,联盟内高校同时接收到认证请求,对接成功后将认证结果返回到卡券后台,再完成入闸操作。如图3所示。
消费支付功能
原生微信支付功能不受一卡通系统问题的束缚,无需担心因实物卡的丢失而造成财产上的损失,这一安全性问题成为制约移动支付在高校各个场景中推行的关键因素。基于学校统一身份认证系统与卡券服务平台之间的无缝配对,实现中也可以通过微信企业号中转,通过微信支付中引入微信校园卡接口,使得支付发起的过程中,后台能够根据用户的学工号实时获取微信校园卡状态,对用户信息加以判断[5]。消费过程中收款方在支付机器中手动输入消费总金额,用户从微信校园卡或是直接从微信钱包调出二维码支付界面,将手机靠近扫码机,完成带有身份识别功能的支付行为。
图3 微信校园卡漫游认证入闸流程
异校消费应用的实现,意味着当系统判断微信校园卡持卡人是外校人员,将不再终止支付,而是根据其他各高校对应的优惠比例,重新核算消费金额并完成消费。本校的收费标准默认为1,外校师生则需要增收5%的管理费,即消费标准变为1.05。身份认证的步骤等同于入闸过程中身份认证的环节,认证失败或无未认证卡片,则无法完成支付。如图4所示。
图4 微信校园卡漫游认证消费支付流程
微信校园卡已经顺利进入国内众多高校,并接到多所大学的上线申请。它的落地不是为了取代校园卡实体卡片,而是应对用户需求进行系统的升级与改造,进一步打通学校整体数据、提供线上服务以及提升产品体验。无卡化给师生们带来的诸多便捷,减少了丢卡的损失与补卡的麻烦;同时大大减少学校信息化的投入,无需服务器和专门的网络。微信校园卡的漫游认证系统在一码通全校的基础上实现一码通全国,本文在现有eduroam无线联盟的基础架构上,基于校方建立远程代理认证,扩大微信校园卡的应用范围,获得更全面的学生在校数据,加速高校间的信息交流与资源共享。校园无卡化的进程不是一朝一夕就能达成的,校际无障碍交流更是需要针对师生多样化的访问需求逐步实现。