Nothing Special   »   [go: up one dir, main page]

CN111552698B - 一种解决环境差异的sql版本控制系统及方法 - Google Patents

一种解决环境差异的sql版本控制系统及方法 Download PDF

Info

Publication number
CN111552698B
CN111552698B CN202010317868.XA CN202010317868A CN111552698B CN 111552698 B CN111552698 B CN 111552698B CN 202010317868 A CN202010317868 A CN 202010317868A CN 111552698 B CN111552698 B CN 111552698B
Authority
CN
China
Prior art keywords
sql
information
test
module
execution
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
CN202010317868.XA
Other languages
English (en)
Other versions
CN111552698A (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.)
Chongqing Fumin Bank Co Ltd
Original Assignee
Chongqing Fumin Bank Co Ltd
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 Chongqing Fumin Bank Co Ltd filed Critical Chongqing Fumin Bank Co Ltd
Priority to CN202010317868.XA priority Critical patent/CN111552698B/zh
Publication of CN111552698A publication Critical patent/CN111552698A/zh
Application granted granted Critical
Publication of CN111552698B publication Critical patent/CN111552698B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • 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/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及数据库安全技术领域,具体为一种解决环境差异的SQL版本控制系统及方法,该系统包括测试子系统和生产子系统,所述测试子系统用于对输入的SQL信息进行测试,并在测试通过时对SQL信息进行加密;所述生产子系统用于判断输入的SQL信息是否为加密后的SQL信息,若是,则执行SQL信息。采用本方案以解决现有技术中无法保证生产环境下所执行的SQL信息是经过测试,且测试后未被篡改的技术问题,能够有效的避免因执行输入的SQL信息导致数据库信息泄漏、崩溃等情况的发生,对执行SQL信息的风险进行有效的控制。

Description

