本发明涉及信息数据技术领域,具体涉及一种基于内核的刻录设备控制方法、装置及电子设备。
背景技术:
随着刻录技术的不断发展,越来越多的人选择通过刻录设备将数据刻录在光盘上,以进行数据存储。为保证数据的安全性,如何防止数据通过刻录方式泄漏也变得尤为重要。
现阶段,通常通过应用程序对刻录设备进行实时监控,来防止数据通过刻录方式泄漏。具体的,可以通过应用程序按照轮询机制,对刻录软件进行实时监控,以根据刻录软件的使用信息,确定是否有用户通过刻录设备刻录数据,以确定数据是否被泄漏。当监控到刻录软件被使用,即有用户通过刻录设备刻录数据时,则可以认为数据可能被泄漏。
现有技术中,通过应用程序对刻录设备进行实时监测,即应用程序一直处于运行状态,会占用较多的系统资源,导致系统的资源占用率较高。
技术实现要素:
由于现有方法存在上述问题,本发明实施例提出一种基于内核的刻录设备控制方法、装置及电子设备。
第一方面,本发明实施例提出一种基于内核的刻录设备控制方法,包括:
当接收到刻录指令时,通过内核钩子函数确定所述刻录指令对应的刻录设备的权限类型;
当所述刻录设备的权限类型满足预设权限规则时,将所述刻录指令发送至所述刻录设备,以使所述刻录设备执行所述刻录指令。
可选的,所述当接收到刻录指令时,通过内核钩子函数确定所述刻录指令对应的刻录设备的权限类型,包括:
当接收到刻录指令时,确定所述刻录指令对应的目标用户,并对所述目标用户进行身份验证;
当所述目标用户的身份为管理员时,确定所述目标用户具有刻录权限,并通过内核钩子函数确定所述刻录指令对应的刻录设备的权限类型;
当所述目标用户的身份为普通用户时,确定所述目标用户无刻录权限,并将所述刻录指令标记为无效指令。
可选的,还包括:
获取预设权限配置信息,并通过内核钩子函数基于所述预设权限配置信息对刻录设备进行权限认证。
可选的,所述预设权限配置信息至少包括刻录设备的设备信息和权限类型;所述权限类型包括禁止权限、只读权限和读写权限。
可选的,所述当所述刻录设备的权限类型满足预设权限规则时,将所述刻录指令发送至所述刻录设备,以使所述刻录设备执行所述刻录指令,包括:
判断所述刻录设备的权限类型是否是读写权限;
若所述刻录设备的权限类型是读写权限,则将所述刻录指令发送至所述刻录设备,以使所述刻录设备执行所述刻录指令,否则,不向所述刻录设备发送所述刻录指令,以禁止所述刻录设备执行所述刻录指令。
第二方面,本发明实施例还提出一种基于内核的刻录设备控制装置,包括权限确定模块和指令执行模块,其中:
所述权限确定模块,用于当接收到刻录指令时,通过内核钩子函数确定所述刻录指令对应的刻录设备的权限类型;
所述指令执行模块,用于当所述刻录设备的权限类型满足预设权限规则时,将所述刻录指令发送至所述刻录设备,以使所述刻录设备执行所述刻录指令。
可选的,还包括身份验证模块,用于:
当接收到刻录指令时,确定所述刻录指令对应的目标用户,并对所述目标用户进行身份验证;
当所述目标用户的身份为管理员时,确定所述目标用户具有刻录权限,并通过内核钩子函数确定所述刻录指令对应的刻录设备的权限类型;
当所述目标用户的身份为普通用户时,确定所述目标用户无刻录权限,并将所述刻录指令标记为无效指令。
可选的,还包括权限认证模块,用于:
获取预设权限配置信息,并通过内核钩子函数基于所述预设权限配置信息对刻录设备进行权限认证。
可选的,所述预设权限配置信息至少包括刻录设备的设备信息和权限类型;所述权限类型包括禁止权限、只读权限和读写权限。
可选的,所述指令执行模块,用于:
判断所述刻录设备的权限类型是否是读写权限;
若所述刻录设备的权限类型是读写权限,则将所述刻录指令发送至所述刻录设备,以使所述刻录设备执行所述刻录指令,否则,不向所述刻录设备发送所述刻录指令,以禁止所述刻录设备执行所述刻录指令。
第三方面,本发明实施例还提出一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述的基于内核的刻录设备控制方法的步骤。
第四方面,本发明实施例还提出一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机程序,所述计算机程序使所述计算机执行如第一方面所述的基于内核的刻录设备控制方法的步骤。
由上述技术方案可知,本发明实施例中在接收到刻录指令时,通过内核钩子函数确定刻录指令对应的刻录设备的权限类型,并在权限类型满足预设权限规则时,执行刻录指令。这样,一方面,仅在接收到刻录指令时,执行上述权限类型确定过程,且只有在刻录设备的权限类型满足预设权限规则时执行刻录过程,从而可以有效降低系统资源的占用率。另一方面,基于内核钩子函数,即基于内核系统层面实现上述过程,其监控程序不容易被关闭,从而可以有效减少刻录设备的控制盲区(即失去对刻录设备的控制权限的时间),进而可以有效防止数据泄露,提高数据的安全性;同时,基于内核钩子函数实现刻录设备的控制过程,只需在刻录设备接入时,通过内核钩子函数对刻录设备进行一次处理即可,不会因刻录软件的变化而需要重新进行处理,从而可以进一步降低系统资源的占用率,减少刻录设备的控制盲区,进而可以进一步防止数据泄露,进一步提高数据的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。
图1为本发明一实施例提供的一种基于内核的刻录设备控制方法的流程示意图;
图2为本发明一实施例提供的一种基于内核的刻录设备控制方法的流程示意图;
图3为本发明一实施例提供的一种基于内核的刻录设备控制装置的结构示意图
图4为本发明一实施例提供的电子设备的逻辑框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1示出了本实施例提供的一种基于内核的刻录设备控制方法的流程示意图,包括:
s101,当接收到刻录指令时,通过内核钩子函数确定刻录指令对应的刻录设备的权限类型。
其中,所述刻录指令指用户通过客户端输入的指令,该指令可以指示刻录设备进行数据刻录操作。
所述钩子函数是windows消息处理机制的一部分,通过设置钩子,应用程序可以在系统级对所有消息、事件进行过滤。钩子的本质是一段用以处理系统消息的程序,通过系统调用把钩子挂入系统,利用钩子,可以捕捉自身进程或其它进程发生的事件,给windows一个处理或过滤事件的回调函数(即为钩子函数)。
所述权限类型包括禁止权限、只读权限和读写权限。当权限类型是禁止权限或只读权限时,禁止刻录设备执行刻录操作;当权限类型是读写权限,允许刻录设备执行刻录操作。
在实施中,当有用户想要通过刻录设备进行数据刻录操作(如(读取光盘、刻录光盘)时,可以通过客户端输入刻录指令,当服务端接收到前述刻录指令时,可以通过内核钩子函数确定刻录指令对应的刻录设备(如刻录机)的权限类型,以根据前述刻录指令和刻录设备的权限类型,确定是否执行刻录操作。具体的,当接收到刻录指令时,可以调用内核钩子函数(hook),如openhook,截获刻录指令,即阻断刻录软件打开刻录设备的动作。然后,可以确定前述刻录指令对应的刻录设备,如可以根据刻录设备中携带的刻录设备的信息(如可以是刻录设备的标识、id等信息)。之后,可以通过前述内核钩子函数获取前述刻录指令对应的刻录设备的权限类型。
s102,当刻录设备的权限类型满足预设权限规则时,将刻录指令发送至刻录设备,以使刻录设备执行刻录指令。
其中,所述预设权限规则指确定是否可以执行刻录指令的规则,当刻录设备的权限类型满足该规则时,则可以执行刻录指令,否则,不能执行刻录指令。
在实施中,在确定刻录指令对应的刻录设备的权限类型之后,可以确定前述刻录指令对应的刻录设备的权限类型是否满足预设权限规则。当前述刻录设备的权限类型满足预设权限规则时,则可以将前述刻录指令发送至刻录指令对应的刻录设备,以使该刻录设备可以基于该刻录指令执行刻录操作。
由上述技术方案可知,本发明实施例中在接收到刻录指令时,通过内核钩子函数确定刻录指令对应的刻录设备的权限类型,并在权限类型满足预设权限规则时,执行刻录指令。这样,一方面,仅在接收到刻录指令时,执行上述权限类型确定过程,且只有在刻录设备的权限类型满足预设权限规则时执行刻录过程,从而可以有效降低系统资源的占用率。另一方面,基于内核钩子函数,即基于内核系统层面实现上述过程,其监控程序不容易被关闭,从而可以有效减少刻录设备的控制盲区(即失去对刻录设备的控制权限的时间),进而可以有效防止数据泄露,提高数据的安全性;同时,基于内核钩子函数实现刻录设备的控制过程,只需在刻录设备接入时,通过内核钩子函数对刻录设备进行一次处理即可,不会因刻录软件的变化而需要重新进行处理,从而可以进一步降低系统资源的占用率,减少刻录设备的控制盲区,进而可以进一步防止数据泄露,进一步提高数据的安全性。
进一步地,在上述方法实施例的基础上,还可以对发送刻录指令的用户进行身份验证,相应的上述步骤s101的处理可以如下:当接收到刻录指令时,确定刻录指令对应的目标用户,并对目标用户进行身份验证;当目标用户的身份为管理员时,确定目标用户具有刻录权限,并通过内核钩子函数确定刻录指令对应的刻录设备的权限类型;当目标用户的身份为普通用户时,确定目标用户无刻录权限,并将刻录指令标记为无效指令。
其中,所述目标用户指发送刻录指令的用户。
所述刻录权限指进行数据刻录操作的权限。
所述无效指令指普通用户发送的刻录指令。
在实施中,可以对刻录指令对应的目标用户进行身份验证,以根据验证结果确定是否需要再确定刻录设备的权限类型。具体的,当接收到刻录指令时,可以确定该刻录指令对应的目标用户。然后,可以对该目标用户进行身份验证,如目标用户的身份可以是管理员或者普通用户。当目标用户的身份为管理员时,则可以认为目标用户具有刻录权限,此时,可以确定刻录指令对应的刻录设备的权限类型,以根据刻录设备的权限类型,确定是否将刻录指令发送至刻录设备。当目标用户的身份为普通用户时,则可以认为目标用户无刻录权限,此时,无需再确定刻录指令对应的刻录设备的权限类型,可以直接将该刻录指令标记为无效指令,禁止执行该刻录指令。这样,在确定刻录指令对应的刻录设备的权限类型之前,对刻录指令对应的目标用户进行身份校验,一方面,可以进一步防止数据通过刻录方式泄漏,进而可以进一步提高数据的安全性;另一方面,只有在目标用户为管理员时,确定刻录设备的权限类型,还可以在一定程度上减少系统资源的消耗,降低系统资源的占用率。
进一步地,在上述方法实施例的基础上,还可以对刻录设备进行权限认证,相应的处理可以如下:获取预设权限配置信息,并通过内核钩子函数基于预设权限配置信息对刻录设备进行权限认证。
其中,所述预设权限配置信息指预先设定的对各个刻录设备进行权限认证的配置信息,该配置信息可以是管理员根据实际情况预先设定的包括各个刻录设备的权限类型的配置信息,如可以是刻录设备a的认证权限类型为只读权限、刻录设备b的认证权限为读写权限、刻录设备c的认证权限类型为禁止权限。
所述预设权限配置信息中至少可以包括刻录设备的设备信息和权限类型。
所述权限类型至少可以包括禁止权限、只读权限和读写权限。当权限类型是禁止权限或只读权限时,禁止刻录设备执行刻录操作;当权限类型是读写权限,允许刻录设备执行刻录操作。
在实施中,在刻录设备初始接入使用时,即在初始接收刻录指令前,可以预先对刻录设备进行权限认证。具体的,可以先将刻录机映射块设备(如/dev/sr设备),并可以获取预设权限配置信息。然后。可以通过内核钩子函数基于前述预设权限配置信息确定刻录设备对应权限类型,并将该权限类型认证为该刻录设备的权限类型,完成刻录设备的权限认证过程。可以理解,当有多台刻录设备时,可以分别确定各个刻录设备的权限类型,以完成各个刻录设备的权限认证过程。这样,对刻录设备进行权限认证,以使内核钩子函数可以根据刻录设备的权限类型确定是否执行刻录指令,可以进一步防止数据通过刻录方式泄漏,进而可以进一步提高数据的安全性。
需要说明的是,上述刻录设备的权限认证过程,可以在刻录设备初始接入使用时,即在初始接收刻录指令前,预先执行;或者也可以在接收到刻录指令,确定刻录指令对应的刻录设备后执行。
进一步地,在上述方法实施例的基础上,可以根据刻录设备的权限类型确定是否执行刻录指令,相应的上述步骤s102的处理可以如下:判断刻录设备的权限类型是否是读写权限;若刻录设备的权限类型是读写权限,则将刻录指令发送至刻录设备,以使刻录设备执行刻录指令,否则,不向刻录设备发送刻录指令,以禁止刻录设备执行刻录指令。
其中,所述读写权限指刻录设备可以执行数据刻录操作的权限。
在实施中,上述预设权限规则可以是根据权限类型是否是读写权限,确定是否执行刻录指令。具体的,在确定上述刻录指令对应的刻录设备的权限类型之后,可以判断前述刻录指令对应的刻录设备的权限类型是否是读写权限。若前述刻录指令对应的刻录设备的权限类型是读写权限,则可以将刻录指令发送至刻录设备,以使前述刻录设备可以基于前述刻录指令执行刻录操作,即允许刻录软件打开前述刻录指令对应的刻录设备,以通过该刻录指令对应的刻录设备执行数据刻录过程。若前述刻录指令对应的刻录设备的权限类型不是读写权限,如可以是禁止权限或只读权限,则不向刻录设备发送刻录指令,以禁止前述刻录设备基于前述刻录指令执行刻录操作,即阻断刻录软件打开刻录设备,以阻断刻录设备执行数据刻录过程。这样,当刻录设备的权限类型是读写权限时,刻录设备才可以执行刻录过程,从而可以进一步防止数据被刻录,进而可以进一步防止数据通过刻录方式被泄漏,可以进一步提高数据的安全性。
如图2所示,为本发明实施例提供的一种完整的基于内核的刻录设备控制方法的流程示意图。具体的,当接收到刻录指令时,首先通过内核hook函数(如可以是openhook)对刻录设备进行权限认证。当刻录设备的权限类型是读写权限时,将刻录指令发送至刻录设备,以使刻录设备执行刻录操作。当刻录设备的权限类型不是读写权限,如是禁止权限或只读权限时,不向刻录设备发送刻录指令,以禁止刻录设备执行刻录操作。
图3示出了本实施例提供的一种基于内核的刻录设备控制装置,包括权限确定模块301和指令执行模块302,其中:
所述权限确定模块301,用于当接收到刻录指令时,通过内核钩子函数确定所述刻录指令对应的刻录设备的权限类型;
所述指令执行模块302,用于当所述刻录设备的权限类型满足预设权限规则时,将所述刻录指令发送至所述刻录设备,以使所述刻录设备执行所述刻录指令。
可选的,还包括身份验证模块,用于:
当接收到刻录指令时,确定所述刻录指令对应的目标用户,并对所述目标用户进行身份验证;
当所述目标用户的身份为管理员时,确定所述目标用户具有刻录权限,并通过内核钩子函数确定所述刻录指令对应的刻录设备的权限类型;
当所述目标用户的身份为普通用户时,确定所述目标用户无刻录权限,并将所述刻录指令标记为无效指令。
可选的,还包括权限认证模块,用于:
获取预设权限配置信息,并通过内核钩子函数基于所述预设权限配置信息对刻录设备进行权限认证。
可选的,所述预设权限配置信息至少包括刻录设备的设备信息和权限类型;所述权限类型包括禁止权限、只读权限和读写权限。
可选的,所述指令执行模块302,用于:
判断所述刻录设备的权限类型是否是读写权限;
若所述刻录设备的权限类型是读写权限,则将所述刻录指令发送至所述刻录设备,以使所述刻录设备执行所述刻录指令,否则,不向所述刻录设备发送所述刻录指令,以禁止所述刻录设备执行所述刻录指令。
本实施例所述的基于内核的刻录设备控制装置可以用于执行上述方法实施例,其原理和技术效果类似,此处不再赘述。
如图4所示,本发明实施例还提供了一种电子设备,所述电子设备可以包括:处理器(processor)401、存储器(memory)402和总线403;
其中,
所述处理器401和存储器402通过所述总线403完成相互间的通信;
所述处理器401用于调用所述存储器402中的程序指令,以执行上述各方法实施例所提供的方法。
此外,上述的存储器402中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述方法实施例所提供的方法。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
1.一种基于内核的刻录设备控制方法,其特征在于,包括:
当接收到刻录指令时,通过内核钩子函数确定所述刻录指令对应的刻录设备的权限类型;
当所述刻录设备的权限类型满足预设权限规则时,将所述刻录指令发送至所述刻录设备,以使所述刻录设备执行所述刻录指令。
2.根据权利要求1所述的基于内核的刻录设备控制方法,其特征在于,所述当接收到刻录指令时,通过内核钩子函数确定所述刻录指令对应的刻录设备的权限类型,包括:
当接收到刻录指令时,确定所述刻录指令对应的目标用户,并对所述目标用户进行身份验证;
当所述目标用户的身份为管理员时,确定所述目标用户具有刻录权限,并通过内核钩子函数确定所述刻录指令对应的刻录设备的权限类型;
当所述目标用户的身份为普通用户时,确定所述目标用户无刻录权限,并将所述刻录指令标记为无效指令。
3.根据权利要求1所述的基于内核的刻录设备控制方法,其特征在于,还包括:
获取预设权限配置信息,并通过内核钩子函数基于所述预设权限配置信息对刻录设备进行权限认证。
4.根据权利要求3所述的基于内核的刻录设备控制方法,其特征在于,所述预设权限配置信息至少包括刻录设备的设备信息和权限类型;所述权限类型包括禁止权限、只读权限和读写权限。
5.根据权利要求1所述的基于内核的刻录设备控制方法,其特征在于,所述当所述刻录设备的权限类型满足预设权限规则时,将所述刻录指令发送至所述刻录设备,以使所述刻录设备执行所述刻录指令,包括:
判断所述刻录设备的权限类型是否是读写权限;
若所述刻录设备的权限类型是读写权限,则将所述刻录指令发送至所述刻录设备,以使所述刻录设备执行所述刻录指令,否则,不向所述刻录设备发送所述刻录指令,以禁止所述刻录设备执行所述刻录指令。
6.一种基于内核的刻录设备控制装置,其特征在于,包括权限确定模块和指令执行模块,其中:
所述权限确定模块,用于当接收到刻录指令时,通过内核钩子函数确定所述刻录指令对应的刻录设备的权限类型;
所述指令执行模块,用于当所述刻录设备的权限类型满足预设权限规则时,将所述刻录指令发送至所述刻录设备,以使所述刻录设备执行所述刻录指令。
7.根据权利要求6所述的基于内核的刻录设备控制装置,其特征在于,还包括身份验证模块,用于:
当接收到刻录指令时,确定所述刻录指令对应的目标用户,并对所述目标用户进行身份验证;
当所述目标用户的身份为管理员时,确定所述目标用户具有刻录权限,并通过内核钩子函数确定所述刻录指令对应的刻录设备的权限类型;
当所述目标用户的身份为普通用户时,确定所述目标用户无刻录权限,并将所述刻录指令标记为无效指令。
8.根据权利要求6所述的基于内核的刻录设备控制装置,其特征在于,还包括权限认证模块,用于:
获取预设权限配置信息,并通过内核钩子函数基于所述预设权限配置信息对刻录设备进行权限认证。
9.根据权利要求8所述的基于内核的刻录设备控制装置,其特征在于,所述预设权限配置信息至少包括刻录设备的设备信息和权限类型;所述权限类型包括禁止权限、只读权限和读写权限。
10.根据权利要求6所述的基于内核的刻录设备控制装置,其特征在于,所述指令执行模块,用于:
判断所述刻录设备的权限类型是否是读写权限;
若所述刻录设备的权限类型是读写权限,则将所述刻录指令发送至所述刻录设备,以使所述刻录设备执行所述刻录指令,否则,不向所述刻录设备发送所述刻录指令,以禁止所述刻录设备执行所述刻录指令。
11.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5任一所述的基于内核的刻录设备控制方法。
12.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至5任一所述的基于内核的刻录设备控制方法。
技术总结