一种基于驱动过滤技术的动态文件监控和保护系统的制作方法_3

文档序号:8412430阅读:来源:国知局
保留的部分,目前没有特殊作用)。
[0054]2驱动模块;
本系统主要针对Windows操作系统上的用户,因此驱动部署在Windows平台上。需要根据Windows版本的不同选择不同版本驱动。
[0055]2.1驱动的安装;
本方案采用的驱动是标准的Windows WDM驱动。WDM是微软在Windows中采用的驱动框架结构,虽然现在微软推出WDF驱动但是WDF可以认为是对WDM的封装所以WDM驱动仍然不是一个过时的框架。由于驱动与平台紧密关联,不同版本的Windows驱动一般不能通用。但由于当前微软的驱动框架没有改变,所以只要将源码用相应平台的编译器重新编译即可(可能需要做少量修改)。
[0056]—般情况下采用inf文件安装驱动,右键单击inf文件选择安装即可。本发明也提供了安装驱动使用的inf文件。inf文件中主要保存了驱动的安装位置、驱动版本信息、驱动启动类型等,可以根据需要对inf文件进行修改。
[0057]2.2规则匹配部分;
规则匹配模块主要用于确定当前要访问的文件是否需要进行规定的操作,该部分的核心组件是规则表,规则表是由规则项组成的一个列表。规则项由一下几部分组成:1.路径,指与该条规则相关联的路径(路径可以指向文件也可以指向文件夹);2.路径长度;3.读操作码,指明该路径是否可读;4.写操作码,指明该路径是否可写;5.转存码,指明该路径指明的文件是否需要转存操作。
[0058]规则匹配的过程是检查源路径是否是规则项路径的前缀。该匹配方式决定了规则的设定是可以继承的,即父文件夹的规则会被子文件夹/文件继承。
[0059]由于规则所规定的操作都是有限的,为了加快查询效率和简化交互信息,将操作方式压缩到一个32位整数中。即进行匹配操作后只用返回一个32位整数,该整数表明了需要的操作方式。该32位整数的第一位表示读操作(为O表示允许读操作,为I表示禁止读操作),第二位表示写操作(为O表示允许写操作,为I表示禁止写操作),第三位表示转存操作(为O表示不需要转存操作,为I表示需要转存操作)。
[0060]2.3通信部分;
这里的通信主要指从驱动模块到客户端的通信,该部分要完成返回客户端请求信息和通知客户端发生某些事件(例如转存文件准备好)。通常由于客户端无法预知驱动模块通信消息的来到时间,所以不能在主线程中接收消息,这里单独用一个线程随时检查和接收消息以避免延时。驱动模块与该线程的通信是同步的,但与整个客户端来看可以看做是异步。这样做既避免的异步消息的不稳定性也兼顾了用户体验。通信部分既要将客户端需要的信息封装起来发送给客户端还要解释从客户端发送而来的消息,并通知驱动模块完成相应的功能。
[0061]发送给客户端的消息主要包括:1.操作码(指明该消息对应哪种操作),2.临时文件存放路径(在转存操作中用到的,指明文件内容保存的位置),3.源文件路径(指明该操作是在哪个文件/文件夹上发生的),4.保留部分(方便今后扩展而保留的部分,目前没有特殊作用)。
[0062]应当理解的是,本说明书未详细阐述的部分均属于现有技术。
[0063]应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。
【主权项】
1.一种基于驱动过滤技术的动态文件监控和保护系统,由驱动模块和客户端部分组成;所述的客户端用于提供可视化的操作界面并负责数据库操作同时向用户展示相关信息;所述的驱动模块为完成文件系统监控和保护的主体,承担规则匹配、文件请求分析、文件请求拦截、向客户端发送信息的功能;所述的驱动模块和客户端之间的通信通过发送消息进行,只要满足规定格式的消息都能被正确接收并解释;其特征在于:所述的驱动模块包括上层驱动单元、驱动主体单元和下层驱动单元,采用驱动过滤技术,采用基于分桶和字典树的匹配算法实现规则匹配,实现驱动模块与客户端完整的通信格式定义,适用于多模可扩展的实时环境配置。
2.根据权利要求1所述的基于驱动过滤技术的动态文件监控和保护系统,其特征在于:所述的文件监控用于文件访问的控制和文件访问信息的保存,包括阻止对文件的读/写操作、保存文件访问记录、将文件内容进行转存、记录规则变化历史信息。
3.根据权利要求2所述的基于驱动过滤技术的动态文件监控和保护系统,其特征在于:所述的阻止对文件的读/写操作,其具体实现过程为:在驱动主体单元中规则匹配成功且规则中规定阻止读/写操作,则将该文件请求设置为非法请求,直接返回上层驱动单元不向下层驱动单元传递该请求。
4.根据权利要求2所述的基于驱动过滤技术的动态文件监控和保护系统,其特征在于:所述的保存文件访问记录,其具体实现过程为:在驱动主体单元中规则匹配成功且规则中规定保存文件访问记录,则将该文件文件名、路径发送到客户端,客户端接收到消息后将相应信息保存到本地或远程数据库中;驱动主体单元则继续将该请求发送到下层驱动单元继续处理。
5.根据权利要求1所述的基于驱动过滤技术的动态文件监控和保护系统,其特征在于:所述的规则匹配是指将文件访问请求的路径与规则项进行一一匹配,以决定是否采用该规则项规定的操作;匹配的过程采用基于分桶和字典树的匹配算法,其具体实现包括以下子步骤: 步骤1:针对盘符进行分组,将不同盘符的规则分配到不同的组中; 步骤2:将各个组中的第一层路径做成字典树,每个字典树的分支指向下一层路径的分组,下一层路径分组中采用字典序对路径进行排序提高查找效率。
6.根据权利要求5所述的基于驱动过滤技术的动态文件监控和保护系统,其特征在于:所述的匹配算法匹配成功的标准为:文件请求的路径与规则项路径完全相同,且规则项路径是文件请求的路径的前缀。
7.根据权利要求1所述的基于驱动过滤技术的动态文件监控和保护系统,其特征在于:所述的驱动模块与客户端完整的通信格式,因驱动模块到客户端的消息格式和客户端到驱动模块的消息格式不同,故采用的是非对称设计; 所述的驱动模块到客户端的消息格式,其通信数据结构包括操作码、临时文件存放路径和源文件存放路径;所述的操作码指明该消息针对的操作类型;所述的临时文件存放路径只有在操作码指示的操作为转存操作时才有意义,复用部分的具体含义与操作码相关;所述的源文件路径指明该操作对应的路径; 所述的客户端到驱动模块的消息格式,其通信数据结构包括操作码、状态码和路径;所述的操作码指明该消息针对的操作类型;所述的路径指明该操作对应的文件路径。
8.根据权利要求7所述的基于驱动过滤技术的动态文件监控和保护系统,其特征在于:所述的驱动模块到客户端的消息格式和客户端到驱动模块的消息格式,在不同的上下文环境中消息中的字段能代表不同的含义,通过字段复用压缩消息的长度。
9.根据权利要求1所述的基于驱动过滤技术的动态文件监控和保护系统,其特征在于:所述的多模可扩展的实时环境配置,指所述的文件监控和保护系统能配置于多种物理环境中且能动态对控制规则进行配置,配置实时生效无需重新启动系统;当规则的生效与文件访问发生冲突时,其处理过程为:已经访问的文件不受刚生效规则的影响,规则生效后访问的文件受规则的控制。
10.根据权利要求9所述的基于驱动过滤技术的动态文件监控和保护系统,其特征在于:所述的多种物理环境包括单机和联网。
【专利摘要】本发明公开了一种基于驱动过滤技术的动态文件监控和保护系统,由驱动模块和客户端部分组成;客户端用于提供可视化的操作界面并负责数据库操作同时向用户展示相关信息;驱动模块为完成文件系统监控和保护的主体,承担规则匹配、文件请求分析、文件请求拦截、向客户端发送信息的功能;驱动模块和客户端之间的通信通过发送消息进行,只要满足规定格式的消息都能被正确接收并解释;本发明采用驱动过滤技术,基于分桶和字典树的匹配算法实现规则匹配,实现驱动模块与客户端完整的通信格式定义,适用于多模可扩展的实时环境配置。本发明提高了可扩展性,并集成了数据库功能,很好的解决了数据存储和效率方面的问题。
【IPC分类】G06F17-30, G06F11-30
【公开号】CN104731684
【申请号】CN201510164956
【发明人】陈晶, 杜瑞颖, 李 浩
【申请人】武汉大学
【公开日】2015年6月24日
【申请日】2015年4月9日
当前第3页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1