一种解决环境差异的SQL版本控制系统及方法
技术领域
本发明涉及数据库安全技术领域,具体为一种解决环境差异的SQL版本控制系统及方法。
背景技术
随着信息技术的发展,数据库的作用也显得越发重要,而如何保护数据库中信息的安全,一直是人们所关注的问题。在数据库的工作过程中,需要经常对数据库进行数据的存取、查询、更新和管理等操作,而这一切都是通过执行SQL语句所实现的。通常情况下,执行SQL语句前需对SQL语句进行测试,例如,在开发环境或测试环境下,对SQL语句进行语法检查、内容检查,并在检查通过后将SQL语句提供给DBA进行执行,若成功执行,则认为该SQL语句测试合格。随后由开发人员将测试合格的SQL语句输入生产环境中进行执行,但是由于生产环境中无法判断输入的SQL语句是否是经过测试的,其安全性完全由提交SQL语句的开发人员保证,这就导致在生产环境下执行SQL语句的风险变得不可控,可能会出现数据库信息泄漏、崩溃等严重后果。
为了确保生产环境下执行的SQL语句是经过测试的,现有技术中对经过测试的SQL语句进行标记,在生产环境中通过标记对SQL语句进行区分,仅执行存在标记的SQL语句,由此确保生产环境下所执行的SQL语句均是经过测试的。但是经过研究发现,上述方式仍存在以下缺点:经过测试的SQL语句在标记后由开发人员发布到生产环境中,在经过测试后至发布前的这一阶段内,SQL语句存在着被篡改的风险,若对标记过的SQL语句进行修改,修改后的SQL语句仍存在标记,而在生产环境中并无法判断标记后的SQL语句是否进行修改,即无法保证发布到生产环境中的SQL语句是经过测试且未被篡改的SQL语句,由此导致在生产环境下执行SQL语句的风险仍会变得不可控。
发明内容
本发明的目的之一在于提供一种解决环境差异的SQL版本控制系统,以解决现有技术中无法保证生产环境下所执行的SQL信息是经过测试,且测试后未被篡改的技术问题。
本发明提供基础方案是:一种解决环境差异的SQL版本控制系统,包括测试子系统和生产子系统,所述测试子系统用于对输入的SQL信息进行测试,并在测试通过时对SQL信息进行加密;所述生产子系统用于判断输入的SQL信息是否为加密后的SQL信息,若是,则执行SQL信息。
基础方案一的有益效果:通过测试子系统对输入的SQL信息进行测试,在测试通过的情况下,对该SQL信息进行加密,也就是说经过测试过的SQL信息是加密的,未经过测试的SQL信息是未加密的。通过加密的方式,避免他人对SQL信息进行篡改,保证输入生产子系统的SQL信息即是经过测试的SQL信息。通过生产子系统对输入的SQL信息进行判断,当判断输入的SQL信息为加密后的SQL信息时,便可得知输入的SQL信息是经过测试,此时,才执行该加密后的SQL信息解密生成的SQL信息,从而保证生产环境下所执行的SQL信息是经过测试且未被篡改的。与现有技术中由提交SQL信息的开发人员保证SQL信息安全性的方式相比,由于其执行的SQL信息是经过测试的,且在测试后并未被篡改的,因此其执行的风险是可控的,从而避免因执行输入的SQL信息导致数据库信息泄漏、崩溃等情况的发生,对执行SQL信息的风险进行有效的控制。
进一步,所述生产子系统用于对输入的SQL信息进行解密,当解密成功时,判断输入的SQL信息为加密后的SQL信息。有益效果:通过解密结果判断输入生产子系统的SQL信息是否是加密后的SQL信息,在解密的同时完成判断操作,加快系统响应速度。
进一步,所述生产子系统用于判断输入的SQL信息为加密后的SQL信息时,对SQL信息进行审核,并在审核通过时执行SQL信息。有益效果:在开发环境或测试环境下,其主要用于开发人员进行测试,而生产环境下,其会供用户使用,两种环境因使用者的不同会造成差异的出现。在生产子系统中再次对加密后的SQL信息解密生成的SQL信息进行审核,即对经过测试的SQL信息进行审核,通过再次审核的方式,确保通过测试的SQL信息在真实生产环境下也能够进行执行。
进一步,所述测试子系统包括测试订单创建模块,所述测试订单创建模块用于根据SQL信息创建SQL测试订单,所述测试子系统用于对SQL测试订单进行测试;所述生产子系统包括生产订单创建模块,所述生产订单创建模块用于判断输入的SQL信息为加密后的SQL信息时,根据加密后的SQL信息创建SQL生产订单,所述生产子系统用于对SQL生产订单进行审核。有益效果:通过测试订单创建模块根据输入SQL信息创建SQL测试订单,便于对进行测试的SQL信息进行区分和查找,从而实现对SQL信息的测试。通过生产订单创建模块在判断输入的SQL信息为加密后的SQL信息时,根据加密后的SQL信息解密生成的SQL信息创建SQL生产订单,也就是说生产子系统在SQL信息加密导入的情况下,才创建SQL生产订单,即向生产子系统输入未加密的SQL信息,其无法创建SQL生产订单,从而保证生产子系统输入的SQL信息与经过测试子系统测试的SQL信息保持一致,有效的对执行SQL信息的风险进行控制。
进一步,所述测试子系统包括测试审核模块和执行测试模块,所述测试审核模块用于对SQL测试订单进行语法审核和内容审核,所述执行测试模块用于在通过语法审核和内容审核时,执行SQL测试订单。有益效果:通过测试审核模块对SQL测试订单的语法和内容进行审核,确保后续能够顺利的执行SQL测试订单。通过执行测试模块执行通过语法审核和内容审核的SQL测试订单,执行成功即认为测试通过,可对SQL信息进行加密。
本发明的目的之二在于提供一种解决环境差异的SQL版本控制方法,以解决现有技术中无法保证生产环境下所执行的SQL信息是经过测试,且测试后未被篡改的SQL信息的技术问题。
基础方案二:包括以下步骤:
测试步骤,对输入的SQL信息进行测试,并在测试通过时,对SQL信息进行加密;
生产步骤,判断输入的SQL信息是否为加密后的SQL信息,若是,则执行SQL信息。
基础方案二的有益效果:通过测试步骤对输入的SQL信息进行测试,并在测试通过时对SQL信息进行加密。通过测试判断生产环境中能否成功执行SQL信息,以及对生产环境中执行SQL信息存在的风险进行预估,便于后续对执行SQL信息的风险进行有效的控制。通过加密的方式对通过测试的SQL信息进行标记,一是能够区分通过测试和未通过测试的SQL信息,二是能够避免通过测试的SQL信息被篡改。
通过生产步骤对输入的SQL信息进行判断,当判断输入的SQL信息为加密后的SQL信息,则执行输入的SQL信息解密生成的SQL信息。当判断输入的SQL信息为加密后的SQL信息时,认为输入的SQL信息是通过测试且未被篡改的,即认为其执行的风险是可控的,从而避免因执行输入的SQL信息导致数据库信息泄漏、崩溃等情况的发生,对执行SQL信息的风险进行有效的控制。
进一步,生产步骤还包括以下步骤:对输入的SQL信息进行解密,当解密成功时,判断输入的SQL信息为加密后的SQL信息。有益效果:通过解密结果对输入的SQL信息进行判断,在解密的同时完成判断操作,无需单独设置判断步骤,加快系统响应速度。
进一步,生产步骤还包括以下步骤:在判断结果为输入的SQL信息为加密后的SQL信息时,对SQL信息进行审核,并在审核通过时,执行SQL信息。有益效果:在生产判断步骤中再次对SQL信息进行审核,其主要原因是因为生产环境与测试环境会存在一定的差异,因此在生产环境中再次对SQL信息进行审核,确保加密后的SQL信息解密生成的SQL信息在真实生产环境下也能够进行执行。
进一步,测试步骤还包括以下步骤:根据输入的SQL信息创建SQL测试订单,对SQL测试订单进行测试;
生产步骤还包括以下步骤:判断输入的SQL信息是否为加密后的SQL信息,若是,则根据加密后的SQL信息创建SQL生产订单,对SQL生产订单进行审核。
有益效果:测试步骤中对输入的SQL信息创建SQL测试订单,而生产步骤中根据判断结果创建SQL生产订单,仅在判断结果为输入的SQL信息为加密后的SQL信息时,根据加密后的SQL信息解密生成的SQL信息创建SQL生产订单,也就是说在SQL信息加密导入的情况下,才创建SQL生产订单,即输入未加密的SQL信息,其无法创建SQL生产订单,从而保证生产环境输入的SQL信息与经过测试环境测试的SQL信息保持一致,有效的对执行SQL信息的风险进行控制。
进一步,测试步骤还包括以下步骤:对SQL测试订单进行测试时,包括对SQL测试订单进行语法审核和内容审核,并在通过语法审核和内容审核时,执行SQL测试订单,当执行成功时,即测试通过。有益效果:通过语法审核和内容审核对SQL测试订单进行审核,确保了SQL信息的规范性,从而确保后续能够顺利的执行SQL测试订单。执行SQL测试订单,执行成功即认为测试通过,进而对SQL信息进行加密。
附图说明
图1为本发明一种解决环境差异的SQL版本控制系统实施例一的逻辑框图;
图2为本发明一种解决环境差异的SQL版本控制系统实施例二的逻辑框图;
图3为本发明一种解决环境差异的SQL版本控制系统实施例三的逻辑框图。
具体实施方式
下面通过具体实施方式进一步详细说明:
实施例一
一种解决环境差异的SQL版本控制系统,如图1所示,包括测试子系统和生产子系统,测试子系统包括获取模块、测试订单创建模块、测试审核模块、执行测试模块和加密模块,生产子系统包括解密模块、生产订单创建模块和执行模块。
获取模块用于获取输入的SQL信息,并将SQL信息发送给测试订单创建模块。测试订单创建模块用于根据SQL信息创建SQL测试订单,并将SQL测试订单发送给测试审核模块。通过创建SQL测试订单的方式,便于对SQL信息进行区别和查找。测试审核模块用于对SQL测试订单中的SQL信息进行语法审核和内容审核并生成审核结果,审核结果包括审核通过和审核失败,当SQL测试订单通过语法审核且通过内容审核时,生成审核通过的审核结果,并将审核结果发送给执行测试模块;当语法审核或内容审核未通过时,则生成审核失败的审核结果,退回SQL测试订单对应的SQL信息。
执行测试模块用于接收到审核通过的审核结果时,执行SQL测试订单中的SQL信息,并生成执行结果,执行结果包括测试通过和测试失败,当执行成功时生成测试通过的执行结果,并将执行结果发送给加密模块,当执行失败时生成测试失败的执行结果,退回SQL测试订单对应的SQL信息。加密模块用于接收到测试通过的执行结果时,对SQL测试订单对应的SQL信息进行加密,即通过判断SQL信息是否加密便可得知SQL信息是否经过测试,且通过加密的方式,能够避免加密的SQL信息被篡改。在本实施例中,加密模块用于根据对称加密技术对SQL信息进行加密,加密生成的密文即为加密后的SQL信息,对称加密技术为目前较为成熟的技术,因此不再赘述。
解密模块用于获取输入的SQL信息,并对SQL信息进行解密,并生成解密结果和解密后的SQL信息,解密结果包括解密成功和解密失败,当解密成功时,将解密结果和解密后的SQL信息发送给生产订单创建模块,此时认为输入的SQL信息为加密后的SQL信息;当解密失败时,退回SQL信息。在本实施例中,解密模块用于根据对称加密技术对SQL信息进行解密,并生成解密结果,解密生成的明文即为通过测试的SQL信息。
生产订单创建模块用于接收到解密成功的解密结果时,根据解密后的SQL信息创建SQL生产订单,并将SQL生产订单发送给执行模块。执行模块用于接收SQL生产订单时,执行SQL生产订单中的SQL信息。
一种解决环境差异的SQL版本控制方法,使用上述解决环境差异的SQL版本控制系统,具体包括测试步骤和生产步骤。
测试步骤,具体包括以下步骤:
S101:在测试环境中获取输入的SQL信息,并根据SQL信息创建SQL测试订单。
S102:对SQL测试订单中的SQL信息进行语法审核和内容审核,并生成审核结果,审核结果包括审核通过和审核失败。当通过语法审核且通过内容审核时,生成审核通过的审核结果,当语法审核或内容审核未通过时,则生成审核失败的审核结果。
S103:当SQL测试订单中SQL信息的审核结果为审核通过时,执行SQL信息,并生成执行结果。执行结果包括测试通过和测试失败,当执行成功时生成测试通过的执行结果,当执行失败时生成测试失败的执行结果。
S104:当SQL测试订单中SQL信息的执行结果为测试通过时,对SQL测试订单对应的SQL信息进行加密。
生产步骤,具体包括以下步骤:
S201:在生产环境中获取输入的SQL信息,并对SQL信息进行解密,并生成解密结果和解密后的SQL信息,解密结果包括解密成功和解密失败。当能够对SQL信息进行解密时,生成解密成功的解密结果,执行步骤S202,反之则生成解密失败的解密结果。
S202:当SQL信息的解密结果为解密成功时,判断输入的SQL信息为加密后的SQL信息,即通过测试且未被篡改的SQL信息,根据解密后的SQL信息创建SQL生产订单。
S204:执行SQL生产订单中的SQL信息。
实施例二
本实施例与实施例一的不同之处在于:本实施例中,在创建SQL生产订单时,还需对SQL生产订单进行审核,在审核通过时才执行SQL生产订单中的SQL信息。
如附图2所示,一种解决环境差异的SQL版本控制系统中的生产子系统还包括生产审核模块,生产订单创建模块在创建SQL生产订单时,将SQL生产订单发送给生产审核模块。生产审核模块用于对SQL生产订单中的SQL信息进行语法审核和内容审核并生成审核结果,审核结果包括审核通过和审核失败,当SQL生产订单通过语法审核且通过内容审核时,生成审核通过的审核结果,并将审核结果发送给执行模块;当语法审核或内容审核未通过时,则生成审核失败的审核结果,退回SQL生产订单对应的SQL信息。执行模块用于接收审核通过的审核结果时,执行SQL生产订单中的SQL信息。
一种解决环境差异的SQL版本控制方法,使用上述解决环境差异的SQL版本控制系统,在步骤S202和步骤S204之间还包括步骤S203,步骤S203具体包括以下步骤:
S203:对SQL生产订单中的SQL信息进行语法审核和内容审核,并生成审核结果,审核结果包括审核通过和审核失败。当通过语法审核且通过内容审核时,生成审核通过的审核结果,当语法审核或内容审核未通过时,则生成审核失败的审核结果。
S204:当SQL生产订单中SQL信息的审核结果为审核通过时,执行SQL生产订单中的SQL信息。
实施例三
本实施例与实施例一的不同之处在于:本实施例中对解密失败的SQL信息再次进行测试和执行,获取查验执行信息,并对比预存的测试执行信息,当查验执行信息和测试执行信息相同时,判断输入的SQL信息为忘记加密的SQL信息,可执行该输入的SQL信息。
一种解决环境差异的SQL版本控制系统,如附图3所示,还包括缓存数据库,测试子系统还包括标记模块,生产子系统还包括判断模块、筛选模块、匹配模块和查验模块。
执行测试模块还用于生成测试通过的执行结果时,生成测试执行信息,并将测试执行信息发送给缓冲数据库。加密模块用于将测试执行信息对应的加密后的SQL信息发送给标记模块。标记模块用于根据加密后的SQL信息自动生成标记编码,并根据标记编码对加密后的SQL信息进行标记,输出被标记的加密后的SQL信息,并将标记编码发送给缓存数据库。缓存数据库用于关联标记编码和测试执行信息,并进行存储。
解密模块用于生成解密失败的解密结果时,将输入的SQL信息发送给判断模块。判断模块用于判断输入的SQL信息是否存在标记,若存在,则对输入的SQL信息进行更新,更新获得标记编码和未被标记的SQL信息,并将标记编码发送给筛选模块,未被标记的SQL信息发送给查验模块;反之,则退回SQL信息。筛选模块用于根据标记编码从数据库中筛选出测试执行信息,并将测试执行信息发送给匹配模块。查验模块用于将未被标记的SQL信息输入测试子系统,并获取执行测试模块生成的执行结果和/或测试执行信息,当执行结果为测试失败时,查验模块还用于将执行结果发送给匹配模块,当执行结果为测试通过时,查验模块用于将获取到的测试执行信息作为查验执行信息,并将查验执行信息发送给匹配模块。匹配模块用于接收到执行结果时,将接收的执行结果对应的测试执行信息进行清除,并根据执行结果退回对应的SQL信息;还用于接收到查验执行信息时,对比查验执行信息和测试执行信息,当两者相同时,生成查验成功的查验结果,并将查验结果和未被标记的SQL信息发送给生产订单创建模块;反之,则生成查验失败的查验结果,退回对应的SQL信息。
生产订单创建模块还用于接收到查验成功的查验结果时,根据未被标记的SQL信息创建SQL生产订单。
一种解决环境差异的SQL版本控制方法,使用上述解决环境差异的SQL版本控制系统,还包括步骤S105、S106、S2021、S2022、S2023和S2024。
步骤S103还包括:当SQL测试订单中SQL信息的执行结果为测试通过时,生成测试执行信息。
S105:根据加密后的SQL信息生成标记编码,并根据标记编码对加密后的SQL信息进行标记,输出被标记的加密后的SQL信息。
S106:关联标记编码和测试执行信息,并将关联后的标记编码和测试执行信息进行存储。
步骤S201还包括:当生成解密失败的解密结果时,执行步骤S2021。
S2021:当SQL信息的解密结果为解密失败时,判断输入的SQL信息是否存在标记,若存在,则对输入的SQL信息进行更新,更新获得标记编码和未被标记的SQL信息,反之,则退回对应的SQL信息。
S2022:根据标记编码对存储的测试执行信息进行筛选,获取到与标记编码对应的测试执行信息,同时将未被标记的SQL信息作为输入执行步骤S101、S102和S103,获取步骤S103输出的执行结果和/或测试执行信息,当执行结果为测试失败时,执行步骤S2023;当执行结果为测试通过时,执行步骤S2024。
S2023:根据执行结果退回对应的SQL信息,并清除执行结果对应的测试执行信息。
S2024:将获取到的测试执行信息作为查验执行信息,对比查验执行信息和测试执行信息,当两者相同时,生成查验成功的查验结果,根据未被标记的SQL信息创建SQL生产订单,执行步骤S204;当两者不同时,生成查验失败的查验结果,退回对应的SQL信息。
在解密失败时,并非直接退回SQL信息,而是判断输入的SQL信息是否被标记,若被标记,那就存在通过测试但未被加密的可能性,因此对存在标记的输入的SQL信息再次进行测试,将测试所获得的查验执行信息与该输入的SQL信息在测试环境下生成的测试执行信息进行对比,当两者相同时,便可认为该输入的SQL信息是经过测试且未被篡改的,可进入生产环境进行执行;而当两者不同时,便可认为该输入的SQL信息是经过测试,但存在被篡改的可能性的,因此退回该输入的SQL信息。通过再次测试的方式,无需直接退回SQL信息,从而节省开发人员重新测试的环节,达到缩短开发时间和测试时间的目的。
以上所述的仅是本发明的实施例,方案中公知的具体结构及特性等常识在此未作过多描述,所属领域普通技术人员知晓申请日或者优先权日之前发明所属技术领域所有的普通技术知识,能够获知该领域中所有的现有技术,并且具有应用该日期之前常规实验手段的能力,所属领域普通技术人员可以在本申请给出的启示下,结合自身能力完善并实施本方案,一些典型的公知结构或者公知方法不应当成为所属领域普通技术人员实施本申请的障碍。应当指出,对于本领域的技术人员来说,在不脱离本发明结构的前提下,还可以作出若干变形和改进,这些也应该视为本发明的保护范围,这些都不会影响本发明实施的效果和专利的实用性。本申请要求的保护范围应当以其权利要求的内容为准,说明书中的具体实施方式等记载可以用于解释权利要求的内容。

