一种多进程同时操作相同文件的安全性方法
【专利摘要】本发明提供一种多进程同时操作相同文件的安全性方法,其具体实现过程为:在文件内核与应用程序之间加入一个文件安全模块,该文件安全模块通过钩子截获用户的每次操作,再根据文件操作主体及操作读写标志相应的操作,其具体操作过程为:用户添加关联程序;关联程序读取文件;关联程序读写文件;任务列表维护。该一种多进程同时操作相同文件的安全性方法和现有技术相比,实现多进程自动完整性检查并在出现错误时报警用户,实用性强,适用范围广泛,易于推广。
【专利说明】一种多进程同时操作相同文件的安全性方法
【技术领域】
[0001]本发明涉及windows内核及windows应用程序开发【技术领域】,具体的说是一种实用性强、多进程同时操作相同文件的安全性方法。
【背景技术】
[0002]随着计算机技术的飞速发展,电子数据已涉及几乎所有的领域,数据的安全性越来越重要,有意或无意间的丢失与破坏可能会造成重大的损失。目前许多编辑器不提供安全检查,比如微软的记事本、写字板,对文件的写入采取的是强制性覆盖,另外一些编辑器如Microsoft Visual Studio、Uedit等虽然提供源文件内容时时检查对比机制,但是其对数据的写入同样采用的是强制覆盖,这对多进程同时操作文件时极易造成先写入的数据丢失,使之前的工作前功尽弃。基于此,现提供一种多进程同时操作相同文件、对文件的写入进行安全性检查的方法,该方法可以添加关联程序,对关联程序的文件操作同样进行安全性检查,实用性强。
【发明内容】
[0003]本发明的技术任务是解决现有技术的不足,提供一种实用性强、多进程同时操作相同文件的安全性方法。
[0004]本发明的技术方案是按以下方式实现的,该一种多进程同时操作相同文件的安全性方法,其具体实现过程为:
在文件内核与应用程序之间加入一个文件安全模块,该文件安全模块通过钩子截获用户的每次操作,再根据文件操作主体及操作读写标志相应的操作,其具体操作过程为:
1)、用户添加关联程序,检查关联程序对程序的读写操作;
2)、关联程序读取文件,文件安全模块记录文件检查信息,对源文件进行备份并生成任务信息,这里的任务信息包括读文件的进程ID、源文件路径、临时文件路径及源文件最后修改时间;
3)、关联程序读写文件,关联程序在对文件写入数据时,对源文件进行信息确认,检查其是否在本次操作外被其它进程修改过,即文件安全模块对比源文件最后修改时间与所记录的最后修改时间,并向用户提供报警;
4)、任务列表维护,文件安全模块启动维护线程对任务列表进行实时检查,创建维护线程,对入列表进行时时检查,对失效的任务进行清理,这里所述任务列表为进程ID对应任务信息的列表,即每一任务信息都是唯一的,该列表中记录操作文件的进程ID、源文件路径、临时文件路径以及源文件的最后修改时间。
[0005]所述步骤I)的详细操作过程为:
一、对应用程序自身、对文件内核的读写进行安全性检查,并将其它程序设置成关联程序,监视关联程序对文件的读写和向用户提供安全性报警;
二、用户提交需要关联的程序后,系统将关联程序写入指定的文档进行物理存储,再次启动计算机,系统自动加载关联程序;
三、系统将关联程序传递给文件安全模块,文件安全模块维护一个关联程序链表。
[0006]所述步骤2)的详细过程为:
A、文件安全模块拷贝源文件生成临时文件,关联程序在写文件之前,用户的所有操作都是在临时文件上进行;
B、记录源文件路径,使用户随时向源文件读取和写入数据;
C、记录临时文件的文件路径;
D、记录源文件的最后修改时间,将其作与关联程序写文件时作为文件安全校验的依据,如果源文件的最后修改时间与记录时间不一致,对用户进行报警;
E、记录读取文件的进程ID,并由文件安全模块将步骤B、C、D、E中记录的信息添加到任务列表里面。
[0007]所述步骤3)的详细过程为
A、遍历关联程序链表,判断写入进程对应的程序是否为关联程序;
B、读取源文件最后修改时间与记录时间进行对比;
C、根据判断结果提示用户进行文件的保存方式,这里的保存方式是指覆盖或者另存。
[0008]所述步骤4)的详细过程为:
a、启动任务管理器模块;
b、对比任务列表和系统进程;
C、删除失效任务后继续步骤b,直至系统中失效的任务完全删除。
[0009]本发明与现有技术相比所产生的有益效果是:
本发明的一种多进程同时操作相同文件的安全性方法实现用户写入时进行自动完整性检查并报警用户;提供用户添加关联程序功能,使关联程序在进行文件写入时同样自动进行文件完整性检查并向用户报警;实用性强,适用范围广泛,易于推广。
【专利附图】
【附图说明】
[0010]附图1为本发明的关联程序列表示意图。
[0011]附图2为本发明的添加关联程序示意图。
[0012]附图3为本发明的任务列表示意图。
[0013]附图4为本发明的关联程序读取文件示意图。
[0014]附图5为本发明的关联程序读写文件示意图。
[0015]附图6为本发明的任务列表维护示意图。
【具体实施方式】
[0016]下面结合附图对本发明的一种多进程同时操作相同文件的安全性方法作以下详细说明。
[0017]本发明的设计思路为:考虑windows消息机制的特点,利用系统的消息截取方式,即钩子截取,判断文件操作主体是否为关联程序和操作类型,即读或者写文件,对文件操作主体是关联程序并且进行读操作的动作进行任务信息记录,并把记录的任务信息添加到任务信息列表里。对于关联程序的写操作,文件安全模块在写之前会进行文件安全性校验,对校验不通过的操作向用户进行报警;本发明的基础在于将其他程序添加到关联程序列表里面,从而可以对这些关联程序的写文件操作进行安全性检查,当然方法也可提供应用层的文件读写功能。基于此设计思路,如附图1所示,现提供一种多进程同时操作相同文件的安全性方法,该方法是在应用层用户操作部分和驱动层文件安全性写入模块部分完成的。
[0018]其中应用层部分,提供用户两个功能,A、可读写文件,B、可添加关联程序。
[0019]其次是内核文件安全模块,文件安全模块控制关联程序的读写操作,在关联程序读文件阶段记录源文件信息生成任务信息,并添加到任务列表里,同时维护一个任务文件,防止任务列表意外破坏;关联程序写文件阶段,文件安全模块会读取源文件的最后修改时间与任务信息所记录的最后修改时间比较,如果结果一致,那么关联程序可直接向源文件中写入数据,如果不一致,那么文件安全模块会通知应用程序对用户的写操作进行报警。
[0020]其具体实现过程为:
在文件内核与应用程序之间加入一个文件安全模块,该文件安全模块通过钩子截获用户的每次操作,再根据文件操作主体及操作读写标志相应的操作,其具体操作过程为:
I)、用户添加关联程序,检查关联程序对程序的读写操作,此步骤不仅可以对自身、对文件的读写进行安全性检查,还能将其它程序设置成关联程序,并可监视关联程序对文件的读写和向用户提供安全性报警。
[0021]2)、关联程序读取文件,文件安全模块记录文件检查信息,对源文件进行备份并生成任务信息,这里的任务信息包括读文件的进程ID、源文件路径、临时文件路径及源文件最后修改时间。
[0022]3)、关联程序读写文件,关联程序在对文件写入数据时,对源文件进行信息确认,检查其是否在本次操作外被其它进程修改过,即文件安全模块对比源文件最后修改时间与所记录的最后修改时间,并向用户提供报警。
[0023]4)、任务列表维护,文件安全模块启动维护线程对任务列表进行实时检查,创建维护线程,对入列表进行时时检查,对失效的任务进行清理,这里所述任务列表为进程ID对应任务信息的列表,即每一任务信息都是唯一的,该列表中记录操作文件的进程ID、源文件路径、临时文件路径以及源文件的最后修改时间。
[0024]如附图2所示,所述步骤I)的详细操作过程为:
一、对应用程序自身、对文件内核的读写进行安全性检查,并将其它程序设置成关联程序,监视关联程序对文件的读写和向用户提供安全性报警;
二、用户提交需要关联的程序后,系统将关联程序写入指定的文档进行物理存储,再次启动计算机,系统自动加载关联程序;
三、系统将关联程序传递给文件安全模块,文件安全模块维护一个关联程序链表。
[0025]如附图3、图4所示,所述步骤2)的详细过程为:
A、文件安全模块拷贝源文件生成临时文件,关联程序在写文件之前,用户的所有操作都是在临时文件上进行;
B、记录源文件路径,使用户随时向源文件读取和写入数据;
C、记录临时文件的文件路径;
D、记录源文件的最后修改时间,将其作与关联程序写文件时作为文件安全校验的依据,如果源文件的最后修改时间与记录时间不一致,对用户进行报警; E、记录读取文件的进程ID,并由文件安全模块将步骤B、C、D、E中记录的信息添加到任务列表里面。
[0026]如附图5所示,所述步骤3)的详细过程为
A、遍历关联程序链表,判断写入进程对应的程序是否为关联程序;
B、读取源文件最后修改时间与记录时间进行对比;
C、根据判断结果提示用户进行文件的保存方式,这里的保存方式是指覆盖或者另存。
[0027]如附图6所示,所述步骤4)的详细过程为:
a、启动任务管理器模块;
b、对比任务列表和系统进程;
C、删除失效任务后继续步骤b,直至系统中失效的任务完全删除。
[0028]以上实施方式仅用于说明本发明,而并非对本发明的限制,有关【技术领域】的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
【权利要求】
1.一种多进程同时操作相同文件的安全性方法,其特征在于其具体实现过程为: 在文件内核与应用程序之间加入一个文件安全模块,该文件安全模块通过钩子截获用户的每次操作,再根据文件操作主体及操作读写标志相应的操作,其具体操作过程为: 1)、用户添加关联程序,检查关联程序对程序的读写操作; 2)、关联程序读取文件,文件安全模块记录文件检查信息,对源文件进行备份并生成任务信息,这里的任务信息包括读文件的进程ID、源文件路径、临时文件路径及源文件最后修改时间; 3)、关联程序读写文件,关联程序在对文件写入数据时,对源文件进行信息确认,检查其是否在本次操作外被其它进程修改过,即文件安全模块对比源文件最后修改时间与所记录的最后修改时间,并向用户提供报警; 4)、任务列表维护,文件安全模块启动维护线程对任务列表进行实时检查,创建维护线程,对入列表进行时时检查,对失效的任务进行清理,这里所述任务列表为进程ID对应任务信息的列表,即每一任务信息都是唯一的,该列表中记录操作文件的进程ID、源文件路径、临时文件路径以及源文件的最后修改时间。
2.根据权利要求1所述的一种多进程同时操作相同文件的安全性方法,其特征在于:所述步骤I)的详细 操作过程为: 一、对应用程序自身、对文件内核的读写进行安全性检查,并将其它程序设置成关联程序,监视关联程序对文件的读写和向用户提供安全性报警; 二、用户提交需要关联的程序后,系统将关联程序写入指定的文档进行物理存储,再次启动计算机,系统自动加载关联程序; 三、系统将关联程序传递给文件安全模块,文件安全模块维护一个关联程序链表。
3.根据权利要求1所述的一种多进程同时操作相同文件的安全性方法,其特征在于:所述步骤2)的详细过程为: A、文件安全模块拷贝源文件生成临时文件,关联程序在写文件之前,用户的所有操作都是在临时文件上进行; B、记录源文件路径,使用户随时向源文件读取和写入数据; C、记录临时文件的文件路径; D、记录源文件的最后修改时间,将其作与关联程序写文件时作为文件安全校验的依据,如果源文件的最后修改时间与记录时间不一致,对用户进行报警; E、记录读取文件的进程ID,并由文件安全模块将步骤B、C、D、E中记录的信息添加到任务列表里面。
4.根据权利要求1所述的一种多进程同时操作相同文件的安全性方法,其特征在于:所述步骤3)的详细过程为 A、遍历关联程序链表,判断写入进程对应的程序是否为关联程序; B、读取源文件最后修改时间与记录时间进行对比; C、根据判断结果提示用户进行文件的保存方式,这里的保存方式是指覆盖或者另存。
5.根据权利要求1所述的一种多进程同时操作相同文件的安全性方法,其特征在于:所述步骤4)的详细过程为: a、启动任务管理器模块;b、对比任务列表和系统进程;C、删除失效任 务后继续步骤b,直至系统中失效的任务完全删除。
【文档编号】G06F21/64GK104021355SQ201410278171
【公开日】2014年9月3日 申请日期:2014年6月20日 优先权日:2014年6月20日
【发明者】王超, 赵孝军 申请人:浪潮电子信息产业股份有限公司