一种应用进程权限管理方法和装置制造方法及图纸

技术编号:15763534 阅读:97 留言:0更新日期:2017-07-06 01:33
本发明专利技术实施例公开了一种应用进程权限管理方法和装置,其中,所述应用进程权限管理方法包括:权限管理服务获取应用进程发送的超级权限请求,所述权限管理服务为操作系统中预设的具有超级权限的守护进程;所述权限管理服务为所述应用进程创建对应的代理子进程,所述代理子进程继承所述权限管理服务的超级权限;所述权限管理服务将所述应用进程的进程信息发送给所述应用进程对应的代理子进程;所述代理子进程根据所述应用进程的进程信息反向连接所述应用进程,并代理执行所述应用进程获取的进程命令。采用本发明专利技术,可让应用进程获得超级权限。

Application process authority management method and device

The embodiment of the invention discloses an application process privilege management method and apparatus, which includes the application process management method: Super permissions management service access request sent by the application process, the authority management services with super level permissions daemon operating system default; the rights management services for the application of the process of creating the corresponding agent process, the super authority rights management services to inherit the proxy process; the privilege management service sends the application process information to the application process corresponding to the proxy process; the proxy process according to the process information of the reverse application process the connection of the application process, and the execution of the application process for the process of command. The invention enables the application process to obtain super privileges.

【技术实现步骤摘要】
一种应用进程权限管理方法和装置
本专利技术涉及计算机
,尤其涉及一种应用进程权限管理方法和装置。
技术介绍
在计算机系统中,第三方应用程序一般是以临时用户的身份进行运行的,这使得该应用程序的权限受限,例如不能对系统文件进行访问、增、删、改等操作,因此经常希望安装的应用程序能够得到更高的权限。例如有的android安卓系统的移动设备已经进行了Root设置从而获取了超级管理员用户账户的超级权限,但是在该移动设备中安装的应用程序若需要以root权限运行,则需要通过s位提权,s位即文件的setuid属性,当一个可执行文件拥有setuid属性的时候,执行该文件的用户将获取文件所有者(通常是root用户)的权限。Root用户在Unix系统中拥有最高权限,s位提权即普通权限用户通过执行Root用户拥有的带setuid属性的可执行文件以获得最高权限。但是在android4.3版本之后,引入了SELinux内核模块,并且其他厂商也陆续增加对系统分区s位提权的限制,导致应用程序无法采用旧的root授权方式以超级权限运行。
技术实现思路
有鉴于此,本专利技术实施例提供一种应用进程权限管理方法和装置,可让应用进程获得超级权限。为了解决上述技术问题,本专利技术实施例提供了一种应用进程权限管理方法,所述方法包括:权限管理服务获取应用进程发送的超级权限请求,所述权限管理服务为操作系统中预设的具有超级权限的守护进程;所述权限管理服务为所述应用进程创建对应的代理子进程,所述代理子进程继承所述权限管理服务的超级权限;所述权限管理服务将所述应用进程的进程信息发送给所述应用进程对应的代理子进程;所述代理子进程根据所述应用进程的进程信息反向连接所述应用进程,并代理执行所述应用进程获取的进程命令。相应地,本专利技术实施例还提供了一种应用程序权限管理装置,包括权限管理服务和由所述权限管理服务创建的代理子进程,所述权限管理服务为操作系统中预设的具有超级权限的守护进程,所述代理子进程继承所述权限管理服务的超级权限,其中:所述权限管理服务用于:获取应用进程发送的超级权限请求;为所述应用进程创建对应的代理子进程;将所述应用进程的进程信息发送给所述应用进程对应的代理子进程;所述代理子进程用于:根据所述应用进程的进程信息反向连接所述应用进程,并代理执行所述应用进程获取的进程命令。本专利技术实施例中,应用进程可以通过权限管理服务创建的代理子进程执行高权限的进程命令,包括读写系统文件,调用只用超级权限才能调用的系统接口或功能等,同时由代理子进程反向连接至应用进程,不再需要权限管理服务进行命令或数据的中间转发,节省了中间环节,降低系统开销。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例中的一种应用进程权限管理方法的流程示意图;图2是本专利技术实施例中的创建权限管理服务的流程示意图;图3是本专利技术另一实施例中的应用进程权限管理方法的流程示意图;图4是反向连接前应用进程和代理子进程的工作流示意图;图5是反向连接后应用进程和代理子进程的工作流示意图;图6是本专利技术实施例中的一种应用进程权限管理装置的结构示意图;图7是本专利技术实施例中权限管理服务发出授权确认提示的示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例中提及的应用进程权限管理方法和装置,可以实施在如平板电脑、智能手机、车载终端、电子阅读器、智能穿戴设备等终端中。本专利技术实施例中的应用进程权限管理方法可以由应用进程权限管理装置执行,而本专利技术实施例中的应用进程权限管理装置可以为运行在上述终端中的服务进程。图1是本专利技术实施例中的一种应用进程权限管理方法的流程示意图,如图所示本实施例中的应用进程权限管理方法可以包括以下流程:S101,权限管理服务获取应用进程发送的超级权限请求,所述权限管理服务为操作系统中预设的具有超级权限的守护进程。在可选实施例中,应用进程在需要执行具有高级权限的进程命令时,或接收到用户输入权限提升指令时,可以向权限管理服务发送超级权限请求。示例性的,需要超级权限的应用进程可以通过执行su命令(su命令是linux系统下切换用户身份权限的命令,例如可以应用进程运行内置的su执行程序)依照预设的通讯协议连接至权限管理服务,进而向权限管理服务器发送超级权限请求。具体的,所述守护进程随操作系统启动而启动,随操作系统关闭而关闭,其脱离于界面在后台运行,守护进程脱离于界面是为了避免进程在执行过程中的信息在任何界面上显示并且进程也不会被任何界面所产生的界面信息所打断,这里说的界面即与用户进行交流的对象。本专利技术实施例中的权限管理服务在随操作系统启动后,不会自动降低运行权限,而是保持超级权限运行。本专利技术实施例提供的创建守护进程的方式包括但不限于以下两种:1)将所述权限管理服务的执行文件填充操作系统当前的系统空服务,创建所述权限管理服务。例如可以通过解析操作系统的初始化文件(例如init.rc文件),确定所述初始化文件中描述的系统服务的路径下不存在执行文件,即确定该系统服务为系统空服务;进而将所述权限管理服务的执行文件保存在所述系统空服务的路径下。这样才操作系统启动时,会尝试自动启动初始化文件中描述的所有系统服务,从而启动所述权限管理服务的执行文件。2)将所述权限管理服务的执行文件替换操作系统中已有的系统服务的执行文件,创建所述权限管理服务并代理被替换的系统服务。即将权限管理服务替换原有的系统服务,并在运行权限管理服务的同时代理原有的系统服务,例如负责将数据和信令转发至原有系统服务。S102,所述权限管理服务为所述应用进程创建对应的代理子进程,所述代理子进程继承所述权限管理服务的超级权限。在接收到应用进程发送的超级权限请求后,权限管理服务可以为该应用进程创建与其唯一对应的代理子进程,该代理子进程专门负责为对应的应用进程服务,由于所述权限管理服务具有超级权限,其创建的代理子进程通过继承权限管理服务的权限,因此也是在超级权限下运行。S103,所述权限管理服务将所述应用进程的进程信息发送给所述应用进程对应的代理子进程。所述应用进程的进程信息,可以包括该应用进程的工作流文件的文件标识信息,还可以包括进程ID等,所述工作流文件可以为应用进程的界面读写文件,所述工作流包括输入流、输出流、错误流等,所述应用进程的工作流文件可以为同一文件,也可以根据不同工作流有不同的文件。S104,所述代理子进程根据所述应用进程的进程信息反向连接所述应用进程,并代理执行所述应用进程获取的进程命令。所述反向连接,为应用进程开放进程信息,由其他进程(服务进程)根据进程信息连接应用进程。例如图4所示,在反向连接前,所述代理子进程指向空的工作流文件。如图5所示,在接收到权限管理服务发送的应用进程的本文档来自技高网...
一种应用进程权限管理方法和装置