Claims (9)

1.一种解决环境差异的SQL版本控制系统,其特征在于:包括测试子系统和生产子系统,所述测试子系统用于对输入的SQL信息进行测试,并在测试通过时对SQL信息进行加密;所述生产子系统用于判断输入的SQL信息是否为加密后的SQL信息,若是,则执行SQL信息;
所述生产子系统用于对输入的SQL信息进行解密,当解密成功时,判断输入的SQL信息为加密后的SQL信息;
还包括缓冲数据库,所述测试子系统包括标记模块、执行测试模块和加密模块,所述生产子系统包括生产订单创建模块,所述生产子系统包括判断模块、筛选模块、匹配模块和查验模块;
执行测试模块用于生成测试通过的执行结果时,生成测试执行信息,并将测试执行信息发送给缓冲数据库;
加密模块用于将测试执行信息对应的加密后的SQL信息发送给标记模块;
标记模块用于根据加密后的SQL信息自动生成标记编码,并根据标记编码对加密后的SQL信息进行标记,输出被标记的加密后的SQL信息,并将标记编码发送给缓存数据库;
缓存数据库用于关联标记编码和测试执行信息,并进行存储;
解密模块用于生成解密失败的解密结果时,将输入的SQL信息发送给判断模块;
判断模块用于判断输入的SQL信息是否存在标记,若存在,则对输入的SQL信息进行更新,更新获得标记编码和未被标记的SQL信息,并将标记编码发送给筛选模块,未被标记的SQL信息发送给查验模块;
筛选模块用于根据标记编码从数据库中筛选出测试执行信息,并将测试执行信息发送给匹配模块;
查验模块用于将未被标记的SQL信息输入测试子系统,并获取执行测试模块生成的执行结果和/或测试执行信息,当执行结果为测试通过时,查验模块用于将获取到的测试执行信息作为查验执行信息,并将查验执行信息发送给匹配模块;
匹配模块用于接收到查验执行信息时,对比查验执行信息和测试执行信息,当两者相同时,生成查验成功的查验结果,并将查验结果和未被标记的SQL信息发送给生产订单创建模块;
生产订单创建模块还用于接收到查验成功的查验结果时,根据未被标记的SQL信息创建SQL生产订单。
2.根据权利要求1所述的解决环境差异的SQL版本控制系统,其特征在于:所述生产子系统用于判断输入的SQL信息为加密后的SQL信息时,对SQL信息进行审核,并在审核通过时执行SQL信息。
3.根据权利要求2所述的解决环境差异的SQL版本控制系统,其特征在于:所述测试子系统包括测试订单创建模块,所述测试订单创建模块用于根据SQL信息创建SQL测试订单,所述测试子系统用于对SQL测试订单进行测试;所述生产子系统包括生产订单创建模块,所述生产订单创建模块用于判断输入的SQL信息为加密后的SQL信息时,根据加密后的SQL信息创建SQL生产订单,所述生产子系统用于对SQL生产订单进行审核。
4.根据权利要求3所述的解决环境差异的SQL版本控制系统,其特征在于:所述测试子系统包括测试审核模块和执行测试模块,所述测试审核模块用于对SQL测试订单进行语法审核和内容审核,所述执行测试模块用于在通过语法审核和内容审核时,执行SQL测试订单。
5.一种解决环境差异的SQL版本控制方法,其特征在于,应用于权利要求1-4任一项所述的解决环境差异的SQL版本控制系统,包括以下步骤:
测试步骤,对输入的SQL信息进行测试,并在测试通过时,对SQL信息进行加密;
生产步骤,判断输入的SQL信息是否为加密后的SQL信息,若是,则执行SQL信息。
6.根据权利要求5所述的解决环境差异的SQL版本控制方法,其特征在于,生产步骤还包括以下步骤:对输入的SQL信息进行解密,当解密成功时,判断输入的SQL信息为加密后的SQL信息。
7.根据权利要求5所述的解决环境差异的SQL版本控制方法,其特征在于,生产步骤还包括以下步骤:在判断结果为输入的SQL信息为加密后的SQL信息时,对SQL信息进行审核,并在审核通过时,执行SQL信息。
8.根据权利要求7所述的解决环境差异的SQL版本控制方法,其特征在于,测试步骤还包括以下步骤:根据输入的SQL信息创建SQL测试订单,对SQL测试订单进行测试;
生产步骤还包括以下步骤:判断输入的SQL信息是否为加密后的SQL信息,若是,则根据加密后的SQL信息创建SQL生产订单,对SQL生产订单进行审核。
9.根据权利要求8所述的解决环境差异的SQL版本控制方法,其特征在于,测试步骤还包括以下步骤:对SQL测试订单进行测试时,包括对SQL测试订单进行语法审核和内容审核,并在通过语法审核和内容审核时,执行SQL测试订单,当执行成功时,即测试通过。
CN202010317868.XA 2020-04-21 2020-04-21 一种解决环境差异的sql版本控制系统及方法 Active CN111552698B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010317868.XA CN111552698B (zh) 2020-04-21 2020-04-21 一种解决环境差异的sql版本控制系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010317868.XA CN111552698B (zh) 2020-04-21 2020-04-21 一种解决环境差异的sql版本控制系统及方法

