秦忠苇
摘要:随着信息化的发展,信息资源与服务平台也在不断的更新换代。目前,互联网普及全面,云计算、大数据声名鹊起,信息资源与服务平台的建设效果参差不齐,大部分平台还停留在上一代。基于此,本文提出了新型信息资源与服务平台的设计。
关键词:信息資源与服务 信息系统
一、信息资源与服务平台设计概述
信息资源与服务平台核心在于完成信息资源共享,和信息资源服务。其主要特点有信息即时性,数据持久性,操作便利性,控制稳定性,服务高效性等。在项目建设时需要摒弃以往的“一体化”旧思维,将项目的各个部分分为多个层次,形成“低耦合,高内聚”,使平台的扩展性及复用性更强,灵敏度更高。可以利用云计算提升整体算力,也可以有效防止宕机事件发生。
二、信息资源与服务平台特征分析
Ⅰ.功能性
适合性:有用户文档且其中说明的软件主要功能点全部实现。
准确性:软件定位准确,响应数据准确,资源位置准确,图片、视频加载准确,资源下载准确。
互操作性:软件可以将后台用户发布信息及时展示、便于用户实时查看最新消息,能够将相关统计数据信息导出到excel,便于管理员后期使用。
安全保密性:软件通过验证用户名和密码等方式来防止非法使用,并提供用户账号控制,IP限制等安全措施。
Ⅱ.可靠性
成熟性:软件运行稳定,在长时间的运行过程中不会出现响应突然中断,或者暂停运行,以及自动停止运行的情况。
容错性:软件对用户的错误操作或者错误数据能够有效的解决并返馈给用户,用户的非正常操作不会对软件本身造成影响,软件内部异常有日志输出。
易恢复性:在软件失效情况下,可以通过重新启动软件的方式进行正常恢复。
Ⅲ.易用性
易理解性:软件界面、提示、消息、结果易于识别和理解。可点击部分会出现点击标识,可跳转部分点击即可跳转,特殊输入格式有详细说明,界面无重叠,无乱码。
易学习性:提供用户文档,对软件的功能及操作有详细的说明,复杂部分有演示。
易操作性:软件操作流程符合用户习惯,提供了选择项等辅助输入措施,对删除重要数据的操作具有提示且要求确认。
Ⅳ.维护性
易分析性:软件出错时会产生相应的提示信息,用户可以根据所得到的信息来分析实际的失效原因。
易测试性:软件不需要其他附加测试设施就可进行测试。
Ⅴ.可移植性
适应性:软件可以适应规定的软件和硬件环境。
共存性:软件运行环境与其他软件不会发生冲突,两者或多者可以独立完整的稳定的运行。
三、安全性分析
安全性问题是软件系统核心问题,此系统将从以下六点分析软件的安全性。
3.1、认证
认证采用传统的账号密码认证是不够的,为提升系统灵敏性认证加入手机验证码,邮箱验证码,微信等认证渠道,同时在逻辑上加入提交次数锁定功能,防止反复套试密码,达到次数后在一定时间范围内锁定账号禁止账号登录。认证页面给出记住功能,该功能实现在完成认证之后的一定时间内再次进入跳过认证。另外,系统还要分析用户登录IP分析常用设备,在较大幅度上更换会进行再认证。
3.2、权限隔离
管理权限拥有最高权限,可以对平台所有内容进行读写操作;角色权限,对所有角色进行增删改查;审核权限,对用户及用户行为进行管理,对资源及资源部分类容有审核修改权限;用户权限,对用户本身行为,进行修改。平台本身利用安全框架实现权限隔离,确定信息资源的最低权限,权限低于最低权限无法继续操作。
3.3、反爬虫
使用基于IP的反爬虫机制[2],后台使用拦截器,针对每一个请求,分析其IP,对于单位时间内请求次数过多,刷新次数频繁,将IP加入黑名单,对IP进行封禁。也可以在请求cookie里面设置一个key在没有携带的情况下要求请求行为首先要实现登录才可以继续访问。
3.4、防止XSS攻击
防止XSS攻击(跨站脚本攻击),需要对输入进行过滤,对输出进行编码。输入过滤是将输入信息以及URL参数进行过滤,对与每一个输入在客户端以及服务端都需要进行验证,使用字符白名单或字符黑名单过滤非法字符。对输出进行编码,是对输出到页面的内容通过HTML等编码工具,对其进行编码和转义。
3.5、防止SQL注入
后台时用持久层框架,直接使用可以很好的防止SQL注入,在一些特别之处设置字符过滤,从而防止SQL注入。
3.6、不可逆加密
不可逆加密是通过Hash算法使数据加密之后无法解密回原数据,相比于传统的加密/解密方法,不可逆加密更安全,目前可以使用MD5、SHA系列等算法,在用户填写如密码之类的重要信息时,使用SHA-× + 随机盐[1](Salt)+ 密钥对其进行Hash处理,得到Hash值,将Hash值存放在数据库,之后需要用到的视乎用相同的方法得到一个Hash值,比较两者是否相同即可。
四、设计思路
由于功能的复杂性,系统基于B/S 架构模式,采用SpringBoot 开发框架,数据库使用关系型数据库MySQL和全文检索引擎Elasticsearch 配合使用,基础数据均保存在MySQL中并使用Elasticsearch [3]对数据库进行索引和检索实现数据快速响应和大量数据存储。
系统将分为后台管理和前台展示两大部分,前台展示拥有“用户登录”、“订阅”、“通知公告”、“下载中心”、“资源导航”、“热门信息”,“服务大厅”,几大模块,各模块有细分为多个子模块,后台管理部分分为“用户管理”,“资源管理”、“信息管理”、“通知管理”、“系统管理”、“日志统计”、“信息反馈”管理所有前端页面的信息内容。
此系统将所有的信息归为一个“article”类,里面包含了标题、作者、发布时间、修改时间、发布内容、状态、浏览次数,分类,附件、缩略图等信息。发布内容使用HTML格式存储方便使用各种样式,也便于插入图片视频等内容。分类包含了所有可以出现的类型,如图片、图片组,视频、文章、通知等,前台根据不同的类型进行不同样式的展示。‘状态’是在每一篇article 显示之前必须判断的,如经过管理员审核,用户发布信息不符合平台要求对文章进行屏蔽,删除等效果。
系统还要使用缓存组件,将部分响应数据加入缓存,减缓服务器压力,同时也要做好限流,截流,和高速消息队列,以保证高并发场景下系统的稳定运行。
五、结语
信息资源与服务平台在新的互联网时代要求更高,开发者需要针对不同的需求情况设计出一种或多种解决方案,本文通过分析信息资源平台的特征和安全性,提出了设计方案,将类型多样复杂的信息资源归为一类,极大的简化了开发难度。
参考文献
[1]祝彦斌,王春玲.一种Hash特征隐藏的加盐信息摘要模型[J].计算机技术与发展,2013,23(03):134-138.
[2]张渊博.网站反爬虫策略的分析与研究[J].电子元器件与信息技术,2021,5(01):14-15.
[3]张晓峰.基于ElasticSearch的智能搜索系统设计[J].江苏通信,2021,37(03):60-61+67.