【技术保护点】
一种应用进程权限管理方法,其特征在于,所述方法包括:权限管理服务获取应用进程发送的超级权限请求,所述权限管理服务为操作系统中预设的具有超级权限的守护进程;所述权限管理服务为所述应用进程创建对应的代理子进程,所述代理子进程继承所述权限管理服务的超级权限;所述权限管理服务将所述应用进程的进程信息发送给所述应用进程对应的代理子进程;所述代理子进程根据所述应用进程的进程信息反向连接所述应用进程,并代理执行所述应用进程获取的进程命令。

【技术特征摘要】
1.一种应用进程权限管理方法,其特征在于,所述方法包括:权限管理服务获取应用进程发送的超级权限请求,所述权限管理服务为操作系统中预设的具有超级权限的守护进程;所述权限管理服务为所述应用进程创建对应的代理子进程,所述代理子进程继承所述权限管理服务的超级权限;所述权限管理服务将所述应用进程的进程信息发送给所述应用进程对应的代理子进程;所述代理子进程根据所述应用进程的进程信息反向连接所述应用进程,并代理执行所述应用进程获取的进程命令。2.如权利要求1所述的应用进程权限管理方法,其特征在于,所述权限管理服务获取应用进程发送的超级权限请求之前还包括:将所述权限管理服务的执行文件填充操作系统当前的系统空服务,创建所述权限管理服务;或将所述权限管理服务的执行文件替换操作系统中已有的系统服务的执行文件,创建所述权限管理服务并代理被替换的系统服务。3.如权利要求2所述的应用进程权限管理方法,其特征在于,所述填充操作系统当前的系统空服务,创建所述权限管理服务包括:解析操作系统的初始化文件,确定所述初始化文件中描述的系统服务的路径下不存在执行文件,即确定该系统服务为系统空服务;将所述权限管理服务的执行文件保存在所述系统空服务的路径下。4.如权利要求1所述的应用进程权限管理方法,其特征在于,所述应用进程的进程信息包括所述应用进程的工作流文件的文件标识信息;所述代理子进程根据所述应用进程的进程信息反向连接所述应用进程,并代理执行所述应用进程获取的进程命令包括:所述代理子进程根据应用进程的工作流文件的文件标识信息,从所述应用进程的输入流文件中获取进程命令,并将执行结果写入所述应用进程的输出流文件或错误流文件。5.如权利要求1所述的应用程序权限管理方法,其特征在于,所述权限管理服务获取应用进程发送的超级权限请求之后还包括:所述权限管理服务对所述应用进程进行鉴权,若鉴权成功则执行为所述应用进程创建对应的代理子进程的步骤。6.如权利要求1-5中任一项所述的应用程序权限管理方法,其特征在于,所述权限管理服务将所述应用进程的进程信息发送给所述应用进程对应的代理子进程...

【专利技术属性】
技术研发人员:庄灿杰
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1