应用程序的权限控制方法及装置、存储介质、计算机设备与流程

文档序号:17896715发布日期:2019-06-13 16:02阅读:220来源:国知局
应用程序的权限控制方法及装置、存储介质、计算机设备与流程

本申请涉及计算机技术领域,尤其是涉及到一种应用程序的权限控制方法及装置、存储介质、计算机设备。



背景技术:

随着计算机技术的快速发展,各种功能的应用程序大量出现,满足人们在工作和生活中的多样化需求。但是与此同时计算机设备上的恶意软件层出不穷,这些恶意软件往往通过操控计算机的白名单应用程序,在用户毫无知觉的情况下执行某些而已操作。

而在现有的计算机防护体系中,如果一个应用程序为白名单应用程序,那么其相关操作都将被视为合法操作,无论该应用程序请求的权限是否合理都将被放行。例如,记事本程序发起网络请求,对于记事本来说网络请求通常是没有必要的,应对该请求进行拦截,但在现有技术的防护体系中,只要将记事本程序设置为白名单应用程序,记事本的网络请求就会被响应。

但是现有技术中暂时还没有一种解决以上技术问题的方法。



技术实现要素:

有鉴于此,本申请提供了一种应用程序的权限控制方法及装置、存储介质、计算机设备,能够控制终端设备中的应用程序的权限,避免可信程序被恶意操控。

根据本申请的一个方面,提供了一种应用程序的权限控制方法,所述方法包括:

拦截终端设备中的应用程序的行为,并解析被拦截的所述应用程序的行为得到所述应用程序的编码;

根据被拦截的所述应用程序的编码,确定所述应用程序类型;

在预设行为权限集中查询与所述应用程序类型对应的权限信息,其中,所述应用程序类型的权限信息包括与所述应用程序类型对应的任意一个应用程序具备运行权限的行为;

若所述应用程序类型的权限信息包括被拦截的所述应用程序的行为,则放行被拦截的所述应用程序的行为;

若所述应用程序类型的权限信息不包括被拦截的所述应用程序的行为,则终止被拦截的所述应用程序的行为。

根据本申请的另一方面,提供了一种应用程序的权限控制装置,其特征在于,包括:

行为拦截模块,用于拦截终端设备中的应用程序的行为,并解析被拦截的所述应用程序的行为得到所述应用程序的编码;

权限信息查询模块,用于根据被拦截的所述应用程序的编码,确定所述应用程序类型;

行为权限查询模块,用于在预设行为权限集中查询与所述应用程序类型对应的权限信息,其中,所述应用程序类型的权限信息包括与所述应用程序类型对应的任意一个应用程序具备运行权限的行为;

行为放行模块,用于若所述应用程序类型的权限信息包括被拦截的所述应用程序的行为,则放行被拦截的所述应用程序的行为;

行为终止模块,用于若所述应用程序类型的权限信息不包括被拦截的所述应用程序的行为,则终止被拦截的所述应用程序的行为。

依据本申请又一个方面,提供了一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述应用程序的权限控制方法。

依据本申请再一个方面,提供了一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述应用程序的权限控制方法。

借由上述技术方案,本申请提供的一种应用程序的权限控制方法及装置、存储介质、计算机设备,对终端设备中应用程序的进程进行拦截,进而根据预设行为权限集查询被拦截的应用程序类型的权限信息,从而当该类型的应用程序具备对被拦截的进程的执行权限时,放行该进程,而当该类型的应用程序不具备对被拦截的进程的执行权限时,终止该进程。本申请能够确保应用程序的实际的运行行为不会超出预先规定的权限策略范围,达到应用程序的安全管控的目的,有效的控制应用程序的进程免受恶意程序或恶意人员的操控,提高了系统的安全性。

上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1示出了本申请实施例提供的一种应用程序的权限控制方法的流程示意图;

图2示出了本申请实施例提供的另一种应用程序的权限控制方法的流程示意图;

图3示出了本申请实施例提供的一种应用程序的权限控制装置的结构示意图;

图4示出了本申请实施例提供的另一种应用程序的权限控制装置的结构示意图。

具体实施方式

下文中将参考附图并结合实施例来详细说明本申请。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

在本实施例中提供了一种应用程序的权限控制方法,如图1所示,该方法包括:

步骤101,拦截终端设备中的应用程序的行为,并解析被拦截的应用程序的行为得到应用程序的编码。

当监控到终端设备中的应用程序的行为时,终端设备不会立即响应,而是将其拦截下来使其不能被立即执行,以便对该行为进行分析,判断此时该行为是否有运行权限,防止设备响应无权限运行的行为,恶意放大运行权限,导致设备安全受到威胁。具体地,可以根据解析该行为得到的应用程序的编码,从而对应用程序的可执行权限进行分析。

需要说明的是,应用程序可以包括系统软件的应用程序,也可以包括第三方软件的应用程序,在此不做限定。

另外,本申请通过hook(挂钩)技术或功能过滤驱动,设定对应用程序的敏感行为的监控。挂钩,是计算机安全领域常用的一种安全监控技术方法,可以对一些关键的系统api(applicationprogramminginterface,应用程序编程接口)进行挂钩,当系统执行某一任务时,就会进入到hook处理流程中,可以在hook处理代码中对任务的正当性进行检测。若一个任务(或者说一个行为)不在预先设置的最小行为权限集中,则将其拦截,需要进一步判断是否可以放行该行为;若该任务在预先设置的最小行为权限集中,则直接放行该任务。

当一个敏感行为发生,而行为的主体(系统或应用程序)的行为权限并没有预先收集,不在预设的行为权限集之中时,将应用“系统及应用的最小行为权限集”的设定,来决策此行为是否允许发生。即:最小行为权限集,将适用于所有的系统及应用程序。

“系统及应用的最小行为权限集”的设定原则,以最大程度的避免不可控的危险发生,同时最小程度的影响系统及第三方应用程序的正常运行,对用户正常操作与使用系统及应用程序不造成困扰为准则。

经长期的研究、大数据分析及不断的试验,研究人员总结了最小行为权限集的设定原则如下:(1)应用程序不可以自动运行,只能由用户手动执行,特定的需要自动运行的程序由程序专属行为集来解决。(2)应用程序只可以全权操作(读、写、打开、删除等)自己创建的或与自己一起由同一安装包直接或间接创建的文件。(3)应用程序对系统自身的文件仅有只读的权限。(4)应用程序不可以操作(读、写、打开、删除等)除第2条规定外的,任何非系统的文件。(5)非用户主动操作,应用程序不允许访问内外网络及网内设备节点。(6)非用户主动操作,应用程序不允许对其它进程进行跨进程操作。(7)系统本身及应用程序,都不允许绕过文件系统直接操作磁盘。(8)非用户主动操作,系统本身及应用程序不可以下载或执行另一个程序,不可以加载驱动。(9)非用户主动操作,任何程序,包括操作系统本身,不允许读写用户私有数据,包括但不限于:文档、照片等。(10)在用户主动操作时,只有数据所对应的默认编辑程序可以操作对应数据类型的文档,默认编辑程序以系统注册表中的登记为准。比如:word文档只允许winword程序或wps操作。(11)在用户主动操作时,对应的行为主体,只有对单一客体进行操作的权限。比如:用户调用winword程序打开了word文档a,那winword程序将拥有对a的操作权限;但对用户并没有显示主动打开的word文档b,winword程序并不具备操作权限。(12)非用户主动操作,系统及应用程序不具备添加账户的权限。(13)非用户主动操作,系统及应用程序不具备写关键注册表项的权限,如:浏览器主页、自启动项、各类型文件的默认程序设置、系统启动设置等等。(14)非用户主动操作,系统本身及应用程序不具备调用系统功能类程序的权限,比如:shell程序、注册表编辑器、计划任务、磁盘文件注册表的权限更改类程序等等。(15)非用户主动操作,系统及应用程序不具备创建并执行脚本文件的权限。

步骤102,根据被拦截的应用程序的编码,确定应用程序类型。

按照被拦截的应用程序的编码,可以查询到该应用程序的类型。例如办公软件、通讯软件、下载软件等等。从而可以根据应用程序的具体类型进一步获取应用程序的可执行权限。

步骤103,在预设行为权限集中查询与应用程序类型对应的权限信息,其中,应用程序类型的权限信息包括与应用程序类型对应的任意一个应用程序具备运行权限的行为。

需要说明的是,行为指的是读写文件、访问网络、执行程序、更改系统配置等等动作。而权限,则是指这些行为是否可以被允许进行,有相应权限的允许、反之则不允。权限来自于职责,比如:下载类程序因其下载功能的需要,给予其连接互联网的行为权限,但却不用给其赋予访问内网、写操作系统文件等其它权限。

在本申请的实施例中,预设行为权限集中预先存储了每个类型的应用程序对应的可执行行为。进而根据被拦截的应用程序类型,可以在预设行为权限集中查询到与该类型对应的应用程序的可执行行为,应用程序的可执行行为一般为应用程序实现必要功能所需执行的行为,也是应用程序具备运行权限的行为。

需要说明的是,预设行为权限集与最小行为权限集不同,最小行为权限集是一种可以应用各种应用程序主体、各种运行环境下的行为权限限定的准则,而预设行为权限集则是对某个特定的运行环境下不同类型的应用程序所对应的可执行行为。例如,对于办公软件类型的应用程序对应的权限信息可以包括打开、增加、删除文档文件等必要权限,但打开摄像头、发起网络请求不在记事本的权限范围内。

步骤104,若应用程序类型的权限信息包括被拦截的应用程序的行为,则放行被拦截的应用程序的行为。

查询应用程序类型的权限信息后,如果经过分析得到的结果为该类型的应用程序的权限信息包括被拦截的应用程序的行为,说明被拦截的应用程序的行为是该应用程序的可执行行为,则放行该行为。

例如,记事本应用程序具备打开文档文件的权限,当被拦截的行为为打开.txt文件对应的行为时,则放行该行为,终端设备可以打开对应的文件。

步骤105,若应用程序类型的权限信息不包括被拦截的应用程序的行为,则终止被拦截的应用程序的行为。

而如果经过分析得到的结果为该类型的应用程序的权限信息不包括被拦截的应用程序的行为,说明被拦截的应用程序的行为不是该应用程序的可执行行为,则应该终止该行为,避免应用程序受到恶意应用程序的操控或者非法人员的恶意操作而执行超权限的行为,实现应用程序的权限管理。

例如,办公软件类型的应用程序不具备打开摄像头的权限,当被拦截的行为为打开摄像头对应的行为时,则终止该行为。

通过应用本实施例的技术方案,对终端设备中应用程序的行为进行拦截,进而根据预设行为权限集查询被拦截的应用程序类型的权限信息,从而当该类型的应用程序具备对被拦截的行为的执行权限时,放行该行为,而当该类型的应用程序不具备对被拦截的行为的执行权限时,终止该行为。本申请能够确保应用程序的实际的运行行为不会超出预先规定的权限策略范围,达到应用程序的安全管控的目的,有效的控制应用程序的行为免受恶意程序或恶意人员的操控,提高了系统的安全性。

进一步的,作为上述实施例具体实施方式的细化和扩展,为了完整说明本实施例的具体实施过程,提供了另一种应用程序的权限控制方法,如图2所示,该方法包括:

步骤201,向服务器发送终端设备中的应用程序信息,以使服务器分别为每个用户分配对应的应用程序白名单以及分别为每个类型的应用程序分配对应的具备运行权限的行为,并根据每个类型的应用程序对应的具备运行权限的行为生成预设行为权限集。

在本申请的实施例中,服务器中预先存储有不同用户的权限信息以及不同类型的应用程序的权限信息。具体地,终端设备向服务器发送终端设备中的全部的应用程序(包括系统软件的应用程序以及第三方软件的应用程序),以使服务器在接收到终端设备发送的信息后,为每个在网用户分配对应的应用程序使用权限,即应用程序白名单,以及每个类型的应用程序对应的行为运行权限。其中,应用程序类型对应的行为运行权限一般是通过专家系统对长期收集的系统日志中的应用程序运行记录进行分析得到的,专家系统将同一个类型的应用程序运行记录中被认为是正常的运行记录对应的行为确定为该类型应用程序的权限行为,并形成预设行为权限集。

需要说明的是,本申请针对应用程序的类型分配对应的行为权限,相比于为每个应用程序分配行为权限更加快捷方便,当然,如果需要对应用程序进行更加准确、个性化的权限控制,也可以为每个应用程序分配对应的行为权限,本领域技术人员可以根据实际情况进行选择,在此不做限定。

另外,上述的预设行为权限集也可以针对不同用户分别进行配置,例如,用户123可以调用应用程序类型a的a行为和b行为,用户456可以调用应用程序类型a的a行为、b行为和c行为。

步骤202,当用户登录终端设备时,获取用户的登录信息。

为了保证终端设备的信息安全,限制不同用户对在终端设备上的操作,当用户登录该终端设备时,获取用户的登录信息,登录信息可以为用户的员工编号等可以确定唯一用户身份的信息,以便利用用户的登录信息,获取该用户对应的软件使用权限信息。

其中,终端设备可以为计算机设备,如笔记本电脑、台式电脑、平板电脑等。

步骤203,根据用户的登录信息,从服务器中获取用户的权限信息以及预设行为权限集。

其中,用户的权限信息包括用户的应用程序白名单。

在本申请的实施例中,根据用户的登录信息生成权限获取请求后,将权限获取请求发送至服务器中,服务器中预先存储了不同用户对应的应用程序白名单信息以及预设行为权限集信息。从而服务器在接收到权限获取请求时,能够根据权限获取请求中所包含的员工编号等登录信息确定该用户对应的应用程序白名单,并将用户的应用程序白名单连同预设行为权限集反馈至终端设备中,以便终端设备在接收到来自服务器的反馈后,可以根据用户的应用程序白名单对用户在终端设备上的应用权限使用权限进行安全管控。

例如,服务器中预先存储了员工编号为123的用户的应用程序白名单包括软件a、软件b和软件c。

另外,最小行为权限集可以预置在终端设备中,也可以保存在服务器中,在接收到用户的登录信息时,连同用户的权限信息以及预设行为权限集一起反馈到终端设备中。

步骤204,清空终端设备的本地缓存,存储用户的权限信息以及预设行为权限集。

接收到服务器发送的用户的应用程序白名单以及预设行为权限集后,将终端设备中的本地缓存进行清空处理,从而清除该设备中的一些历史运行记录,防止对终端设备的运行安全造成影响,再将该用户的应用程序白名单以及预设行为权限集存储在终端设备中,从而便于控制用户在使用该终端设备时的操作权限。

步骤205,监控终端设备中应用程序的行为。

为实现对终端设备的应用程序运行权限的控制,应对设备中的应用程序的运行行为进行监控。

步骤206,若应用程序在应用程序白名单中,则拦截应用程序的行为,并解析被拦截的应用程序的行为得到应用程序的编码。

如果监控到的有行为运行的应用程序是用户的应用程序白名单中的应用程序,说明用户对该应用程序具备使用权限,应进一步判断应用程序是否对其请求的行为具备运行权限,因此,系统将应用程序的行为进行拦截,并对其进行解析得到应用程序的编码以便查询应用程序的行为运行权限,实现应用程序的行为权限控制。

步骤207,若应用程序不在应用程序白名单中,则终止应用程序的行为。

而如果监控到的应用程序不在应用程序白名单中,说明正在使用终端设备的用户没有对该应用程序的使用权限,则立即终止该行为,从而实现对用户的应用程序使用权限进行控制。

另外,如果应用程序不在应用程序白名单中,还可以将应用程序的行为上报至服务器中,由服务器对这些非法行为进行统一分析和管理。

步骤208,根据被拦截的应用程序的编码,确定应用程序类型;

步骤209,在预设行为权限集中查询与应用程序类型对应的权限信息。

在应用程序为应用程序白名单的应用程序时,根据被拦截的应用程序的编码确定应用程序类型,在从服务器中获取到的预设行为权限集中进行信息匹配,得到与应用程序类型对应的权限信息,其中,应用程序类型的权限信息包括该类型的应用程序具备运行权限的行为。

步骤210,若应用程序类型的权限信息包括被拦截的应用程序的行为,则放行被拦截的应用程序的行为。

如果根据预设行为权限集查询得到的权限信息中包括被拦截的应用程序的行为,说明应用程序对该行为具备使用权限,则将该行为放行,终端设备可以运行该应用程序的行为以满足用户的使用需求。

步骤211,若应用程序类型的权限信息不包括被拦截的应用程序的行为,则终止被拦截的应用程序的行为。

作为步骤211的一个具体实施例,应用程序也可能会运行一些预设行为权限集外的行为,在具体的应用场景中,步骤210可以包括:

步骤2111,若应用程序类型的权限信息不包括被拦截的应用程序的行为,则获取终端设备中预设时间段的系统日志,其中,预设时间段为用户登录终端设备的时间至应用程序的行为被拦截的时间。

当应用程序请求运行其权限范围外的行为时,获取终端设备中一段时间内的系统日志,具体可以获取从用户登录终端设备的时间开始至应用程序的行为被拦截的时间结束这一时间段的系统日志,以便对该段时间的系统日志进行分析,从而判断这段时间内系统是否存在异常,进而最终产生行为的处理方案。

步骤2112,将系统日志以及应用程序的行为发送至服务器中,以使服务器根据系统日志以及应用程序的行为生成应用程序的行为对应的处理反馈信息。

将系统日志以及应用程序的行为发送至服务器中,从而服务器根据系统日志分析终端设备的操作系统是否存在异常,具体可以解析系统日志,获取系统分层服务提供商lsp的注册表的更改程序信息以及更改后的动态链接库dll文件信息,进而判断注册表的更改程序和/或dll文件是否为恶意程序,如果二者都不是恶意程序,进一步判断应用程序的行为有无威胁到系统安全的可能,如果应用程序的行为对系统安全没有威胁,则可以生成行为放行的反馈信息,而如果应用程序的行为对系统安全存在威胁,则可以生成行为终止的反馈信息。

步骤2113,若接收到的处理反馈信息为终止应用程序的行为,则终止被拦截的应用程序的行为。

步骤2114,若接收到的处理反馈信息为放行应用程序的行为,则放行被拦截的应用程序的行为。

终端设备接收来自服务器的处理反馈信息,并根据处理反馈信息对应用程序的行为进行处理,具体地,当接收到终止反馈时,则终止对应的行为,当接收到放行反馈时,则放行对应的行为。通过本实施例的技术方案,在保证系统安全的基础上,能够更大程度的满足用户的使用需求,兼顾了系统的安全性和实用性。

步骤212,若被终止的应用程序的行为是前台行为,则输出被终止的应用程序的行为超出权限范围的提示信息。

应用程序的行为被终止后,检测被终止的行为是否属于前台行为,若该行为是前台行为,说明该行为可能是用户的人为启用行为,则提示用户该行为超出用户可用的应用程序权限范围,用户无权使用该行为。

另外,在一段时间内,如果系统多次终止相同的前台行为,说明系统可能正在被恶意操作,则可以将被终止的行为、用户的登录信息以及终端设备的标识信息等上报到服务器,由服务器进行处理,及时制止用户的恶意操作行为保护设备信息安全。

步骤213,若被终止的应用程序的行为不是前台行为,则将被终止的应用程序的行为上报至服务器中。

而如果被终止的行为不是前台行为,说明该行为可能是恶意应用程序等用户无法察觉的恶意操纵产生的,则应将被终止的行为上报至服务器,以便服务器收集、统计这些行为,并根据这些历史终止行为完善设备的管理方案。例如,统计一段时间内反复出现的被终止的行为,由专家系统对这些行为进行分析,适当调整应用程序的可运行行为的权限,形成新的预设行为权限集。

通过应用本实施例的技术方案,根据用户的登录信息从服务器中获取预先设置好的用户的应用程序白名单,以及预设行为权限集,从而限制用户在终端设备上对应用程序的使用权限,以及应用程序的行为调用权限,对超出权限范围的行为进行及时终止,防止终端设备上的行为运行权限被恶意放大,有效避免了恶意人员或者恶意程序通过操控白名单应用程序调用非法行为进行作恶,保护了终端设备的信息安全。

进一步的,作为图1方法的具体实现,本申请实施例提供了一种应用程序的权限控制装置,如图3所示,该装置包括:行为拦截模块31、应用程序类型确定模块32、行为权限查询模块33、行为放行模块34、行为终止模块35。

行为拦截模块31,用于拦截终端设备中的应用程序的行为,并解析被拦截的应用程序的行为得到应用程序的编码;

应用程序类型确定模块32,用于根据被拦截的应用程序的编码,确定应用程序类型;

行为权限查询模块33,用于在预设行为权限集中查询与应用程序类型对应的权限信息,其中,应用程序类型的权限信息包括与应用程序类型对应的任意一个应用程序具备运行权限的行为;

行为放行模块34,用于若应用程序类型的权限信息包括被拦截的应用程序的行为,则放行被拦截的应用程序的行为;

行为终止模块35,用于若应用程序类型的权限信息不包括被拦截的应用程序的行为,则终止被拦截的应用程序的行为。

在具体的应用场景中,如图4所示,行为终止模块35,具体包括:系统日志获取单元351、系统日志发送单元352、终止反馈接收单元353、放行反馈接收单元354。

系统日志获取单元351,用于若应用程序类型的权限信息不包括被拦截的应用程序的行为,则获取终端设备中预设时间段的系统日志,其中,预设时间段为用户登录终端设备的时间至应用程序的行为被拦截的时间;

系统日志发送单元352,用于将系统日志以及应用程序的行为发送至服务器中,以使服务器根据系统日志以及应用程序的行为生成应用程序的行为对应的处理反馈信息;

终止反馈接收单元353,用于若接收到的处理反馈信息为终止应用程序的行为,则终止被拦截的应用程序的行为;

放行反馈接收单元354,用于若接收到的处理反馈信息为放行应用程序的行为,则放行被拦截的应用程序的行为。

在具体的应用场景中,如图4所示,该装置还包括:登录信息获取模块36、用户权限获取模块37。

登录信息获取模块36,用于拦截终端设备中的应用程序的行为之前,当用户登录终端设备时,获取用户的登录信息;

用户权限获取模块37,用于根据用户的登录信息,从服务器中获取用户的权限信息以及预设行为权限集。

其中,用户的权限信息包括用户的应用程序白名单。

在具体的应用场景中,如图4所示,行为拦截模块31,具体包括:行为监控单元311、行为拦截单元312、行为终止单元313。

行为监控单元311,用于监控终端设备中应用程序的行为;

行为拦截单元312,用于若应用程序在应用程序白名单中,则拦截应用程序的行为,并解析被拦截的应用程序的行为得到应用程序的编码;

行为终止单元313,用于若应用程序不在应用程序白名单中,则终止应用程序的行为。

在具体的应用场景中,如图4所示,该装置还包括:清空模块38、权限提示模块39、行为上报模块310、应用程序发送模块3011。

清空模块38,用于根据用户的登录信息,从服务器中获取用户的权限信息之后,清空终端设备的本地缓存,存储用户的权限信息以及预设行为权限集。

权限提示模块39,用于终止被拦截的应用程序的行为之后,若被终止的应用程序的行为是前台行为,则输出被终止的应用程序的行为超出权限范围的提示信息;

行为上报模块310,用于若被终止的应用程序的行为不是前台行为,则将被终止的应用程序的行为上报至服务器中。

应用程序发送模块3011,用于当用户登录终端设备时,获取用户的登录信息之前,向服务器发送终端设备中的应用程序信息,以使服务器分别为每个用户分配对应的应用程序白名单以及分别为每个类型的应用程序分配对应的具备运行权限的行为,并根据每个类型的应用程序对应的具备运行权限的行为生成预设行为权限集。

需要说明的是,本申请实施例提供的一种应用程序的权限控制装置所涉及各功能单元的其他相应描述,可以参考图1和图2中的对应描述,在此不再赘述。

基于上述如图1和图2所示方法,相应的,本申请实施例还提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述如图1和图2所示的应用程序的权限控制方法。

基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施场景所述的方法。

基于上述如图1、图2所示的方法,以及图3、图4所示的虚拟装置实施例,为了实现上述目的,本申请实施例还提供了一种计算机设备,具体可以为个人计算机、服务器、网络设备等,该计算机设备包括存储介质和处理器;存储介质,用于存储计算机程序;处理器,用于执行计算机程序以实现上述如图1和图2所示的应用程序的权限控制方法。

可选地,该计算机设备还可以包括用户接口、网络接口、摄像头、射频(radiofrequency,rf)电路,传感器、音频电路、wi-fi模块等等。用户接口可以包括显示屏(display)、输入单元比如键盘(keyboard)等,可选用户接口还可以包括usb接口、读卡器接口等。网络接口可选的可以包括标准的有线接口、无线接口(如蓝牙接口、wi-fi接口)等。

