在电子终端中管理应用程序权限的方法与流程

文档序号:11691232阅读:284来源:国知局
在电子终端中管理应用程序权限的方法与流程

本申请是向中国知识产权局提交的申请日为2016年2月25日、申请号为201610102898.2、发明名称为“在电子终端中管理应用程序权限的方法”的申请的分案申请。

本发明总体来说涉及电子终端应用程序安全管理领域。更具体地讲,涉及一种在电子终端中管理应用程序权限的方法。



背景技术:

目前,在嵌入式操作系统中,应用程序权限管理的方式主要有两种,一种是静态的权限管理方式,这种权限管理方式只有在应用程序安装的时候呈现它所有的权限,如果用户对某些权限有异议,只能选择安装或者不安装该应用程序,并且对于已经安装的应用程序,嵌入式操作系统的权限管理仅仅能实现允许或者拒绝应用程序,如果拒绝该应用程序意味着卸载该应用程序,因此,虽然静态的权限管理直观高效,但是缺乏灵活性;另一种是动态的权限管理方式,这种权限管理方式可以在应用程序安装的时候配置权限列表,也可以在应用程序真正使用特定权限的时候由用户来确定是否赋予该特定权限,但由于在用户赋予权限的过程中需要修改系统中的各种应用程序编程接口(api)的代码,因此扩展性较差,此外,如果需要增加新的权限检查还需要修改对应的api的代码,因此移植性较差。



技术实现要素:

本发明的示例性实施例在于提供一种在电子终端中管理应用程序权限的方法,通过所述方法,能够克服现有的在电子终端中管理应用程序权限的方法灵活性、扩展性和移植性较差的缺陷。

根据本发明示例性实施例,提供一种在电子终端中管理应用程序权限的方法,包括:(a)获取初始诊断脚本以创建诊断器,其中,所述初始诊断脚本的结构包括文件头和文件内容,其中,所述文件头包括应用程序名称、权限诊断点名称、应用程序编程接口、与权限诊断点相应的指令以及当与权限诊断点相应的指令被执行时针对执行的指令的用户决定;(b)根据诊断器的控制,在诊断模式下运行目标应用程序;(c)当在目标应用程序运行过程中某个权限诊断点被触发时,执行与所述权限诊断点相应的指令,并记录针对执行的指令的用户决定。

可选地,所述方法还包括:(d)确定是否需要更新所述初始诊断脚本;(e)当确定需要更新所述初始诊断脚本时,使用记录的用户决定更新所述初始诊断脚本。

可选地,所述方法还包括:(f)确定目标应用程序是否结束;(g)当确定目标应用程序未结束时,返回步骤(c);(h)当确定目标应用程序结束时,使用记录的用户决定更新所述初始诊断脚本,并退出诊断模式。

可选地,所述初始诊断脚本为预先配置的诊断脚本或者电子终端默认的诊断脚本。

可选地,通过预定的配置器提供的用户界面来配置诊断脚本。

可选地,所述权限诊断点指示与目标应用程序的权限相关的功能点。

可选地,所述方法还包括:响应于用户确定所述目标应用程序是安全的应用程序的指示,退出诊断模式。

可选地,所述方法还包括:响应于用户确定所述目标应用程序是不安全的应用程序的指示,卸载所述目标应用程序。

可选地,步骤(a)包括:确定所述目标应用程序是否安全,并且当确定所述目标应用程序不安全时,获取所述初始诊断脚本以创建诊断器。

在根据本发明示例性实施例的在电子终端中管理应用程序权限的方法中,不仅可以灵活地在电子终端中设置目标应用程序的相关的权限,并且,诊断器的加入使得用户在赋予权限的过程中无需修改系统中的各种api的代码,改善了权限管理的扩展性。此外,在配置目标应用程序的诊断脚本时还可通过配置器来增加新的权限诊断点,并且在配置的过程中无需修改对应的api代码,因此,改善了权限管理的移植性。

附图说明

通过下面结合示例性地示出实施例的附图进行的详细描述,本发明示例性实施例的上述和其他目的将会变得更加清楚,其中:

