首页 > 编程知识 正文

论信息系统项目的整体管理(论信息系统的安全性与保密性设计)

时间:2023-05-04 05:08:09 阅读:121524 作者:3515

声明:本论文是我在软件测试系统架构师应试学习过程中写的,并不能保证内容的原创性和正确性。 请作为参考。 请不要照搬或使用学术论文等正规场合。 因使用不当而产生的结果一律自负。

摘要2019年3月,我公司与一所高中合作开发了《程序在线评测比赛考试系统》。 系统以程序代码在线提交自动评价功能为核心,分为题库模块、评价机模块、实验工作模块、考试模块、比赛模块、模仿判断模块、用户管理模块等,进入教务平台在项目中负责系统架构师,负责体系结构设计。

本文从网络硬件层、数据层、APP应用层三个方面论述了该系统的安全性和保密性问题,以及所采用的技术手段和解决方案。 在网络层设置硬件防火墙,解决病毒木马和外部攻击隐患数据层设置数据加密和容灾机制,解决数据泄漏风险; 该APP应用层统一采用RBAC授权机制等方案,解决了越权操作的隐患,提高了全系统风险和安全保密能力。 最终系统顺利上线,得到了用户的好评。

本文就职于一家为高校建设计算机专业智能教育一体化平台的公司,历史成果有《计算机组成原理仿真实验系统》等。 2019年3月,我公司与某高校联合开发了《程序在线评测比赛考试系统》项目(以下简称“OJ系统”),以取代传统编程上的机械试验平台。

系统以程序代码在线提交自动评价功能为核心,主要分为题库模块、评价机模块、实验工作模块、考试模块、比赛模块、模仿判断模块、用户管理模块等。 题库模块主要负责问题和测试用例的管理,用户根据问题要求编写程序代码并提交给系统,系统将测试用例和程序代码发送到评估机模块,评估机自动编译、运行、判断,并对结果进行实验工作模块用于在线安排工作,从题库中选择问题,设置截止日期等要求; 考试模块用于学生在线考试,教师根据预设参数自动从题库中随机抽取问题生成试卷,并将考试成绩上传教务平台的比赛模块主要用于ACM竞赛训练; 模仿判定模块用于判定与他人代码的雷同率; 用户管理模块负责用户信息的管理。 在这个项目中,我担任系统架构师的职务,主要负责与系统体系结构设计相关的工作。

OJ系统中存储了大量的学生成绩、学生选课数据、问题数据等重要信息,确保系统的安全性和保密性尤为重要。 系统在安全和隐私方面主要面临以下问题:病毒木马、外部攻击等网络安全隐患,缺乏积极的网络安全防御机制。 数据库安全隐患(如数据库访问控制不严格、敏感数据以明文形式存储、未制定灾难恢复计划等)容易导致系统数据的泄漏、丢失和篡改。 适用权限管理混乱、权限设定不完备等安全隐患,容易发生人为操作导致的数据错误和丢失,威胁系统的信息安全。

如果在未加密的情况下传输敏感数据,入侵者可以使用网络嗅探工具获取用户的帐户和密码。 由于业务逻辑不确定用户提交的数据的有效性,过滤也不严格,攻击者在预定义查询语句的末尾注入额外的SQL语句,以便在管理员不知不觉中实现非法操作,或者欺骗服务器执行非法的任意查询

因此,我们在网络硬件层、数据层、APP应用层三个方面进行了充分的设计,以提高系统的安全性和保密性。 通过在网络硬件层设置硬件防火墙、在数据层设置数据加密和容灾机制、APP应用层统一采用RBAC认证机制等方案,提高了全系统的抗风险和安全能力。