Publications (2)

Publication Number Publication Date
CN111552698A CN111552698A (zh) 2020-08-18
CN111552698B true CN111552698B (zh) 2023-06-06

Family

ID=72001203

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010317868.XA Active CN111552698B (zh) 2020-04-21 2020-04-21 一种解决环境差异的sql版本控制系统及方法

Country Status (1)

Country Link
CN (1) CN111552698B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107122258A (zh) * 2017-04-18 2017-09-01 上海雷腾软件股份有限公司 用于测试接口的状态码校验的方法及设备
CN109241751A (zh) * 2018-07-25 2019-01-18 郑州云海信息技术有限公司 基于SQL Server的数据加密验证方法及系统
US10353806B1 (en) * 2015-12-07 2019-07-16 Mx Technologies, Inc. Multi-platform testing automation

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101576843A (zh) * 2008-05-07 2009-11-11 阿里巴巴集团控股有限公司 一种测试应用程序接口的方法和装置
US8332655B2 (en) * 2009-01-30 2012-12-11 International Business Machines Corporation Method for order invariant correlated encrypting of data and SQL queries for maintaining data privacy and securely resolving customer defects
GB201014986D0 (en) * 2010-09-09 2010-10-20 Standard Life Employee Service A system and method for copying data
CN103186798B (zh) * 2011-12-27 2017-08-01 国民技术股份有限公司 一种ic卡生产测试系统
CN102708142B (zh) * 2012-03-14 2014-04-02 北京思特奇信息技术股份有限公司 一种通过sql定制模板获取后台数据的方法和系统
CN102663649B (zh) * 2012-05-18 2014-11-26 苏州工业园区凌志软件有限公司 金融衍生品交易系统
US8819634B2 (en) * 2012-09-28 2014-08-26 Sap Ag System and method to validate test cases
CN102968455A (zh) * 2012-10-31 2013-03-13 山东浪潮齐鲁软件产业股份有限公司 一种应用层透明的数据库加密方法
US20140173759A1 (en) * 2012-12-17 2014-06-19 Microsoft Corporation Rights-managed code
CN103259798A (zh) * 2013-05-21 2013-08-21 浪潮集团山东通用软件有限公司 一种与Webservice交互过程动态加密和校验的方法
CN104378788B (zh) * 2014-12-11 2019-05-31 上海斐讯数据通信技术有限公司 用于无线网络接入设备的测试方法及系统
CN104615667B (zh) * 2015-01-13 2018-01-19 联动优势电子商务有限公司 一种基础数据生成方法、测试用数据生成方法及其装置
CN105389257B (zh) * 2015-11-11 2017-12-12 中国建设银行股份有限公司 一种系统参数处理方法、装置及系统
CN105447357A (zh) * 2015-12-03 2016-03-30 上海卓易科技股份有限公司 一种应用程序处理方法以及终端
CN106201800A (zh) * 2016-07-15 2016-12-07 北京捷科智诚科技有限公司 一种测试设计平台
CN107301130A (zh) * 2017-06-28 2017-10-27 歌尔科技有限公司 一种vr一体机测试工具及其方法
CN107480478B (zh) * 2017-08-14 2019-08-13 钟尚亮 一种java应用程序的加密方法及运行方法
CN107644175A (zh) * 2017-09-13 2018-01-30 南京南瑞集团公司 一种防止sql注入的方法
CN107729045A (zh) * 2017-09-30 2018-02-23 武汉汉思信息技术有限责任公司 应用程序自动化版本发布方法及系统
CN107844425A (zh) * 2017-11-16 2018-03-27 中国银行股份有限公司 一种数据库语句检查方法和装置
CN108932434B (zh) * 2018-06-20 2021-06-25 中国农业银行股份有限公司 一种基于机器学习技术的数据加密方法及装置
CN109104724B (zh) * 2018-06-30 2019-06-07 江苏恒宝智能系统技术有限公司 一种用于设备升级的数据加密方法和装置
CN109324963B (zh) * 2018-08-22 2024-03-15 中国平安人寿保险股份有限公司 自动测试收益结果的方法及终端设备
CN109254918A (zh) * 2018-08-31 2019-01-22 重庆富民银行股份有限公司 基于路径差异的代码测试系统
CN109144878A (zh) * 2018-08-31 2019-01-04 重庆富民银行股份有限公司 基于路径差异的代码测试方法
CN109542762A (zh) * 2018-10-16 2019-03-29 深圳壹账通智能科技有限公司 接线板的加密功能验证方法、装置和计算机设备
CN109960942B (zh) * 2019-03-27 2021-04-27 厦门商集网络科技有限责任公司 基于数据库连接池的数据库数据加解密方法及其系统
CN110287208A (zh) * 2019-05-27 2019-09-27 北京三快在线科技有限公司 数据库字段加密的方法和装置、存储介质
CN110097299A (zh) * 2019-05-31 2019-08-06 济南中维世纪科技有限公司 一种降低成本的工厂订单生产系统及其应用
CN110795450A (zh) * 2019-09-12 2020-02-14 连连银通电子支付有限公司 Sql处理方法及装置
CN111008211B (zh) * 2019-12-06 2023-04-11 北京百分点科技集团股份有限公司 可视化接口的创建方法、装置、可读存储介质及电子设备
CN111026671B (zh) * 2019-12-16 2023-11-03 腾讯科技(深圳)有限公司 测试用例集构建方法和基于测试用例集的测试方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10353806B1 (en) * 2015-12-07 2019-07-16 Mx Technologies, Inc. Multi-platform testing automation
CN107122258A (zh) * 2017-04-18 2017-09-01 上海雷腾软件股份有限公司 用于测试接口的状态码校验的方法及设备
CN109241751A (zh) * 2018-07-25 2019-01-18 郑州云海信息技术有限公司 基于SQL Server的数据加密验证方法及系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Circular Range Search on Encrypted Spatial Data;Boyang Wang;《2015 IEEE 35th International Conference on Distributed Computing Systems》;全文 *
基于混合算法的加密与解密的应用研究;毕红棋;陈露;;现代信息科技(第03期);全文 *
基于社会工程学的网络安全检测技术研究;何颖;刘家豪;;广东通信技术(第11期);全文 *

