[发明专利]一种获取和释放root权限的方法有效
申请号: | 201410303803.4 | 申请日: | 2014-06-30 |
公开(公告)号: | CN104063303B | 公开(公告)日: | 2019-07-16 |
发明(设计)人: | 周玲莉;耿兴欢 | 申请(专利权)人: | 上海斐讯数据通信技术有限公司 |
主分类号: | G06F21/57 | 分类号: | G06F21/57 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 201620 上海市松*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 获取 释放 root 权限 方法 | ||
一种获取和释放root权限的方法,应用程序使用系统调用与linux内核通信,向linux内核发送权限设置命令,linux内核根据权限设置命令修改进程控制结构中的应用程序进程的权限控制变量;当应用程序需要获取root权限时,应用程序向linux内核发送获取root权限命令,linux内核将进程控制结构中的应用程序进程的权限控制变量修改为root进程权限值,从而使应用程序apk进程获得root权限;当应用程序需要释放root权限时,应用程序向linux内核发送释放root权限命令,linux内核将进程控制结构中的应用程序进程的权限控制变量修改为原始权限值,从而使应用程序apk恢复原始权限。本发明减少了频繁执行su命令的内存占用和时间开销。
技术领域
本发明涉及一种获取和释放root权限的方法,尤其涉及一种在安卓(Android)操作系统中应用程序获取和释放root权限的方法。
背景技术
在安卓(Android)操作系统中,为每一个应用程序(apk)创建了一个用户和组。这个用户和组都是受限用户,不能访问系统的数据,只能访问自己的文件和目录,当然该应用程序(apk)也不能访问其他应用程序的数据。这样的设计可以尽可能地保护应用程序的私有数据,增强系统的安全性和健壮性。但是有一些应用程序(apk)是需要访问一些系统资源,一般情况下系统(system)用户权限就够用了,但是有些情况下system权限还是不够的,这时应用程序就需要root权限。
安卓(Android)框架是基于Linux内核构建,所以安卓(Android)安全系统也是基于Linux的安全架构建立的。在Linux安全系统中,用户和组起着重要作用,Linux中所有的资源给不同的用户和用户组设置了不同的访问属性。安卓(Android)与Linux分别有自己的一套严格的安全及权限机制。比如:-rwxr-xr-x system system 4156 2013-03-03 11:00test.apk,这个安卓(Android)应用程序文件代表的是系统(system)用户拥有对此文件的读写执行权限,系统(system)组的用户对此文件拥有读、执行权限,其他人对此文件只具有执行权限。而test.apk文件运行起来具有的权限完全与此不相关,千万不要看应用程序(apk)文件系统上属于system/system用户及用户组,或者root/root用户及用户组,就认为应用程序(apk)具有system或root权限。通过文件系统看到的权限,是其他程序操作这个文件时所需要的权限,而不是这个文件所具有的的权限。现有的方案是使应用程序(apk)执行su命令获取root权限。su命令是linux中获取root权限的工具程序。在java语言中,借助安卓(Android)应用程序执行linux命令的标准接口:Runtime.getRuntime().exec(Stringcommand)(其中的command表示要执行的linux命令)访问底层Linux下的程序或脚本,就能执行su命令,使应用程序(apk)具有root权限。由于需要su程序获得root权限,并且只有执行su命令的应用程序(apk)才能拥有root权限,就造成了应用程序频繁执行su命令,造成时间和内存占用的增加,同时,su命令这种方式只能执行linux命令,不方便执行复杂操作。
发明内容
本发明提供一种获取和释放root权限的方法,能够减少频繁执行su命令的内存占用和时间开销。
为了达到上述目的,本发明提供一种获取和释放root权限的方法,应用程序使用系统调用与linux内核通信,向linux内核发送权限设置命令,linux内核根据权限设置命令修改进程控制结构中的应用程序进程的权限控制变量;
当应用程序需要获取root权限时,应用程序向linux内核发送获取root权限命令,linux内核将进程控制结构中的应用程序进程的权限控制变量修改为root进程权限值,从而使应用程序apk进程获得root权限;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海斐讯数据通信技术有限公司,未经上海斐讯数据通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410303803.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:用于DQS自动门控的电路和方法
- 下一篇:一种窗口任务处理的方法及装置