图1示出根据本发明示例性实施例的在电子终端中管理应用程序权限的方法的流程图;

图2示出根据本发明示例性实施例的诊断模式的进程关系图。

具体实施方式

现将详细参照本发明的示例性实施例,所述实施例的示例在附图中示出,其中,相同的标号始终指的是相同的部件。

图1示出根据本发明示例性实施例的在电子终端中管理应用程序权限的方法的流程图。作为示例,所述方法可由管理应用程序权限的电子终端来执行,这里,所述电子终端可以是智能手机、平板电脑、个人计算机、游戏机、多媒体播放器等安装有多个应用程序的电子终端。

如图1所示,在步骤s100,获取初始诊断脚本以创建诊断器。

这里,所述初始诊断脚本是一种依据一定的格式编写的可执行文件,可由操作系统进行加载执行。具体说来,所述初始诊断脚本的结构包括文件头和文件内容,其中,所述文件头包括应用程序名称、权限诊断点名称、应用程序编程接口(api)、与权限诊断点相应的指令以及当与权限诊断点相应的指令被执行时针对执行的指令的用户决定,所述文件内容是与文件头所包括的配置项目(例如,权限诊断点名称等)对应的内容。这里,所述权限诊断点可指示与目标应用程序的权限相关的功能点,例如,权限诊断点可以为“打开wifi”。

通常,每个应用程序可对应一个诊断脚本,这里,以目标应用程序为微信应用程序为例,所述初始诊断脚本的结构可如下表1所示:

表1初始诊断脚本的结构

作为示例,所述初始诊断脚本可以为预先配置的诊断脚本或者电子终端默认的诊断脚本。此外,当用户需要对初始诊断脚本进行重新配置时,还可以通过预定的配置器提供的用户界面来编辑诊断脚本。例如,用户可以通过配置器提供的用户界面来配置权限诊断点或者与权限诊断点相应的指令等。通过配置器提供的用户界面来编辑诊断脚本,可以提高权限诊断点以及与权限诊断点相应的指令等设置的灵活性。

在根据本发明的另一示例性实施例中,基于对应用程序的下载来源的信任程度的不同,用户可预先选择不安全的应用程序并将其作为目标应用程序,并进一步在电子终端中利用诊断器来对用户认为不安全的应用程序进行后续的权限诊断。例如,在步骤s100,可确定所述目标应用程序是否安全,并且当确定所述目标应用程序不安全时,获取所述初始诊断脚本以创建诊断器。通过这种方式,可以有针对性地对目标应用程序进行诊断,加快了应用程序的运行速度。根据本发明的示例性实施例,初始诊断脚本可以是预先存储在本地存储器中,或者可从网络下载到本地存储器中。并且当执行所述方法时,初始诊断脚本可以被加载到缓存中。

在步骤s200,根据诊断器的控制,在诊断模式下运行目标应用程序。

图2示出根据本发明示例性实施例的诊断模式的进程关系图。

如图2所示,相对于正常模式下目标应用程序由其父进程直接产生,诊断模式下父进程先产生诊断器进程,再由诊断器进程产生目标应用程序进程,因此,诊断器进程可完全地控制目标应用程序进程。

参照图1和图2,在步骤s310,检测目标应用程序运行过程中是否有某个权限诊断点被触发;当在目标应用程序运行过程中并没有权限诊断点被触发时,返回执行步骤s310;当在目标应用程序运行过程中某个权限诊断点被触发时,在步骤s320,执行与所述权限诊断点相应的指令,并记录针对执行的指令的用户决定。这里,所述某个权限诊断点可以是创建诊断器进程之前预先配置的权限诊断点,或者,所述某个权限诊断点是通过预定的配置器提供的用户界面在初始诊断脚本中新配置的权限诊断点。具体说来,当在目标应用程序运行过程中某个权限诊断点被触发时,诊断器可基于初始诊段脚本对所述权限诊断点被触发的事件作出响应(例如,执行与所述权限诊断点相应的指令),并记录针对执行的指令的用户决定。