Also Published As

Publication number Publication date
CN111552698A (zh) 2020-08-18

Similar Documents

Publication Publication Date Title
CN103685214B (zh) 用于汽车电子控制单元的安全访问方法
CN103580852B (zh) 安全元件以及初始化安全元件的方法和系统
US9954900B2 (en) Automating the creation and maintenance of policy compliant environments
CN102456111B (zh) 一种Linux操作系统许可控制的方法及系统
CN107430658A (zh) 安全软件认证及验证
CN101416129B (zh) 现场设备
CN104135531B (zh) 一种Web软件的升级方法及装置
Rubin et al. Nonmonotonic cryptographic protocols
CN109684789B (zh) 嵌入式产品中软件安全保护的方法、装置及计算机设备
CN110224833A (zh) 票据数据处理方法和系统
CN113505398A (zh) 产业大数据安全共享的方法、系统、电子装置和存储介质
CN115730339B (zh) 一种基于ide源码保护的插件代码防泄密方法及系统
CN114091103A (zh) 联邦学习模型的训练方法和调用方法以及联邦学习系统
CN112329063A (zh) 敏感信息的加密方法、装置、计算机设备和存储介质
Meza et al. Security verification of the opentitan hardware root of trust
CN100367144C (zh) 用于加密的应用程序安装的结构
CN117459327B (zh) 一种云数据透明加密保护方法、系统及装置
CN111552698B (zh) 一种解决环境差异的sql版本控制系统及方法
Engels et al. A critical view on the real-world security of logic locking
CN112039662B (zh) 用于涉密单位Web应用网页中敏感数据的对称加密传输的方法
CN110232570B (zh) 一种信息监管方法及装置
US20220114081A1 (en) Conducting software testing using dynamically masked data
CN112905994B (zh) 一种远程漏洞补丁程序防护方法及系统
US20080155690A1 (en) System and Method for Authenticating and Validating the Linkage Between Input Files and Output Files in a Computational Process
KR101294866B1 (ko) 개발환경 관리 시스템 및 이의 개발환경 관리 방법

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