李 凯,毛文卉,张裕娇,丁 玲
(1.华中科技大学 网络与计算中心,湖北 武汉 430074;2.华中科技大学 同济医学院附属协和医院,湖北 武汉 430022;3.多伦多大学 信息学院,M5S3G6)
目前,很多高校没有对教师个人主页进行统一建设,教师没有渠道展示自己的学术成果,以致公众对学校的师资力量和教师的教学科研实力没有明确的认识,不利于学校的宣传和教师的招生,通过建设教师个人主页系统可以对教师个人学术形象、学校国际形象与实力进行展示。[1]部分教师自行建设个人网站,这些分散建设的网站,出入口很多,每个网站的安全设置各不相同,安全标准不统一,存在很大的安全隐患,一旦出现安全事故,对教师本人和学校的声誉会产生极坏的影响。[2]高校教师个人网站建设存在重建设轻管理的现象,很多教师建设自己网站时很积极,但建设网站的队伍参差不齐,有的选择由专业公司来开发建设,也有许多网站是实习的学生团队开发的,网站上线没有经过严格的安全漏洞扫描等检测。而且,网站建成后疏于管理,内容更新慢,一些网站在完成其阶段性任务后,即被弃之不管,长时间作为“僵尸网站”存在。[3]在此前提背景下,华中科技大学遵照“统一规划、统一建设、分级管理、各负其责”的原则,基于B/S结构建设教师个人主页系统。
学校教师个人主页系统采用B/S结构,其访问客户端是标准的浏览器,服务器是标准的Web服务器,系统的维护工作主要集中在服务器上,有效地节约了开发时间、提高了开发效率。[4]系统采用J2EE体系架构即在J2EE分布式架构基础上结合学校业务应用特点进行应用框架的设计。[5]通过WebServices技术对异构系统中的数据、信息进行读取和发布。[6]此系统对学校教师提供应用服务,系统设计框架如表1所示。系统由服务层、应用层、数据层组成。
表1 系统设计框架
(1)数据层主要由学校基础数据库提供的人事基础数据、科研数据等组成。数据层除了存储数据之外,还提供了数据交换、数据整合、数据重复利用等功能,可以让数据真正“活”起来,不仅能够实现业务系统之间的数据交换、互通共享,还能够实现系统内部对数据的精细化统计。数据流逻辑如图1所示。
(2)应用层把系统分为系统管理、教师主页管理和院系管理三个模块,同时提供3个入口,供不同身份权限的用户访问;应用层负责对系统数据业务的逻辑处理工作。系统为学校提供所有教师个人主页的模板管理、基础数据管理、多语种管理等,还具备教师管理、院系设置、系统配置、数据接口等功能,可实现学校对全校教师的统一管理、资源整合,并能使全校教师个人主页的展示规范化。
图1 数据流逻辑图
(3)服务层针对教职员工和管理员,通过统一身份认证进行登录与维护。
本系统选取PostgreSQL数据库管理数据,PostgreSQL是事务安全性数据库,完整地支持外键、联合、视图、触发器和存储过程(并支持多种语言开发存储过程),这些在开发系统的过程中是不可或缺的。PostgreSQL相比较更容易迁移到Oracle、Sybase或者MYSQL等商业数据库。[7]本系统数据库模型如图2所示,主要涉及7张数据表。
(1)主页信息表:tshomepage
主要记录了当前主页使用的模版编号、主页的名称、主页的开通状态、主页banner、版权等基本信息。
(2)主页日志表:tshomepagelog
主要记录了教师在本业务系统中的操作,其中包含当前操作人账号、操作人名称、操作类型、操作详情、操作时间等日志基本数据。
(3)教师信息表:tsteacher
指主要任职、团队、荣誉称号、论文成果等信息都是通过主页信息表ID进行关联。
(4)主页管理员表:tspageadmin
记录当前主页的管理员,同时对一般用户、普通管理员、高级管理员进行分类。
(5)主页文件记录表:tsteafile
记录当前主页所有的上传文件,比如Word文档、PDF文档、图片等。
(6)模版包表:tshptemplate
记录系统所有可以供教师选择的页面模版。
(7)主页栏目表:tsteatree
记录当前主页上的默认栏目以及自定义栏目。
图2 数据库模型图
教师个人主页系统为教师提供个人信息管理、内容管理、栏目管理3个功能模块;为管理员提供模板管理、审核管理、教师管理、数据管理、系统配置5个功能模块。功能模块如图3所示。
图3 功能模块图
个人信息模块包含个人简介、研究方向、招生学科、教育经历的填报;内容管理模块包含论文、专利、著作、科研项目的填报;这两个模块均采用FORM表单形式收集数据审核后在前端页面进行展示。信息采集模块如图4所示。
图4 信息采集模块图
模板管理模块是对教师制作网站的模板进行管理。系统提供7套中文模板和7套英文模板供教师使用。所有模板采用响应式设计,只需要设计和开发一个站点,就能够在各种不同分辨率的电脑和移动设备端实现自适应显示,即一个站点可以同时在PC端和手机端运行。[8]
审核模块分两个部分:
(1)教师开通状态审核。只有教师开通状态审核通过其对应主页才能对外访问,否则只能在后台进行预览。
(2)教师提交信息审核。教师通过个人信息与内容管理模块提交的数据都需要经过人工审核后才能对外发布。具体审核模块流程如图5所示。
图5 审核流程图
教师管理模块是对系统中所有教师进行集中管理,主要功能是对教师进行删除、禁用、推荐以及模拟登录。其中模拟登录是指管理员模仿教师身份访问该教师主页以及后台,当某位教师主页出现问题时方便管理员维护与定位出错点。推荐功能利用主页信息表中的推荐字段进行运作,当管理员对某位教工设置推荐,其数据库中推荐字段值就会置1,那么该教工主页会推荐到综合门户首页进行展示。
华中科技大学教师个人主页系统安全防护从网络层到应用层均设置安全等级与策略,以充分保障系统内教师主页站点的信息安全,在网络层将WAF安全设备串行部署于Web服务器前端,采取主动防御方式,通过介入HTTP对教师个人主页系统服务器集群进行保护和监控。[9]在应用层主要通过以下手段进行防御:
(1)访问控制:采用ACL访问控制对IP地址进行过滤,通过因特网协议和传输控制协议来完成过滤和分类控制。[10]
(2)账号安全:账户与统一身份认证系统对接保证了账号的安全性,即每位教师只能通过统一身份认证账号进入系统,维护其主页信息。
(3)文件安全:对于危险文件以及可执行文件禁止上传至管理后台。
(4)数据安全:对数据表、列的权限控制只有超级管理员才能操作,针对各个单位授权的院系管理员均没有操作数据库的权限,以降低操作数据库带来的风险。
(5)运维监控:对教师个人主页系统硬件资源进行实时监控,对用户的操作进行跟踪;对站群内站点提供可用性分析和性能分析,全面掌握站点性能和运维情况。
(6)日志记录:记录操作日志、防护日志,对于出问题站点可以做到有日志可查,进行问题的定位与排查。
(7)敏感信息屏蔽:利用正则表达式进行字符串的匹配、搜索、提取,对敏感字进行过滤,有效提高信息安全。[11]
(8)备份/恢复:系统自带备份/恢复功能,可对站群系统中的数据及应用进行备份,以便在系统遭遇如计算机犯罪、计算机病毒、掉电、硬件/软件错误和人为操作错误等安全隐患时,可以迅速恢复正常运行。
教师个人主页系统上线后,承载全校教师展示个人信息的窗口,相当于一个教师对应一个站点,因此其稳定性、可靠性及安全性十分重要。为提高教师个人主页系统的可靠性,保证其服务效率,发布、管理、运行应分配3套独立的服务器,建议服务器运行在虚拟化平台上,方便资源的添加与管理,同时应部署备份服务器,对所有教师主页网站进行增量同步备份,保证系统的稳定性。教师个人主页系统的服务器部署如图6所示。
图6 服务部署示意图
教师个人主页系统部署分为三个区域:
(1)Web 区域
Web区域的服务器主要功能是提供面向网站用户访问网站的服务。为保障其服务的可靠性和访问速度,避免单点失效的出现应以集群方式部署多台Web服务器(至少应部署两台)。[12]教师主页所有站点的域名均解析到负载均衡器 (建议使用硬件负载均衡器F5、A10等),即先将请求发送到负载均衡器VIP,然后由负载均衡器将请求分发给Web区域的服务器集群。
(2)应用区域
应用区域的服务器包括一台管理机和一台管理备份机,管理机与管理备份机均可以负责教师个人主页系统后台相关业务的运行(网站信息的增删改查、采集、备份、发布等任务),以及网站前台动态内容的编译和解析。两台服务器构建成主备模式,有效提高设备可靠性,用一台机器做主机,另外一台做备机,当主机故障时,备机自动成为主机继续运行,从而保证业务不中断。[13]保证两台服务器的网站数据一致,应使用NAS存储,存放网站数据目录。
(3)数据库及备份区域
数据库及备份区域主要包括数据库服务器和备份系统。数据库服务器用于存放教师主页相关的所有数据表。本系统采用Rsync方式进行备份,使用“rsync演算法”来使本地和远程两个主机之间的文件达到同步。[14]通过Rsync同步工具定时 (每天凌晨6点),Rsync远程备份机从管理平台服务器同步一次数据到本地。
本文从系统功能模块设计到部署,介绍了教师个人主页系统的设计与实现。系统构建基于B/S结构,前端采用响应式设计,后端采用J2EE架构,数据备份采用rsync工具。随着信息技术发展以及日益增长的教师对个人主页建设的新需求,教师个人主页系统必将在高校信息化中发挥越来越重要的作用。