CN117596084B - 一种面向网信安全的软件持续集成系统及方法 - Google Patents

一种面向网信安全的软件持续集成系统及方法 Download PDF

Info

Publication number
CN117596084B
CN117596084B CN202410078092.9A CN202410078092A CN117596084B CN 117596084 B CN117596084 B CN 117596084B CN 202410078092 A CN202410078092 A CN 202410078092A CN 117596084 B CN117596084 B CN 117596084B
Authority
CN
China
Prior art keywords
security
code
encryption
server
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202410078092.9A
Other languages
English (en)
Other versions
CN117596084A (zh
Inventor
王东
郑婷婷
刘伟静
成晓
徐文丽
王俊德
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tianjin Aerospace Electromechanical Equipment Research Institute
Original Assignee
Tianjin Aerospace Electromechanical Equipment Research Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tianjin Aerospace Electromechanical Equipment Research Institute filed Critical Tianjin Aerospace Electromechanical Equipment Research Institute
Priority to CN202410078092.9A priority Critical patent/CN117596084B/zh
Publication of CN117596084A publication Critical patent/CN117596084A/zh
Application granted granted Critical
Publication of CN117596084B publication Critical patent/CN117596084B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/045Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供了一种面向网信安全的软件持续集成系统及方法,其中文件安全加密模块和文件安全解密模块基于三层交换机和单向安全隔离网闸,创新设计了兼容国密混合算法和二维码的加解密跨网传输方式;目标安全管理模块改进传统管控生产环境的方式,引入拼接加密秘钥和MAC地址拼接的认证因子,实现多台目标服务器的安全集中管控和权限认证。本发明有益效果:区别于常规软件系统持续化集成提高部署效率的过程,一方面实现研发内网和生产内网的“软+硬”双重安全部署,加强数据传输安全防线;一方面对目标服务器部署权限进行了统一的集中管控,另一方面提高了开发环境代码管理的安全性,保证部署过程中网络和数据的安全,适配网络可信环境。

Description

一种面向网信安全的软件持续集成系统及方法
技术领域
本发明属于计算机技术领域,尤其是涉及一种面向网信安全的软件持续集成系统及方法。
背景技术
随着软件技术的蓬勃发展,软件持续集成系统通常需要进行自动化部署,节省手动安装、打包、部署等人工操作流程。软件持续集成系统一般由github/gitlab、Jenkins等开源平台构成,在编译过程中,Jenkins从源头代码仓库github/gitlab拉取代码;在推送过程中,jenkins推送代码和配置文件给用户。传统自动化部署方式在软件部署方法中无碍,但是它的安全性低,无法满足当前网络信息安全的需求。一方面代码、配置文件在git仓库以明文形式存储,存在数据泄露风险;一方面Jenkins平台系统对部署包、配置文件保护性低,当Jenkins平台推送无保护或低保护的部署文件至用户生产环境时,黑客可随意拦截部署文件至第三方,恶意篡改文件;另一方面无法集中管控多台目标服务器的安全性,导致无权限的服务器获取部署文件,易造成信息的泄露。
发明内容
有鉴于此,本发明旨在提出一种面向网信安全的软件持续集成系统及方法,以在jenkins持续化集成提高部署效率的过程中,既能避免数据传输过程泄露的风险,又能保证部署生产环境的安全性。
为达到上述目的,本发明的技术方案是这样实现的:
一种面向网信安全的软件持续集成方法,应用于jenkins持续集成系统,包括:
在代码安全管理模块中,开发代码利用预设的代码安全提交方法上传至代码服务器,利用代码服务器存储;
在文件安全加密模块中,持续集成服务器利用预设的大文件分离方法对从代码服务器拉取的开发代码进行分离,对分离后得到的数据进行加密后,推送至生产环境,所述生产环境包括目标安全管理模块;
在目标安全管理模块中,对目标服务器的部署环境进行统一配置和管理,接收来自持续集成服务器的相关信息,进行权限判断,若权限允许,则将接收的相关信息发送至对应目标服务器;
在文件安全解密模块中,目标服务器接收到相关信息后经安全解密部署脚本对密文数据进行解密,获取相应部署包、数据库及相应配置文件。
进一步的,在代码安全管理模块中,预设的代码安全提交方法包括:
利用自定义指定需要加密的敏感代码、敏感配置文件,生成加密敏感代码、加密敏感配置文件提交合并请求。
通过静态代码检测和人工审查后,加密敏感配置文件、加密敏感代码、非加密配置文件、非加密代码和数据库提交至代码服务器。
进一步的,在代码安全管理模块中,持续集成服务器预先配置代码解密秘钥,代码解密脚本根据代码解密秘钥对加密的开发代码解密得到明文代码。
进一步的,在文件安全加密模块中,利用大文件分离方法得到jar包、数据库、配置文件,包括:
执行安全加密打包脚本进行大文件jar包分离,将jar包大文件解压后,拆分lib依赖包、业务jar包。
通过安全加密打包脚本采用国密混合算法对数据库、业务jar包、所有配置文件进行加密,以密文形式传输至生产环境目标安全管理服务器。
进一步的,利用安全加密打包脚本将目标服务器MAC地址等信息进行SM2加密后经二维码传输至生产环境目标安全管理服务器。
进一步的,利用所述安全加密打包脚本,执行:
基于SM4算法生成对称秘钥symKey1、symKey2、symKey3,并基于symKey1、symKey2、symKey3对数据库、业务jar包、所有配置文件进行加密,分别生成加密数据库symSM4SQL、加密业务jar包symSM4Jar、加密所有配置文件symSM4Config;
将对称秘钥symKey1、symKey2、symKey3进行拼接,生成symKey;
利用SM2加密symKey,生成拼接秘钥密文AsymKeyStr;
将拼接秘钥密文AsymKeyStr和目标服务器MAC地址基于SM2私钥codeSM2PrivateKey加密生成AsymKeyMACStr;
使用二维码生成器将AsymKeyMACStr和SM2公钥codeSM2PublicKey进行制作,生成相应二维码AsymKeyMACCode,推送至二维码显示屏;
将symSM4SQL、symSM4Jar、symSM4Config分批次单向推送至生产环境目标安全管理服务器。
进一步的,在目标安全管理模块中,通过目标安全管理程序对目标服务器的部署环境进行统一配置和管理,包括:
在目标安全管理程序中预先配置生产环境中目标服务器MAC地址、IP地址对应列表;
获取二维码信息,然后经公钥codeSM2PublicKey解密得到本次接收的目标服务器MAC地址和秘钥密文AsymKeyStr;
通过三层交换机和单向安全网闸传输分别接收加密数据库symSM4SQL、加密业务jar包symSM4Jar、加密所有配置文件symSM4Config、安全解密脚本;
根据目标服务器MAC地址、IP地址对应列表,查询目标服务器部署权限,若权限通过,则将加密数据库symSM4SQL、加密业务jar包symSM4Jar、加密所有配置文件symSM4Config、安全解密脚本和秘钥密文AsymKeyStr发送至相应目标服务器;若未通过,则该目标服务器不具备软件升级部署权限,本次部署失败。
进一步的,在文件安全解密模块中:
利用存储唯一私钥SM2PrivateKey.pem对秘钥密文AsymKeyStr通过SM2算法进行非对称解密,若解密失败,则该目标服务器不具备软件升级部署权限;若解密成功生成对称秘钥拼接串symKey;
对称秘钥symKey按照规则拆解,分别得到symKey1、symKey2、symKey2;
利用SM4算法通过symKey1、symKey2、symKey3分别对symSM4SQL、symSM4Jar、symSM4Config进行对称解密,得到数据库、明文业务jar包和所有配置文件。
进一步的,目标安全管理模块的目标服务器生成公私秘钥对过程包括,目标服务器基于目标安全管理程序生成唯一公私秘钥对SM2PrivateKey.pem和SM2PublicKey.pem;
私钥SM2PrivateKey.pem存储在目标服务器隐藏路径/root/.sm2con,公钥SM2PublicKey.pem导出存储在Jenkins持续集成服务器。
进一步的,本方案公开了一种电子设备,包括处理器以及与处理器通信连接,且用于存储所述处理器可执行指令的存储器,所述处理器用于执行一种面向网信安全的软件持续集成方法。
区别于常规软件持续化集成过程,本发明所述的一种面向网信安全的软件持续集成系统及方法具有以下有益效果:
在研发内网和生产内网的跨网传输环节,从软件层面上,利用“SM2、SM4国密混合算法加解密+二维码传输”方式,保证jenkins平台在传输部署文件过程防止黑客拦截进行破解;硬件层面上,利用“三层交换机+单向安全隔离网闸”来隔离研发内网和生产内网,实现硬件部署安全,保障研发内网和生产内网的“软+硬”双重安全部署的网络环境;
在生产环境环节,采用“MAC地址+SM2算法+集中管控”方式自动识别正确目标服务器,并对目标服务器统一配置管理,在一定程度上加强对部署目标的权限认证,保证了部署环境的安全性;
通过“敏感代码加密存储+静态扫描/人工走查+jar包大文件分离+启用定时自动部署任务”多技术融合方式完成自动化部署,不仅提高了代码质量,保障敏感代码存储安全,而且进一步提高了部署效率。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明提供的一种面向网信安全的软件持续集成系统及方法的模块关系图;
图2为本发明提供的一种面向网信安全的软件持续集成方法的简单流程图;
图3为本发明提供的一种面向网信安全的软件持续集成方法的加解密过程图。
具体实施方式
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
下面将参考附图并结合实施例来详细说明本发明。
本发明旨在提出一种面向网信安全的软件持续集成系统及方法,通过实现代码安全管理、部署文件加解密的持续化集成式过程,保证跨网部署的数据安全防泄露。
本发明提供一种面向网信安全的软件持续集成系统及方法,所述系统的网信安全特点在于所有开发环境和服务器均基于国产CPU、国产操作系统并安装国产杀毒软件和防火墙。开发客户端、git代码服务器、Jenkins持续集成服务器、二维码显示器运行于研发内网,扫码枪、目标服务器、目标安全管理服务器运行于生产内网,研发内网和生产内网通过三层交换机和单向安全隔离网闸策略连接,进行跨网加密传输,从硬件和系统、应用软件安全上全方位保障对内外部攻击和误操作等持续性安全防护。
下面结合具体的实施方式,对图1、图2一种面向网信安全的软件持续集成系统及方法的模块关系和简单流程图进行详细阐述。
本实施例中,基于当前网信安全的业务开发场景,以maven构建工具生成的Jar包形式实现开发服务器到目标服务器自动化部署。
所述方法的项目源代码包括多个代码分支,包括开发人员分支、主干分支、测试分支等,实施例中以主干分支进行。
所述方法包括以下步骤:
S1:开发者在开发客户端进行代码开发,执行代码安全提交方法上传至git代码服务器,保证代码的安全存储。
S1.1:所述代码安全提交方法指,开发者本地环境具备git-crypt、gpg加解密环境,应用git-crypt工具执行“gpg--gen-key”生成gpg秘钥对,私钥private.key存在开发者本地,将公钥public.key导出存至git库,通过配置文件.gitattributes自定义指定需要加密的敏感代码、敏感配置文件,生成加密敏感配置文件symConfig、加密敏感代码symCode。
S1.2:开发者将symConfig、symCode、非加密配置文件config、非加密代码code和数据库提交合并请求上传至git代码服务器目标分支。git代码服务器接收到合并请求,利用SonarScanner进行静态代码检测,若不通过,开发者根据代码扫描报告进行修改返回步骤;若检测通过,进入人工审核环节。
S1.3:合并请求至人工走查,审查者对代码的规范性、功能性、逻辑性、框架性问题进行审查,审查通过将symConfig、symCode、非加密配置文件config、非加密代码code和数据库成功提交至git代码服务器,进入下一步骤。若审查不通过,重新提交。
S2:Jenkins持续集成服务器自动拉取git代码服务器代码打包并进行大文件分离,针对分离后jar包、数据库、配置文件进行安全加密,分别推送至生产环境,如图3。
S2.1:Jenkins持续集成服务器自动完成加密代码拉取后进行打包。配置安全加密打包脚本构建后脚本,进行大文件jar包分离,将jar包大文件解压后,拆分lib依赖包、业务jar包,实现将项目中lib依赖包、业务jar包、配置文件config单独输出,并进行文件安全加密重新打包,避免jar包文件过大传输效率低的问题。
S2.2:所述安全加密打包脚本采用国密混合算法对数据库、业务jar包、所有配置文件进行加密,以密文形式传输至生产环境目标安全管理服务器。
S2.2.1:所述安全加密打包脚本采用国密对称算法SM4生成对称秘钥symKey1、symKey2、symKey3,并基于symKey1、symKey2、symKey3对数据库、业务jar包、所有配置文件进行加密,分别生成加密数据库symSM4SQL、加密业务jar包symSM4Jar、加密所有配置文件symSM4Config。
S2.2.2:所述的安全加密打包脚本,将对称秘钥symKey1、symKey2、symKey3进行拼接,生成symKey。
S2.2.3:所述的安全加密打包脚本,采用国密非对称算法SM2和公钥SM2PublicKey.pem加密symKey,生成秘钥密文拼接AsymKeyStr。
S2.2.4:所述的安全加密打包脚本,将拼接秘钥密文AsymKeyStr和目标服务器MAC地址使用SM2私钥codeSM2PrivateKey加密生成AsymKeyMACStr。
S2.2.5:所述的安全加密打包脚本,采用二维码生成器将AsymKeyMACStr和SM2公钥codeSM2PublicKey进行制作,生成相应二维码AsymKeyMACCode,推送至二维码显示屏。
S2.2.6:jenkins持续集成服务器将symSM4SQL、symSM4Jar、symSM4Config分批次单向推送至生产环境目标安全管理服务器。
S3:目标安全管理服务器通过目标安全管理程序对目标服务器的部署环境进行统一配置和管理,接收持续集成服务器二维码信息和部署包相关信息,若权限允许,则将相应信息发送至对应目标服务器。
S3.1:所述的目标安全管理程序预先配置生产环境中目标服务器MAC地址、IP地址对应列表。
S3.2:所述的目标安全管理服务器通过扫码枪扫描二维码,接收二维码信息。目标安全管理程序获取二维码信息后,经公钥codeSM2PublicKey解密得到本次接收的目标服务器MAC地址和秘钥密文AsymKeyStr。
S3.3:所述的目标安全管理服务器,通过三层交换机和单向安全网闸传输分别接收加密数据库symSM4SQL、加密业务jar包symSM4Jar、加密所有配置文件symSM4Config、安全解密脚本。
S3.4:所述的目标安全管理程序,根据目标服务器MAC地址、IP地址对应列表,查询目标服务器部署权限,若权限通过,则将加密数据库symSM4SQL、加密业务jar包symSM4Jar、加密所有配置文件symSM4Config、安全解密脚本和秘钥密文AsymKeyStr发送至相应目标服务器;若未通过,则该目标服务器不具备软件升级部署权限,本次部署失败。
S4:目标服务器接收到加密部署包等信息后经安全解密部署脚本对密文数据进行解密,获取相应部署包、数据库及相应配置文件,如图3。
S4.1:所述的安全解密部署脚本,利用存储唯一私钥SM2PrivateKey.pem对秘钥密文AsymKeyStr通过SM2算法进行非对称解密,若解密失败,则该目标服务器不具备软件升级部署权限;若解密成功生成对称秘钥拼接串symKey。
S4.2:所述的安全解密部署脚本,对称秘钥symKey按照规则拆解,分别得到symKey1、symKey2、symKey2。
S4.3:所述的安全解密部署脚本,利用SM4算法通过symKey1、symKey2、symKey3分别对symSM4SQL、symSM4Jar、symSM4Config进行对称解密,得到数据库、明文业务jar包和所有配置文件。
S4.4:所述目标服务器生成公私秘钥对过程包括,目标服务器基于目标安全管理程序生成唯一公私秘钥对SM2PrivateKey.pem和SM2PublicKey.pem。私钥SM2PrivateKey.pem存储在目标服务器隐藏路径/root/.sm2con,公钥SM2PublicKey.pem导出存储在Jenkins持续集成服务器。
S4.5:所述的目标服务器建立Linux系统定时任务,完成闲时自动执行安全解密部署脚本,自动杀掉当前软件系统关联服务,将数据库、明文业务jar包、配置文件拷贝至目标服务器相应位置后,依次重启各服务,完成软件部署升级。
所述步骤中以首次部署或数据库、业务jar包、所有配置文件均需升级的情况进行描述。若实际业务中数据库、lib依赖包、配置文件无更新,可对其标识,加密前进行判断后,仅对更新部分如业务jar包进行加密,执行步骤S2.1以后的过程。
另一方面,本发明提供了一种面向网信安全的软件持续集成系统,用于执行上述方法,包括安全加密打包脚本、安全解密部署脚本和目标安全管理程序。
所述安全加密打包脚本执行于jenkins持续集成服务器,安全解密部署脚本执行于目标服务器,目标安全管理程序执行于目标安全管理服务器。
另一方面,本发明提供了一种面向网信安全的软件持续集成的电子设备,用于为实现上述方法和系统提供运行环境,包括开发客户端、git代码服务器、Jenkins持续集成服务器、二维码显示器、扫码枪、目标服务器、目标安全管理服务器、三层交换机和单向安全隔离网闸几个部分。其中,所述服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统。
所述电子设备中开发客户端、git代码服务器、Jenkins持续集成服务器、二维码显示器运行于研发内网,扫码枪、目标服务器、目标安全管理服务器运行于生产内网,研发内网和生产内网通过三层交换机和单向安全隔离网闸策略连接,实现局域网两侧网络隔离、跨网部署。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和系统,可以通过其它的方式实现。例如,以上所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。上述单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (5)

1.一种面向网信安全的软件持续集成方法,应用于jenkins持续集成系统,其特征在于,包括:
在代码安全管理模块中,利用预设的代码安全提交方法将开发代码上传至代码服务器,利用代码服务器存储;
在文件安全加密模块中,持续集成服务器利用预设的大文件分离方法对从代码服务器拉取的开发代码进行分离,对分离后得到的数据进行加密后,推送至生产环境,所述生产环境包括目标安全管理模块,具体包括:
Jenkins持续集成服务器自动拉取git代码服务器代码打包并进行大文件分离,针对分离后jar包、数据库、配置文件进行安全加密,分别推送至生产环境:
Jenkins持续集成服务器自动完成加密代码拉取后进行打包,配置安全加密打包脚本构建后脚本,进行大文件jar包分离,将jar包大文件解压后,拆分lib依赖包、业务jar包,实现将项目中lib依赖包、业务jar包、配置文件config单独输出,并进行文件安全加密重新打包,避免jar包文件过大传输效率低的问题;
所述安全加密打包脚本采用国密混合算法对数据库、业务jar包、所有配置文件进行加密,以密文形式传输至生产环境目标安全管理服务器:
所述安全加密打包脚本采用国密对称算法SM4生成对称秘钥symKey1、symKey2、symKey3,并基于symKey1、symKey2、symKey3对数据库、业务jar包、所有配置文件进行加密,分别生成加密数据库symSM4SQL、加密业务jar包symSM4Jar、加密所有配置文件symSM4Config;
所述的安全加密打包脚本,将对称秘钥symKey1、symKey2、symKey3进行拼接,生成symKey;
所述的安全加密打包脚本,采用国密非对称算法SM2和公钥SM2PublicKey.pem加密symKey,生成秘钥密文拼接AsymKeyStr;
所述的安全加密打包脚本,将拼接秘钥密文AsymKeyStr和目标服务器MAC地址使用SM2私钥codeSM2PrivateKey加密生成AsymKeyMACStr;
所述的安全加密打包脚本,采用二维码生成器将AsymKeyMACStr和SM2公钥codeSM2PublicKey进行制作,生成相应二维码AsymKeyMACCode,推送至二维码显示屏;
jenkins持续集成服务器将symSM4SQL、symSM4Jar、symSM4Config分批次单向推送至生产环境目标安全管理服务器;
在目标安全管理模块中,对目标服务器的部署环境进行统一配置和管理,接收来自持续集成服务器的相关信息,进行权限判断,若权限允许,则将接收的相关信息发送至对应目标服务器,具体包括:
目标安全管理服务器通过目标安全管理程序对目标服务器的部署环境进行统一配置和管理,接收持续集成服务器二维码信息和部署包相关信息,若权限允许,则将相应信息发送至对应目标服务器:
所述的目标安全管理程序预先配置生产环境中目标服务器MAC地址、IP地址对应列表;
所述的目标安全管理服务器通过扫码枪扫描二维码,接收二维码信息;目标安全管理程序获取二维码信息后,经公钥codeSM2PublicKey解密得到本次接收的目标服务器MAC地址和秘钥密文AsymKeyStr;
所述的目标安全管理服务器,通过三层交换机和单向安全网闸传输分别接收加密数据库symSM4SQL、加密业务jar包symSM4Jar、加密所有配置文件symSM4Config、安全解密脚本;
所述的目标安全管理程序,根据目标服务器MAC地址、IP地址对应列表,查询目标服务器部署权限,若权限通过,则将加密数据库symSM4SQL、加密业务jar包symSM4Jar、加密所有配置文件symSM4Config、安全解密脚本和秘钥密文AsymKeyStr发送至相应目标服务器;若未通过,则该目标服务器不具备软件升级部署权限,本次部署失败;
在文件安全解密模块中,目标服务器接收到相关信息后经安全解密部署脚本对密文数据进行解密,获取相应部署包、数据库及相应配置文件。
2.根据权利要求1所述的一种面向网信安全的软件持续集成方法,其特征在于,在代码安全管理模块中,预设的代码安全提交方法包括:
利用自定义指定需要加密的敏感代码、敏感配置文件,生成加密敏感代码、加密敏感配置文件提交合并请求;
通过静态代码检测和人工审查后,加密敏感配置文件、加密敏感代码、非加密配置文件、非加密代码和数据库提交至代码服务器。
3.根据权利要求2所述的一种面向网信安全的软件持续集成方法,其特征在于,在代码安全管理模块中,持续集成服务器预先配置代码解密秘钥,代码解密脚本根据代码解密秘钥对加密的开发代码解密得到明文代码。
4.一种面向网信安全的软件持续集成系统,执行上述权利要求1-2任一所述的一种面向网信安全的软件持续集成方法,其特征在于:包括开发者访问端和用户访问端,其中开发者访问端包括代码安全管理模块和文件安全加密模块,其中用户访问端包括目标安全管理模块和文件安全解密模块。
5.一种电子设备,包括处理器以及与处理器通信连接,且用于存储所述处理器可执行指令的存储器,其特征在于:所述处理器用于执行上述权利要求1-2任一所述的一种面向网信安全的软件持续集成方法。
CN202410078092.9A 2024-01-19 2024-01-19 一种面向网信安全的软件持续集成系统及方法 Active CN117596084B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410078092.9A CN117596084B (zh) 2024-01-19 2024-01-19 一种面向网信安全的软件持续集成系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410078092.9A CN117596084B (zh) 2024-01-19 2024-01-19 一种面向网信安全的软件持续集成系统及方法

Publications (2)

Publication Number Publication Date
CN117596084A CN117596084A (zh) 2024-02-23
CN117596084B true CN117596084B (zh) 2024-04-16

Family

ID=89912007

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410078092.9A Active CN117596084B (zh) 2024-01-19 2024-01-19 一种面向网信安全的软件持续集成系统及方法

Country Status (1)

Country Link
CN (1) CN117596084B (zh)

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104468512A (zh) * 2014-10-31 2015-03-25 苏州德鲁森自动化系统有限公司 一种文件安全传输方法及装置
CN110532189A (zh) * 2019-07-18 2019-12-03 中国人民财产保险股份有限公司 一种持续集成系统、方法及装置
CN110896401A (zh) * 2019-12-05 2020-03-20 湖北信安通科技有限责任公司 基于二维码的隔离网间单向数据流传输系统及方法
CN113194081A (zh) * 2021-04-25 2021-07-30 武汉烽火信息集成技术有限公司 一种适用于物理隔离环境的单向消息传输系统及方法
CN114491641A (zh) * 2022-02-14 2022-05-13 深圳市数证通科技有限公司 一种敏感身份信息跨网应用的实现方法及系统
CN114978769A (zh) * 2022-07-19 2022-08-30 济南慧天云海信息技术有限公司 单向导入装置、方法、介质、设备
CN115033870A (zh) * 2022-06-06 2022-09-09 上海淇玥信息技术有限公司 一种基于大数据云部署的反恶意篡改代码方法和装置
CN115086287A (zh) * 2022-06-21 2022-09-20 华迪计算机集团有限公司 一种软件产品自动部署方法及系统
CN115134138A (zh) * 2022-06-27 2022-09-30 山东首瀚信息科技有限公司 一种基于单向光闸的文件同步方法
WO2022227454A1 (zh) * 2021-04-28 2022-11-03 京东方科技集团股份有限公司 持续集成自动化测试系统和方法、电子设备、存储介质
CN115314323A (zh) * 2022-10-10 2022-11-08 深圳市华云中盛科技股份有限公司 一种信息传输方法和系统
CN115618405A (zh) * 2022-09-29 2023-01-17 福建正孚软件有限公司 一种Jar文件保护方法及Jar程序运行方法
CN116186716A (zh) * 2023-03-03 2023-05-30 浙江大学 一种面向持续集成部署的安全分析方法及装置
CN116668434A (zh) * 2023-07-14 2023-08-29 中国人民解放军国防科技大学 基于单向跨网数据传输的数字校园服务系统

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104468512A (zh) * 2014-10-31 2015-03-25 苏州德鲁森自动化系统有限公司 一种文件安全传输方法及装置
CN110532189A (zh) * 2019-07-18 2019-12-03 中国人民财产保险股份有限公司 一种持续集成系统、方法及装置
CN110896401A (zh) * 2019-12-05 2020-03-20 湖北信安通科技有限责任公司 基于二维码的隔离网间单向数据流传输系统及方法
CN113194081A (zh) * 2021-04-25 2021-07-30 武汉烽火信息集成技术有限公司 一种适用于物理隔离环境的单向消息传输系统及方法
WO2022227454A1 (zh) * 2021-04-28 2022-11-03 京东方科技集团股份有限公司 持续集成自动化测试系统和方法、电子设备、存储介质
CN114491641A (zh) * 2022-02-14 2022-05-13 深圳市数证通科技有限公司 一种敏感身份信息跨网应用的实现方法及系统
CN115033870A (zh) * 2022-06-06 2022-09-09 上海淇玥信息技术有限公司 一种基于大数据云部署的反恶意篡改代码方法和装置
CN115086287A (zh) * 2022-06-21 2022-09-20 华迪计算机集团有限公司 一种软件产品自动部署方法及系统
CN115134138A (zh) * 2022-06-27 2022-09-30 山东首瀚信息科技有限公司 一种基于单向光闸的文件同步方法
CN114978769A (zh) * 2022-07-19 2022-08-30 济南慧天云海信息技术有限公司 单向导入装置、方法、介质、设备
CN115618405A (zh) * 2022-09-29 2023-01-17 福建正孚软件有限公司 一种Jar文件保护方法及Jar程序运行方法
CN115314323A (zh) * 2022-10-10 2022-11-08 深圳市华云中盛科技股份有限公司 一种信息传输方法和系统
CN116186716A (zh) * 2023-03-03 2023-05-30 浙江大学 一种面向持续集成部署的安全分析方法及装置
CN116668434A (zh) * 2023-07-14 2023-08-29 中国人民解放军国防科技大学 基于单向跨网数据传输的数字校园服务系统

Also Published As

Publication number Publication date
CN117596084A (zh) 2024-02-23

Similar Documents

Publication Publication Date Title
WO2022206349A1 (zh) 一种信息验证的方法、相关装置、设备以及存储介质
US10778659B2 (en) System and method for protecting communications
US8447970B2 (en) Securing out-of-band messages
US8745394B1 (en) Methods and systems for secure electronic communication
US11303431B2 (en) Method and system for performing SSL handshake
US10075439B1 (en) Programmable format for securely configuring remote devices
US10284374B2 (en) Code signing system with machine to machine interaction
CN105027493A (zh) 安全移动应用连接总线
CN112333158B (zh) 一种基于区块链一体机的隐私保护方法及系统
US10586065B2 (en) Method for secure data management in a computer network
CN104065485A (zh) 电网调度移动平台安全保障管控方法
CN114584306B (zh) 一种数据处理方法和相关装置
KR20210015264A (ko) 화이트박스 암호화를 이용한 puf 기반 사물인터넷 디바이스 인증 장치 및 방법
CN112202713A (zh) 一种Kubernetes环境下用户数据安全保护方法
US9825920B1 (en) Systems and methods for multi-function and multi-purpose cryptography
KR101213301B1 (ko) 다운로더블 제한 수신 시스템에서의 재인증 처리 장치 및 방법
KR20180138349A (ko) 동적 세션키 생성을 위한 사물인터넷 단말 장치 및 동적 세션키 생성 방법
CN117596084B (zh) 一种面向网信安全的软件持续集成系统及方法
US10992741B2 (en) System and method for providing a configuration file to client devices
CN111914270A (zh) 基于区块链技术的可编程认证服务方法和系统
US20210258306A1 (en) System and Method for Providing a Configuration File to Client Devices
US9178855B1 (en) Systems and methods for multi-function and multi-purpose cryptography
Bojanova et al. Cryptography classes in bugs framework (BF): Encryption bugs (ENC), verification bugs (VRF), and key management bugs (KMN)
US9189638B1 (en) Systems and methods for multi-function and multi-purpose cryptography
CN115801252B (zh) 一种结合量子加密技术的安全云桌面系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant