一种应用程序的安装控制方法及装置与流程

文档序号:21201843发布日期:2020-06-23 19:24阅读:264来源:国知局
一种应用程序的安装控制方法及装置与流程

本发明涉及系统安全技术领域,具体涉及一种应用程序的安装控制方法及装置。



背景技术:

安卓应用在安卓智能终端系统领域的使用非常广泛,安卓应用的种类也非常多,根据应用的功能可以区分为电话应用、相机应用、支付应用、视频应用等等。不同的应用都需要通过安装才可以在设备上正常使用,但是目前市面上的安卓应用鱼龙混杂,很多应用没有通过检验,安卓智能终端很容易遭受一些恶意应用的诱导或者攻击。对于一些普通使用者来说,是很难识别恶意应用的,现有技术中,已经存在了采用白名单检测的方法验证应用的安全性。

然而,这种应用白名单机制却只能设置应用的白名单,对应用的验证方式较单一,安卓设备依然容易遭受恶意应用的诱导和攻击,造成不必要的损失。因此,有必要提供一种保证智能终端中安装的应用的安全性;便于用户对应用进行安装、管理的应用程序安装控制方法。



技术实现要素:

本发明目的在于提供一种应用程序的安装控制方法及装置,以解决现有技术中所存在的一个或多个技术问题,至少提供一种有益的选择或创造条件。

为了实现上述目的,本发明提供以下技术方案:

一种应用程序的安装控制方法,包括:

当检测到安装事件发生时,对应用程序进行证书验证;

当该应用程序具有指定签名时,对所述应用程序进行安装。

进一步,所述对应用程序进行证书验证之前,还包括:

判断待安装的应用程序是否在白名单中,若是,则判断该应用程序是否为白名单应用;

当待安装的应用程序为白名单应用时,对所述应用程序进行安装。

进一步,对所述应用程序进行安装这一步骤,还包括:

验证所述应用程序是否为可安装文件,若是,则对所述应用程序进行安装。

进一步,当该应用程序具有指定签名时,还包括:

当该应用程序被标记为非白名单并且证书验证不通过时,则阻止该应用程序的安装并且发出应用程序错误的提示信息。

进一步,所述白名单应用由设备管理者配置生成。

一种应用程序的安装控制装置,包括:

证书验证模块,用于当检测到安装事件发生时,对应用程序进行证书验证;

应用安装模块,用于当该应用程序具有指定签名时,对所述应用程序进行安装。

进一步,所述装置还包括:

白名单验证模块,用于判断待安装的应用程序是否在白名单中,若是,则判断该应用程序是否为白名单应用;当待安装的应用程序为白名单应用时,对所述应用程序进行安装。

进一步,白名单验证模块中对所述应用程序进行安装,具体为:

验证所述应用程序是否为可安装文件,若是,则对所述应用程序进行安装。

进一步,所述装置还包括:

阻止安装模块,用于当该应用程序被标记为非白名单并且证书验证不通过时,则阻止该应用程序的安装并且发出应用程序错误的提示信息。

进一步,所述白名单应用由设备管理者配置生成。

本发明的有益效果是:本发明公开一种应用程序的安装控制方法及装置,当检测到安装事件发生时,对应用程序进行证书验证;当该应用程序具有指定签名时,对所述应用程序进行安装。本发明可保证智能终端中安装的应用的安全性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例一种应用程序的安装控制方法的流程示意图;

图2是本发明实施例一种应用程序的安装控制装置的结构示意图。

具体实施方式

以下将结合实施例和附图对本公开的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本公开的目的、方案和效果。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

参考图1,如图1所示为一种一种应用程序的安装控制方法,包括以下步骤:

步骤s100、当检测到安装事件发生时,对应用程序进行证书验证;

其中,应用程序可以是用户自行开发的程序软件,也可以是网上下载的第三方软件。

步骤s200、当该应用程序具有指定签名时,对所述应用程序进行安装。

本实施例中,通过签名工具对生成的应用进行签名,以标识该应用是否可信。

在一个优选的实施例中,对应用程序进行证书验证之前,还包括:

判断待安装的应用程序是否在白名单中,若是,则判断该应用程序是否为白名单应用;

当待安装的应用程序为白名单应用时,对所述应用程序进行安装。

例如:如果待安装程序不是白名单应用,但签名通过了证书的验证,则该待安装程序可被执行安装;如果待安装程序不是白名单应用,且签名没通过证书的验证,则该待安装程序不可被执行安装。

本实施例中,应用程序通过开发工具生成之后需要通过用户特定的签名工具对应用进行签名,这个签名限制了应用是否属于用户可信的应用,通过签名可以知道应用是否为用户合法的应用,然后再设置系统中应用安装的白名单,使系统具有白名单和证书双重验证。

本实施例还提供名单归类,名单归类是限制应用的第一道关口,这个机制可以验证应用是否属于白名单,将应用归类为白名单应用和非白名单应用,具有归类应用的功能,同时白名单应用将会被标签为特权应用,是客户的可信应用,因此这类应用可以绕过证书验证,直接安装到设备系统中。

白名单验证功能通过应用签名及白名单设置之后,当执行安装应用程序的过程中会对该应用程序是否为白名单应用进行验证,验证得出通过或非通过的结论,然后执行相应的处理流程。

白名单应用归类是指通过白名单验证之后,将应用归类为白名单应用和非白名单应用,如果是白名单应用的话会被标签为特权应用,可以不进行权限验证就可以安装,如果是非白名单应用则需要通过权限验证流程,通过后才能安装。

在一个优选的实施例中,对所述应用程序进行安装这一步骤,还包括:

验证所述应用程序是否为可安装文件,若是,则对所述应用程序进行安装。

在一个优选的实施例中,当该应用程序具有指定签名时,还包括:

当该应用程序被标记为非白名单并且证书验证不通过时,则阻止该应用程序的安装并且发出应用程序错误的提示信息。

本实施例还提供权限验证,权限验证是对被归类的应用是否符合安装条件进行验证,分为权限验证和证书验证两个处理流程,分别是处理应用分类之后的白名单应用和非白名单应用。

权限验证主要是再次验证应用是否属于白名单应用,如果是白名单应用的话就直接验证该应用是否为标准安卓应用,接着检测应用是否为合法的标准安卓应用,该步骤和应用安装流程一致。

证书验证功能和权限验证功能不同,证书验证功能是验证非白名单应用,白名单应用是不需要通过证书验证的,证书验证会根据应用是否含有证书限定的签名进行验证,如果具有条件则允许安装,如果不具有则不允许安装。

安装管理功能模块分为应用管理和应用安装两个部分,应用管理主要是在白名单分类后的基础上再次对应用进行分类管理,即哪些应用可以安装,哪些应用不可以安装,当被标记为非白名单并且证书验证不通过的时候,应用不可以被安装并且提示用户相关信息。

应用管理主要是用户在白名单分类的基础上,对应用再次分类是否可安装应用,一来检查应用是否存在于白名单,二来检查应用如果不是白名单的情况下有没有相关的签名是否通过证书的验证,然后将应用分类可安装和不可安装。

应用安装主要是对于不能安装的应用禁止走安装流程,并且返回相关的错误信息给到用户终端,然后将可以安装应用的走正常安装流程正常使用。

在一个优选的实施例中,所述应用白名单由设备管理者配置生成。应用白名单根据需要自主添加、删除和修改。

参考图2,本发明实施例还提供一种应用程序的安装控制装置,包括:

证书验证模块100,用于当检测到安装事件发生时,对应用程序进行证书验证;

应用安装模块200,用于当该应用程序具有指定签名时,对所述应用程序进行安装。

在一个优选的实施例中,所述装置还包括:

白名单验证模块,用于判断待安装的应用程序是否在白名单中,若是,则判断该应用程序是否为白名单应用;当待安装的应用程序为白名单应用时,对所述应用程序进行安装。

在一个优选的实施例中,白名单验证模块中对所述应用程序进行安装,具体为:

验证所述应用程序是否为可安装文件,若是,则对所述应用程序进行安装。

在一个优选的实施例中,所述装置还包括:

阻止安装模块,用于当该应用程序被标记为非白名单并且证书验证不通过时,则阻止该应用程序的安装并且发出应用程序错误的提示信息。

在一个优选的实施例中,所述白名单应用由设备管理者配置生成。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,人脸识别终端、手持终端,或者网络设备等)执行本发明各个实施例所述的方法。

尽管本公开的描述已经相当详尽且特别对几个所述实施例进行了描述,但其并非旨在局限于任何这些细节或实施例或任何特殊实施例,而是应当将其视作是通过参考所附权利要求,考虑到现有技术为这些权利要求提供广义的可能性解释,从而有效地涵盖本公开的预定范围。此外,上文以发明人可预见的实施例对本公开进行描述,其目的是为了提供有用的描述,而那些目前尚未预见的对本公开的非实质性改动仍可代表本公开的等效改动。

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