掌桥专利:专业的专利平台
掌桥专利
首页

数据安全分级方法、系统、设备及存储介质

文献发布时间:2023-06-19 11:19:16


数据安全分级方法、系统、设备及存储介质

技术领域

本发明涉及计算机技术领域,具体地说,涉及一种数据安全分级方法、系统、设备及存储介质。

背景技术

数据安全分级在数据安全治理过程中至关重要,数据的分级是数据重要性的直观化展示,是组织内部管理体系编写的基础、是技术支撑体系落地实施的基础、是运维过程中合理分配精力及力度的基础。也便于在后续使用过程中,根据不同数据级别,实现不同安全防护。

传统的数据安全分级方法主要是基于关键词字典或者是正则表达式等方法来进行数据安全分级,比如说对银行卡、证件号等有明确的规则,可以构建对应的正则表达式来匹配;第二种方法是对人名、地址、微信号等没有明确规则但存在一定数据规律的,例如数据字段包含城市/街道名等信息,可以通过正则规律以及命名规范来识别分类,同时也可以基于关键词字典来识别一些敏感数据,这些方法的问题在于自动化程度、覆盖率以及准确率都较低。对于大型关系型数据库,多达上亿的数据字段,使用现有技术的方法来进行分级,计算量较大,需要耗费大量时间。

发明内容

针对现有技术中的问题,本发明的目的在于提供一种数据安全分级方法、系统、设备及存储介质,减小了针对大型关系型数据库进行安全分级的计算量与计算时间,提高了安全分级的覆盖率和准确率。

为实现上述目的,本发明提供了一种数据安全分级方法,所述方法包括以下步骤:

S110,获取待分级数据的血缘关系网络,所述血缘关系网络表征有不同数据之间的继承关系;

S120,依据所述血缘关系网络,判断是否存在所述待分级数据的上一级数据;若是则执行步骤S130;若否则执行步骤S140;

S130,依据所述上一级数据的安全级别确定待分级数据的安全级别;

S140,分别基于第一训练集和第二训练集对一预设分类模型依次进行训练,得到目标分类模型;

S150,将所述待分级数据作为所述目标分类模型的输入,得到所述待分级数据对应的安全级别。

可选地,所述方法还包括步骤:

S160,根据不同安全级别的特征,为相应数据设置不同的加密算法,实现分级加密。

可选地,在步骤S110之前,还包括步骤:

S100,提取待分级数据的的字段信息,根据字段信息和预设数据库,确定是否存在与所述字段信息匹配的安全级别;所述预设数据库中存储有不同字段信息对应的安全级别;

若是,则获取所述安全级别;

若否则执行步骤S110。

可选地,所述步骤S120包括:

若不存在所述待分级数据的上一级数据,则对待分级数据随机抽取,形成样本数据;

构建正则表达式;

基于所述正则表达式对所述样本数据进行正则匹配,判断是否匹配成功;

若否则执行步骤S140;

若是则获得匹配得到的样本类别,获取所述样本类别的安全级别,并将所述样本类别的安全级别确定为所述待分级数据的安全级别。

可选地,所述方法还包括步骤:

获取业务人员对得到的待分级数据的安全级别的修改行为日志;

根据所述修改行为日志,获取修改行为对应的修改字段以及修改轨迹;

根据所述修改字段以及修改轨迹,调整所述修改字段的关联字段的安全级别。

可选地,所述步骤S140包括:

基于第一训练集对一预设分类模型进行训练,得到初始分类模型;所述第一训练集为预设语料库;

构建包含至少三种数据源的第二训练集;其中,第一种数据源为人工标注得到数据源中的安全级别;第二种数据源为基于步骤S100得到数据源中的安全级别;第二种数据源为基于步骤S110至步骤S130得到数据源中的安全级别;

基于所述第二训练集对所述初始分类模型进行训练,得到目标分类模型。

可选地,所述步骤S130包括:

若仅存在一个上一级数据,则将该上一级数据的安全级别确定为待分级数据的安全级别;

若存在至少两个上一级数据,且所有上一级数据的安全级别不同,则将所有上一级数据的安全级别的众数作为所述待分级数据的安全级别。

可选地,所述初始分类模型为基于BERT预训练的文本分类模型。

本发明还提供了一种数据安全分级系统,用于实现上述数据安全分级方法,所述系统包括:

血缘关系网络获取模块,用于获取待分级数据的血缘关系网络,所述血缘关系网络表征有不同数据之间的继承关系;

上一级数据判断模块,用于依据所述血缘关系网络,判断所述待分级数据是否存在上一级数据;若是则执行第一判定模块;若否则执行模型分次训练模块;

第一判定模块,用于依据所述上一级数据的安全级别确定待分级数据的安全级别;

模型分次训练模块,用于分别基于第一训练集和第二训练集对一预设分类模型依次进行训练,得到目标分类模型;

第二判定模块,用于将所述待分级数据作为所述目标分类模型的输入,得到所述待分级数据对应的安全级别。

本发明还提供了一种数据安全分级设备,包括:

处理器;

存储器,其中存储有所述处理器的可执行指令;

其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项数据安全分级方法的步骤。

本发明还提供了一种计算机可读存储介质,用于存储程序,所述程序被处理器执行时实现上述任意一项数据安全分级方法的步骤。

本发明与现有技术相比,具有以下优点及突出性效果:

本发明提供的数据安全分级方法、系统、设备及存储介质针对大型关系型数据库的安全分级,结合血缘关系分级方法和神经网络模型分类方法,减小了对于大型关系型数据库数据分级的的计算量与计算时间,提高了安全分级的覆盖率和准确率。

附图说明

通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显。

图1为本发明一实施例公开的一种数据安全分级方法的示意图;

图2为本发明另一实施例公开的一种数据安全分级方法的示意图;

图3为本发明一实施例公开的一种数据安全分级系统的结构示意图;

图4为本发明一实施例公开的一种数据安全分级设备的结构示意图;

图5为本发明一实施例公开的一种计算机可读存储介质的结构示意图。

具体实施方式

现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的实施方式。相反,提供这些实施方式使得本发明将全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的结构,因而将省略对它们的重复描述。

如图1所示,本发明一实施例公开了一种数据安全分级方法,该方法包括以下步骤:

S110,获取待分级数据的血缘关系网络,上述血缘关系网络表征有不同数据之间的继承关系。具体来说,数据库中包含有至少一个数据表,数据表中具有至少一个数据字段。本实施例先获取数据库中的所有数据表,然后获取各个数据表中的所有数据字段,分级对象也是上述数据字段。所以,上述待分级数据也即为数据字段。然后,可以根据数据字段的安全级别得到数据表的安全级别,再根据数据表的安全级别得到数据库的安全级别。

其中,数据表的安全级别可以为其包含的所有数据字段的安全级别的最高级。数据库的安全级别可以为其包含的所有数据表的安全级别的最高级。

该步骤中,获取数据字段的血缘关系网络,可通过获取数据字段归属的数据表的血缘关系网络来实现。可通过数据字段即待分级数据生成的流程,计算各个数据表的血缘关系网络。血缘关系网络表征有不同数据表之间的继承关系。

S120,依据上述血缘关系网络,判断血缘关系网络中是否存在上述待分级数据的上一级数据;若是则执行步骤S130;若否则执行步骤S140。具体来说,比如数据表A是通过数据表B和数据表C经过一个ETL(Extract-Transform-Load,抽取转换加载)的流程生成的,那么数据表A的上游数据表即上一级数据表就是数据表B和数据表C。相反地,数据表A即为数据表B和数据表C的下游数据表,即下一级数据表。

该步骤中,判断待分级数据对应的数据字段归属的数据表是否存在上一级数据表,即上游数据表。当存在上一级数据表时,判断待分级数据对应的数据字段是否来源于上一级数据表中的某个上一级数据字段。其中,该数据字段的来源定位追溯可通过现有技术实现,本申请不再赘述。

S130,依据上述上一级数据的安全级别确定待分级数据的安全级别。具体来说,步骤S130包括:

若仅存在一个上一级数据,则将该上一级数据的安全级别确定为待分级数据的安全级别。以及

若存在至少两个上一级数据,且所有上一级数据的安全级别不同,则将所有上一级数据的安全级别的众数作为上述待分级数据的安全级别。

具体而言,比如,对于一个数据字段A,如果定位到数据字段A只来源于上游数据表A的数据字段B,也即仅存在一个上一级数据字段,那么数据字段A继承数据字段B的安全级别,也即将数据字段A的安全级别等于数据字段B的安全级别。

对于一个数据字段A,如果定位到数据字段A来源于上游数据表A的多个数据字段,或者来源于归属于多个上游数据表的多个数据字段,也即存在多个上一级数据字段,此时若所有上一级数据字段的安全级别不同,则将所有上一级数据字段的安全级别的众数作为上述待分级数据的安全级别。若所有上一级数据字段的安全级别相同,那么就将上一级数据字段的该安全级别作为上述待分级数据的安全级别。

S140,分别基于第一训练集和第二训练集对一预设分类模型依次进行训练,得到目标分类模型。具体来说,上述步骤S140包括:

S141,基于第一训练集对一预设分类模型进行训练,得到初始分类模型。上述第一训练集为预设语料库。本实施例中,初始分类模型为实现基于BERT(BidirectionalEncoder Representations from Transformers,基于Transformer模型的双向编码器表征)预训练的一文本分类模型。

S142,构建包含至少三种数据源的第二训练集。其中,第一种数据源为人工标注得到数据源中的安全级别。第二种数据源为基于步骤S100得到数据源中的安全级别。第二种数据源为基于步骤S110至步骤S130得到数据源中的安全级别。

上述步骤S100为:提取待分级数据的的字段信息,根据字段信息和预设数据库,确定是否存在与上述字段信息匹配的安全级别。上述预设数据库中存储有不同字段信息对应的安全级别。也即基于预设数据库进行匹配得到数据字段的安全级别。上述预设数据库可以根据本领域技术人员的历史经验进行设置,本申请对此不作限制。

S143,基于上述第二训练集对上述初始分类模型进行训练,得到目标分类模型。

本实施例中,上述预设分类模型也即文本分类模型可以为DNN(Deep NeuralNetworks,深度神经网络)模型,本申请对此不作限制。上述预设分类模型在进行第二次训练之前,已经采用大量语料比如百度百科等进行训练,这样可以避免从零开始训练新模型,可以从大规模语料库学到丰富的语义知识,后续再针对性地对数据安全分级,提高模型的分级准确性。

然后进行第二次训练时,采用三种数据源构成的第二训练集,可以丰富第二训练集的数据多样性,利于提高训练得到的目标分类模型的分类准确性。

S150,将上述待分级数据作为上述目标分类模型的输入,得到上述待分级数据对应的安全级别。也即,目标分类模型以上述待分级数据字段作为输入,对应的输出就是该数据字段的安全级别。

本申请的另一个实施例公开了另一种数据安全分级方法。该数据安全分级方法在上述实施例的基础上,还包括步骤:

S160,根据不同安全级别的特征,为相应数据设置不同的加密算法,实现分级加密。具体来说,可以构建一安全级别与加密算法相映射的第一数据库,对所有的数据字段确定完成相应的安全级别之后,依据上述安全级别与上述第一数据库,匹配得到与各个安全级别对应的加密算法,依据加密算法对相应的数据字段进行加密。其中,安全级别越高的数据字段,采用的加密算法的加密等级越高。安全级别越低的数据字段,采用的加密算法的加密等级越低。由于不同加密算法的加密复杂度不同,该技术方案可以平衡加密效率和数据安全性,根据不同数据字段的安全性的要求,提供合适的加密算法,在保证数据安全性的前提下,降低了加密成本,也提高了加密效率。

如图2所示,本申请的另一个实施例公开了另一种数据安全分级方法。该数据安全分级方法在上述实施例的基础上,在步骤S110之前,还包括步骤:

S100,提取待分级数据的的字段信息,根据字段信息和预设数据库,判断是否存在与上述字段信息匹配的安全级别。上述预设数据库中存储有不同字段信息对应的安全级别。若是,则执行步骤S170:获取上述字段信息对应的安全级别。若否则执行步骤S110。其中,上述预设数据库可以根据本领域技术人员的历史经验预设生成,该技术方案利于提高安全分级的覆盖率和准确率,可以避免现有技术中一些数据字段安全分级方法对于大型关系型数据库覆盖率和准确率较低的问题。

上述步骤120包括:

若血缘关系网络中不存在上述待分级数据的上一级数据,则执行步骤S180:对待分级数据随机抽取,形成样本数据;构建正则表达式;以及

S190:基于上述正则表达式对上述样本数据进行正则匹配,判断是否匹配成功。

若否则执行步骤S140;

若是则执行步骤S200:获得匹配得到的样本类别,获取上述样本类别的安全级别,并将上述样本类别的安全级别确定为上述待分级数据的安全级别。

比如,匹配得到的样本类别为手机号,那么就将手机号的安全级别作为对应的数据字段的安全级别。

利用正则匹配来实现数据字段的安全分级,也有利于提高数据安全分级的覆盖率和准确率。

本申请的另一个实施例公开了另一种数据安全分级方法。该数据安全分级方法在上述实施例的基础上,还包括步骤:

获取业务人员对得到的待分级数据的安全级别的修改行为日志;

根据上述修改行为日志,获取修改行为对应的修改字段以及修改轨迹;

根据上述修改字段以及修改轨迹,调整上述修改字段的关联字段的安全级别。

也即,当系统从修改行为日志中发现业务人员对某个数据字段比如身份证的字段的安全级别进行了修改时,说明业务人员认为系统给出的安全级别不合适,那么系统就自动将身份证相关的上游和下游的其他字段的安全级别也都修改为与身份证字段相同的新的安全级别。这样可以在保证数据安全性的前提下,减小人工工作量,提高了数据安全级别设置的时效性。

需要说明的是,本申请公开的上述所有实施例可以进行任意组合,组合后的技术方案也在本申请的保护范围之内。

如图3所示,本发明一实施例还公开了一种数据安全分级系统3,该系统包括:

血缘关系网络获取模块31,用于获取待分级数据的血缘关系网络,上述血缘关系网络表征有不同数据之间的继承关系。

上一级数据判断模块32,用于依据上述血缘关系网络,判断上述待分级数据是否存在上一级数据;若是则执行第一判定模块;若否则执行模型分次训练模块。

第一判定模块33,用于依据上述上一级数据的安全级别确定待分级数据的安全级别。

模型分次训练模块34,用于分别基于第一训练集和第二训练集对一预设分类模型依次进行训练,得到目标分类模型。

第二判定模块35,用于将上述待分级数据作为上述目标分类模型的输入,得到上述待分级数据对应的安全级别。

可以理解的是,本发明的数据安全分级系统还包括其他支持数据安全分级系统运行的现有功能模块。图3显示的数据安全分级系统仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

本实施例中的数据安全分级系统用于实现上述的数据安全分级的方法,因此对于数据安全分级系统的具体实施步骤可以参照上述对数据安全分级的方法的描述,此处不再赘述。

本发明一实施例还公开了一种数据安全分级设备,包括处理器和存储器,其中存储器存储有所述处理器的可执行指令;处理器配置为经由执行可执行指令来执行上述数据安全分级方法中的步骤。图4是本发明公开的数据安全分级设备的结构示意图。下面参照图4来描述根据本发明的这种实施方式的电子设备600。图4显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图4所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同平台组件(包括存储单元620和处理单元610)的总线630、显示单元640等。

其中,存储单元存储有程序代码,程序代码可以被处理单元610执行,使得处理单元610执行本说明书上述数据安全分级方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,处理单元610可以执行如图1中所示的步骤。

存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。

存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。

电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储平台等。

本发明还公开了一种计算机可读存储介质,用于存储程序,所述程序被执行时实现上述数据安全分级方法中的步骤。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述数据安全分级方法中描述的根据本发明各种示例性实施方式的步骤。

如上所示,该实施例的计算机可读存储介质的程序在执行时,针对大型关系型数据库的安全分级,结合血缘关系分级方法和神经网络模型分类方法,减小了对于大型关系型数据库数据分级的的计算量与计算时间,提高了安全分级的覆盖率和准确率。

图5是本发明的计算机可读存储介质的结构示意图。参考图5所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品800,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。

计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。

本发明实施例提供的数据安全分级方法、系统、设备及存储介质针对大型关系型数据库的安全分级,结合血缘关系分级方法和神经网络模型分类方法,减小了对于大型关系型数据库数据分级的的计算量与计算时间,提高了安全分级的覆盖率和准确率。

以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

相关技术
  • 数据安全分级方法、系统、设备及存储介质
  • 数据安全分级的白盒密码生成与管理方法、装置及设备
技术分类

06120112880756