1 .网络硬件层安全方案网络和硬件是全系统运行的基础,也是许多外部攻击的主要渠道,因此OJ系统需要在这方面进行严密合理的规划。 为了解决病毒木马和外部攻击的危险性,我们将网络拓扑分为外部网络、内部网络和DMZ三个部分。 在外部网络和内部网络之间安装硬件防火墙,主要防止外部的恶意攻击。 防火墙后,为了增强病毒、木马的入侵防范效果,设置了硬件防病毒墙,可以实时拦截和清除符合最新特征库的病毒、木马。 为了防止校外访问者通过DNS服务器直接访问APP应用服务器的目标地址,向校内网添加反向代理服务器,仅使代理服务器的虚拟IP暴露于外,进一步降低APP应用服务器被攻击的可能性APP应用服务器与数据库服务器物理隔离,内部人员也无法直接从IP访问。 它只需由服务器管理员从Barget计算机上进行操作,即可阻止外部通过内部客户端代理访问对服务器的攻击。 几个核心的FTP服务器、DNS服务器和Web服务器都计划在DMZ上。

2 .数据层安全方案数据是全平台业务运营的核心,其中包含大量学生成绩、问题数据等重要信息,安全不容忽视。 为了解决数据泄露、数据丢失的风险,系统主要从数据存储、数据访问和数据灾难几个方面进行了修订。 系统中主要存储的考试问题和学生成绩数据对机密性要求较高,为了防止泄露,在存储时进行了加密处理。 在处理过程中性能会下降,但会提高数据的安全性和机密性。 系统的数据库软件采用Oracle作为后台存储,该公司的业务声誉非常好,有力地保证了数据存储的安全。 为了防止数据信息泄露,增强了访问权限限制,对数据库的访问权限按照数据库、表、索引、记录的添加、删除、调查、改进等角色进行了细分,非法用户可以通过数据此外,数据库本身也制定了基于总量、增量和差异的每周备份计划,以便随时及时恢复数据。 物理存储也进行了本地多个机房的灾难恢复,以确保数据针对突发风险的安全。

3.APP应用层安全方案由于OJ系统采用MVVM前后的隔离结构,通过rest风格的WebAPI进行通信,在用户认证、接口传输等方面进行了充分的设计。 用户认证者

面,因系统用户涉及多种类型,如学生、授课教师、课程组、参赛选手、举办方、系统管理员等,统一采用RBAC授权机制,既可增强系统安全性,满足业务需求,也可减轻权限信息维护的负担。在登录界面上,不仅需要提供用户名+口令,同时设置了验证码和动态口令,通过手机或邮箱接收,杜绝非法破解口令登录,保证整个系统认证环节安全。密码提交和存储过程中,一律通过MD5+SHA256+随机SALT哈希加密,即使被拖库也不会泄露密码。接口设计是整个系统通信的安全保障,为防止外部人员恶意调用与窃取信息,使用了https传输协议和令牌机制,保障每次通讯传输安全。即在登录后,通过加密传输的用户信息和时间戳获取到token令牌,在后续每次通讯过程中,服务器端都会校验token,充分保障接口调用安全。在对数据库进行增删查改调用时,统一使用带预处理功能的ORM中间件实现操作,可过滤SQL注入攻击,防止对数据库执行非授权的任意查询。

总结

  系统自2019年10月正式上线后,已运行一年有余,在学校的日常教学考试和竞赛培训中投入使用,截至目前已有3000以上的学生用户、评测了70000条以上的程序代码,获得了单位同事领导和学校教师们的一致好评。在任何情况下使用系统,基本没有信息泄露的情况发生。但在使用过程中一些用户反映,手机端操作编辑题目与保存成绩有时会需要等待,我们分析发现该问题是因为编辑题目信息与保存成绩涉及数据量较大,且手机硬件运行效率比PC低,导致前端加密传输更加耗时,通过优化数据结构、减少数据传输量、选择效率更高的加密算法等方法改善了这个问题。
  实践证明,OJ系统项目能够顺利上线,并且稳定运行,保障了信息安全,与系统在安全性和保密性方面的设计密不可分。系统安全是一个永久的话题,我们对系统安全性的完善是一个持续、迭代的过程,在未来还会不断地完善本系统安全方面的设计,改善缺陷与不足,使整个OJ系统能够更加好用,更有效地服务于高校师生。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。