例如,当目标应用程序为微信应用程序时,所述初始诊断脚本的结构可如上表1所示(即,表1的内容是微信应用程序所对应的初始诊断脚本的配置)。基于表1的内容可知:微信应用程序的初始诊断脚本中设置的权限诊断点为“打开wifi”、“发送短信”、“打开数据”,当其中“打开数据”的权限诊断点被触发时,按照初始诊断脚本中记录的对应关系,诊断器可对权限诊断点“打开数据”被触发的事件作出响应——在用户界面接口显示警告的提示以确定用户对“打开数据”的权限的决定,用户可以通过对用户界面接口显示的警告的提示(例如,“总是打开”、“总是询问”或“总是禁止”等)进行操作以作为对“打开数据”权限的决定,诊断器可执行并记录用户对“打开数据”的权限的决定。这里,应理解,在其他的权限诊断点被触发时,诊断器可采用相似的方式进行处理。

通过上述方式,不仅可以灵活地在电子终端中设置目标应用程序的相关的权限,并且,诊断器的加入使得用户在赋予权限的过程中无需修改系统中的各种api的代码,改善了权限管理的扩展性。此外,在配置目标应用程序的诊断脚本时还可通过配置器来增加新的权限诊断点,并且在配置的过程中无需修改对应的api代码,因此,改善了权限管理的移植性。

在本发明的另一示例性实施例中,图1示出的在电子终端中管理应用程序权限的方法可还包括更新初始诊断脚本的步骤。

具体说来,再次参照图1,在步骤s400,确定是否需要更新所述初始诊断脚本。

当确定需要更新所述初始诊断脚本时,在步骤s500,使用记录的用户决定更新所述初始诊断脚本。这里,作为示例,可使用记录的用户决定更新缓存中的初始诊断脚本中的相关内容(例如,与权限诊断点相应的指令被执行时针对执行的指令的用户决定)。

接下来,在步骤s600,确定目标应用程序是否结束。此外,当确定不需要更新所述初始诊断脚本时,同样执行步骤s600。这里,应注意,当确定不需要更新所述初始诊断脚本时,可还按照先前的初始诊断脚本,在诊断模式下运行目标应用程序并检测权限诊断点是否被触发。

当确定目标应用程序未结束时,返回执行步骤s310。

当确定目标应用程序结束时,在步骤s700,使用记录的用户决定更新所述初始诊断脚本,并退出诊断模式。这里,作为示例,可使用记录的用户决定更新本地存储器中的初始诊断脚本中的相关内容(例如,与权限诊断点相应的指令被执行时针对执行的指令的用户决定)。

这里,附加地,作为另一示例,当利用了诊断器对目标应用程序诊断了一段时间后,用户还可以根据对目标应用程序的信任程度来选择是否继续通过诊断器来管理目标应用程序的权限。

例如,当用户主观认为目标应用程序是安全的应用程序时,可发出确认目标应用程序是安全的应用程序的指示,诊断器可响应于用户确定所述目标应用程序是安全的应用程序的指示,退出诊断模式。此外,当用户主观上确认所述目标应用程序是不安全的应用程序时,诊断器还可响应于用户确定所述目标应用程序是不安全的应用程序的指示,卸载所述目标应用程序。通过这种方式,能够使目标应用程序高效地运行。

综上所述,在根据本发明示例性实施例的在电子终端中管理应用程序权限的方法中,不仅可以灵活地在电子终端中设置目标应用程序的相关的权限,并且,诊断器的加入使得用户在赋予权限的过程中无需修改系统中的各种api的代码,改善了权限管理的扩展性。此外,在配置目标应用程序的诊断脚本时还可通过配置器来增加新的权限诊断点,并且在配置的过程中无需修改对应的api代码,因此,改善了权限管理的移植性。

应注意,本发明的以上各个实施例仅仅是示例性的,而本发明并不受限于此。本领域技术人员应该理解:在不脱离本发明的原理和精神的情况下,可对这些实施例进行改变,其中,本发明的范围在权利要求及其等同物中限定。

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