本领域技术人员可以理解,本实施例提供的一种计算机设备结构并不构成对该计算机设备的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件布置。

存储介质中还可以包括操作系统、网络通信模块。操作系统是管理和保存计算机设备硬件和软件资源的程序,支持信息处理程序以及其它软件和/或程序的运行。网络通信模块用于实现存储介质内部各组件之间的通信,以及与该实体设备中其它硬件和软件之间通信。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以借助软件加必要的通用硬件平台的方式来实现,也可以通过硬件实现对终端设备中应用程序的行为进行拦截,进而根据预设行为权限集查询被拦截的应用程序类型的权限信息,从而当该类型的应用程序具备对被拦截的行为的执行权限时,放行该行为,而当该类型的应用程序不具备对被拦截的行为的执行权限时,终止该行为。本申请能够确保应用程序的实际的运行行为不会超出预先规定的权限策略范围,达到应用程序的安全管控的目的,有效的控制应用程序的行为免受恶意程序或恶意人员的操控,提高了系统的安全性。

本发明实施例提供了以下技术方案:

1、一种应用程序的权限控制方法,所述方法包括:

拦截终端设备中的应用程序的行为,并解析被拦截的所述应用程序的行为得到所述应用程序的编码;

根据被拦截的所述应用程序的编码,确定所述应用程序类型;

在预设行为权限集中查询与所述应用程序类型对应的权限信息,其中,所述应用程序类型的权限信息包括与所述应用程序类型对应的任意一个应用程序具备运行权限的行为;

若所述应用程序类型的权限信息包括被拦截的所述应用程序的行为,则放行被拦截的所述应用程序的行为;

若所述应用程序类型的权限信息不包括被拦截的所述应用程序的行为,则终止被拦截的所述应用程序的行为。

2、根据权利要求1所述的方法,所述若所述应用程序类型的权限信息不包括被拦截的所述应用程序的行为,则终止被拦截的所述应用程序的行为,具体包括:

若所述应用程序类型的权限信息不包括被拦截的所述应用程序的行为,则获取所述终端设备中预设时间段的系统日志,其中,所述预设时间段为所述用户登录所述终端设备的时间至所述应用程序的行为被拦截的时间;

将所述系统日志以及所述应用程序的行为发送至服务器中,以使所述服务器根据所述系统日志以及所述应用程序的行为生成所述应用程序的行为对应的处理反馈信息;

若接收到的所述处理反馈信息为终止所述应用程序的行为,则终止被拦截的所述应用程序的行为;

若接收到的所述处理反馈信息为放行所述应用程序的行为,则放行所述被拦截的所述应用程序的行为。

3、根据权利要求1所述的方法,所述拦截终端设备中的应用程序的行为之前,所述方法还包括:

当用户登录所述终端设备时,获取所述用户的登录信息;

根据所述用户的登录信息,从服务器中获取所述用户的权限信息以及所述预设行为权限集。

4、根据权利要求3所述的方法,所述用户的权限信息包括所述用户的应用程序白名单;

所述拦截终端设备中的应用程序的行为,并解析被拦截的所述应用程序的行为得到所述应用程序的编码,具体包括:

监控所述终端设备中所述应用程序的行为;

若所述应用程序在所述应用程序白名单中,则拦截所述应用程序的行为,并解析被拦截的所述应用程序的行为得到所述应用程序的编码;

若所述应用程序不在所述应用程序白名单中,则终止所述应用程序的行为。

5、根据权利要求3所述的方法,所述根据所述用户的登录信息,从服务器中获取所述用户的权限信息之后,所述方法还包括:

清空所述终端设备的本地缓存,存储所述用户的权限信息以及所述预设行为权限集。

6、根据权利要求1所述的方法,所述终止被拦截的所述应用程序的行为之后,所述方法还包括:

若被终止的所述应用程序的行为是所述前台行为,则输出被拦截的所述应用程序的行为超出权限范围的提示信息;

若被终止的所述应用程序的行为不是所述前台行为,则将被终止的所述应用程序的行为上报至服务器中。

7、根据权利要求3至5中任一项所述的方法,所述当用户登录所述终端设备时,获取所述用户的登录信息之前,所述方法还包括:

