• 收藏
  • 加入书签
添加成功
收藏成功
分享

统一开发平台功能设计研究

王东东 陈志军 张振京
  
安家(建筑与工程)
2022年17期
中国铁路设计集团有限公司信息化设计研究院 天津 300251

摘要:随着交通强国和网络强国战略实施,新型互联网技术得到了飞速发展,铁路信息化技术在工程设计中的应用也愈加广泛。大量建设的信息化系统已经成为各行业众多企业的关键基础设施,国家和社会对网络的依赖程度也越来越大,同时也产生了包括安全在内的很多问题。为了满足铁路工程设计领域中各专业设计软件研发需要,保障软件研发安全,本文基于以上需求,提出一种集成云端软件开发测试环境、安全检测、信息系统管理于一体的统一开发环境搭建的研究,提供了完整的开发测试工具,保障企业在开展自主软件研发测试、信息系统项目管理中提高工作效率,保障软件质量安全。

关键词:统一开发,云计算,安全检测

引言:

当前国外开发测试云环境,主要为基于web的集成开发测试代码编译环境,如web端的VSCode、Eclipse等。相较于传统开发环境无需开发人员进行安装配置,即可在统一的开发平台中开展工作,但对于开发过程中的代码跟踪,文档、项目等信息变化,并没有提供集成的协同方案,平台私有化部署成本较高,开发工具性能效率降低。

国内云开发环境整体分两种类型,一种是以web应用为基础,基于微服务架构,提供基础数据和流程引擎业务的开发平台,适用于研发管理类和流程表单类信息化系统软件。另一种是PaaS或VDI桌面环境,开发者仍然需要自己搭建基础工具套装,同时还要考虑工具的正版化问题。

当前国内外开发平台的建设,并没有统一为开发人员提供可用于不同开发语言、开发环境、测试环境、代码管理、安全检测等功能进行全面支持的统一开发测试平台。更多的是支持各自生态产品的功能模块进行的集成开发或二次定制开发,降低了系统开发的自由度,缩小了产品应用部署范围。

1. 总体架构

通过对主流开发路线的调研和分析,统一开发测试平台在云端部署的总体架构中,应包含云端基础资源,公共组件、插件,开发环境、系统测试、平台服务、代码管理、持续集成、统一门户等内容。

1.1 Portal/门户

统一开发平台对外展示的方式是建立一个统一对外提供服务的门户界面,该门户界面中应面向使用统一开发测试平台的用户提供开发资源申请,测试资源申请,代码管理资源申请,统一开发、测试、部署标准规范体系,平台资源整体使用情况大屏分析,用户资源占用活跃度等监控分析在内的四部分的功能。

1.2 云端基础资源

云端基础资源包括了云端服务器、网络、安全、存储等相关硬件设备及配套软件,同时还包括了对计算、存储、网络的虚拟化资源以及对云端资源统一管理的云管资源。云端基础资源环境是统一开发测试平台的硬件基础环境,它负责提供统一开发、测试各环节的软、硬件外部条件。统一开发测试平台在建设实施过程中将充分利用既有的铁设云云管平台,对开发平台的硬件资源进行统一虚拟化管理和分配,为自主软件的云端研发提供技术支持。

1.3 安全架构

对于应用系统全生命周期过程的安全管理,至少应包含应用系统功能本身的安全防护措施、平台搭建部署的服务器操作系统安全控制措施、物理硬件设备及网络安全防护措施和数据灾备与应急恢复措施四个方面的内容。在软件开发测试阶段,包含开发测试的应用系统功能本身的安全防护,从这个角度出发,安全架构应由开发安全和测试安全组成。

1.3.1 开发安全

统一开发测试平台提供了安全可靠的独立开发环境,统一的开发工具、中间件和数据库,按权限分配的代码版本管理,保障自研软件的开发环境安全,同时提供了统一标准的开发规范,指导开发人员在平台中按规范标准开展开发工作。

除系统开发的外部环境安全外,对于各软件本身开发的功能来说,还需要从软件系统的访问控制、账户角色的权限管理、操作日志审计和数据传输过程的加密四个方面保障系统功能本身的安全性。

1.3.2 测试安全

对于开发完成的软件,在平台中除提供统一的安全测试资源环境外,还提供对应的安全测试服务,主要从四个方面进行安全性测试,分别为测试计划阶段的安全风险检测、开发代码的缺陷检测和审计、测试过程及测试结果中进行的安全性测试和应用后反馈的安全风险及定期漏洞扫描。

2功能设计

(1)资源申请

按照软件类型,开发所需工具,开发依赖的设计应用及版本,开发中间件、数据库使用情况,对外提供服务的方式和使用方式等因素,制定相应的标准要求,在申请开发测试平台环境中,提供符合需求和标准的资源环境。

(2)代码统一管理

在统一开发测试平台上传和开发软件所使用代码,通过平台代码分权限管理,保障代码与文档资料实现相同的安全管理,开发人员可自主控制开发代码的可见性与使用范围。

(3)代码安全审计

统一开发测试平台提供代码审计工具,项目管理人员可通过代码审计工具实时查看和评审开发代码,对代码进行管控。

(4)代码缺陷检测服务

在统一开发测试平台完成开发工作后,平台提供代码缺陷检测服务,检查开发代码中可能存在的SQL注入、跨站脚本攻击等代码问题。

(5)开发安全性标准规范

统一开发测试平台针对软件开发提供开发标准规范,使在平台中开发的软件,按照标准开展开发工作,避免因标准环节缺失造成软件存在的安全风险。

(6)统一安全性软件测试服务

在应用软件系统部署前,提供标准的软件安全性测试服务,对软件的信息泄露风险进行测试,并提供软件测试报告,协助软件研发人员对软件进行安全性改造,使通过测试的软件符合上线部署要求。

(7)集成管理

平台提供持续集成工具,用于监控持续重复的工作,满足软件系统的自动化构建、测试和部署工作,快速发现集成问题、减少集成错误,释放开发人员工作效率。

(8)部署管理

按照平台安全服务检测结果,满足要求的研发软件即可在统一portal申请部署资源,将打包好的应用进行部署和发布。

(内部资助课题编号:2021A241104)

*本文暂不支持打印功能

monitor