向所述服务器发送所述终端设备中的应用程序信息,以使所述服务器分别为每个用户分配对应的应用程序白名单以及分别为每个类型的所述应用程序分配对应的具备运行权限的行为,并根据每个类型的所述应用程序对应的具备运行权限的行为生成所述预设行为权限集。

8、一种应用程序的权限控制装置,包括:

行为拦截模块,用于拦截终端设备中的应用程序的行为,并解析被拦截的所述应用程序的行为得到所述应用程序的编码;

应用程序类型确定模块,用于根据被拦截的所述应用程序的编码,确定所述应用程序类型;

行为权限查询模块,用于在预设行为权限集中查询与所述应用程序类型对应的权限信息,其中,所述应用程序类型的权限信息包括与所述应用程序类型对应的任意一个应用程序具备运行权限的行为;

行为放行模块,用于若所述应用程序类型的权限信息包括被拦截的所述应用程序的行为,则放行被拦截的所述应用程序的行为;

行为终止模块,用于若所述应用程序类型的权限信息不包括被拦截的所述应用程序的行为,则终止被拦截的所述应用程序的行为。

9、根据权利要求8所述的装置,所述行为终止模块,具体包括:

系统日志获取单元,用于若所述应用程序类型的权限信息不包括被拦截的所述应用程序的行为,则获取所述终端设备中预设时间段的系统日志,其中,所述预设时间段为所述用户登录所述终端设备的时间至所述应用程序的行为被拦截的时间;

系统日志发送单元,用于将所述系统日志以及所述应用程序的行为发送至服务器中,以使所述服务器根据所述系统日志以及所述应用程序的行为生成所述应用程序的行为对应的处理反馈信息;

终止反馈接收单元,用于若接收到的所述处理反馈信息为终止所述应用程序的行为,则终止被拦截的所述应用程序的行为;

放行反馈接收单元,用于若接收到的所述处理反馈信息为放行所述应用程序的行为,则放行所述被拦截的所述应用程序的行为。

10、根据权利要求8所述的装置,所述装置还包括:

登录信息获取模块,用于拦截终端设备中的应用程序的行为之前,当用户登录所述终端设备时,获取所述用户的登录信息;

用户权限获取模块,用于根据所述用户的登录信息,从服务器中获取所述用户的权限信息以及所述预设行为权限集。

11、根据权利要求10所述的装置,所述用户的权限信息包括所述用户的应用程序白名单;

所述行为拦截模块,具体包括:

行为监控单元,用于监控所述终端设备中所述应用程序的行为;

行为拦截单元,用于若所述应用程序在所述应用程序白名单中,则拦截所述应用程序的行为,并解析被拦截的所述应用程序的行为得到所述应用程序的编码;

行为终止单元,用于若所述应用程序不在所述应用程序白名单中,则终止所述应用程序的行为。

12、根据权利要求10所述的装置,所述装置还包括:

清空模块,用于根据所述用户的登录信息,从服务器中获取所述用户的权限信息之后,清空所述终端设备的本地缓存,存储所述用户的权限信息以及所述预设行为权限集。

13、根据权利要求8所述的装置,所述装置还包括:

权限提示模块,用于终止被拦截的所述应用程序的行为之后,若被终止的所述应用程序的行为是所述前台行为,则输出被终止的所述应用程序的行为超出权限范围的提示信息;

行为上报模块,用于若被终止的所述应用程序的行为不是所述前台行为,则将被终止的所述应用程序的行为上报至服务器中。

14、根据权利要求10至12中任一项所述的装置,所述装置还包括:

应用程序发送模块,用于当用户登录所述终端设备时,获取所述用户的登录信息之前,向所述服务器发送所述终端设备中的应用程序信息,以使所述服务器分别为每个用户分配对应的应用程序白名单以及分别为每个类型的所述应用程序分配对应的具备运行权限的行为,并根据每个类型的所述应用程序对应的具备运行权限的行为生成所述预设行为权限集。

15、一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现权利要求1至7中任一项所述的应用程序的权限控制方法。

16、一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求1至7中任一项所述的应用程序的权限控制方法。

本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本申请所必须的。本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。

上述本申请序号仅仅为了描述,不代表实施场景的优劣。以上公开的仅为本申请的几个具体实施场景,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1