【技术实现步骤摘要】
一种支持Android运行时权限机制的第三方应用间通信访问控制方法
本专利技术属于Android系统访问控制领域,特别涉及一种支持Android运行时权限机制的第三方应用间通信访问控制方法。
技术介绍
Android是目前市场占有率最高的开源移动平台操作系统,系统采用了软件叠层架构,由定制的Linux内核层、中间件层及应用层组成。其中,中间件层提供了大量的系统服务,例如该层中的ActivityManager组件包含了对应用间通信进行强制访问控制的功能。Android系统通过沙箱机制隔离各应用的运行环境(签名相同的应用将运行于同一沙箱内,共享其中的资源与权限);同时,Android权限机制利用由其定义的权限标签以及强制访问控制机制,控制应用对沙箱外资源的访问过程。当应用请求访问沙箱外的资源(包括系统API、其他应用等)时,Android权限机制将根据被访问者所设定的访问权限限制要求,对该应用所拥有的权限进行检查,从而对该访问进行控制。Android系统将其定义的权限分为普通级(Normal),危险级(dangerous),签名级(signature)和系统/签名级(signatureorsystem)。其中,普通权限与危险权限是第三方应用普遍使用的权限类别,而危险权限则进一步根据其功能相关性被分为若干组。由于危险权限涉及通话、短信等敏感服务,更易造成用户损失,成为了各类基于权限的保护技术的关注重点。此外,从Android6.0Marshmallow(APILevel23)开始,Android系统引入了运行时权限机制。应用在安装时,其在Manifest.xml ...
【技术保护点】
一种支持Android运行时权限机制的第三方应用间通信访问控制方法,其特征在于,首先,通过在Android系统中间件层扩展PMS服务和扩展ActivityManager中的ICC监控器;其次,构建应用危险权限编码映射表、访问控制决策管理器及由其动态维护的访问控制信息库;接着,访问控制决策管理器实时查询访问控制信息库中通信请求中双方应用的运行权限,同时更新访问控制信息库,拒绝不具有客体应用危险权限的第三方应用所发起的通信请求,实现对Android第三方应用间通信的访问控制;所述扩展PMS服务是指增加将应用程序最新的危险权限信息与应用UID打包发送至控制决策管理器的过程语句;所述扩展ICC监控器是指对checkComponentPermission()方法增加将通信双方的应用UID打包发送至控制决策管理器,并依据控制决策管理器的决策结果,返回是否允许本次通信;所述访问控制信息库包括访问控制关系图和应用危险权限状态字集,其中,所述访问控制关系图用于记录应用间的合法通信关系的有向图,由邻接矩阵与十字链表构成,所述邻接矩阵记录应用间访问控制关系的合法性计算结果,所述十字链表记录应用间的访问控制关 ...
【技术特征摘要】
1.一种支持Android运行时权限机制的第三方应用间通信访问控制方法,其特征在于,首先,通过在Android系统中间件层扩展PMS服务和扩展ActivityManager中的ICC监控器;其次,构建应用危险权限编码映射表、访问控制决策管理器及由其动态维护的访问控制信息库;接着,访问控制决策管理器实时查询访问控制信息库中通信请求中双方应用的运行权限,同时更新访问控制信息库,拒绝不具有客体应用危险权限的第三方应用所发起的通信请求,实现对Android第三方应用间通信的访问控制;所述扩展PMS服务是指增加将应用程序最新的危险权限信息与应用UID打包发送至控制决策管理器的过程语句;所述扩展ICC监控器是指对checkComponentPermission()方法增加将通信双方的应用UID打包发送至控制决策管理器,并依据控制决策管理器的决策结果,返回是否允许本次通信;所述访问控制信息库包括访问控制关系图和应用危险权限状态字集,其中,所述访问控制关系图用于记录应用间的合法通信关系的有向图,由邻接矩阵与十字链表构成,所述邻接矩阵记录应用间访问控制关系的合法性计算结果,所述十字链表记录应用间的访问控制关系;所述应用危险权限状态字集为Short数组,其中第i个数是UID为10000+i的应用的危险权限状态字;所述危险权限编码映射表是指对具有危险权限的应用进行映射编码;所述访问控制决策管理器包括应用权限信息管理模块和ICC通信处理模块,应用权限信息管理模块通过接收来自扩展的PMS服务的消息,对访问控制信息库进行实时维护;ICC通信处理模块同时通过扩展的ICC通信监控器实时监控Android系统中发起的ICC通信。2.根据权利要求1所述的方法,其特征在于,在系统初次启动时,对访问控制信息库进行初始化,过程如下:首先,应用权限信息管理模块在系统启动时检查访问控制信息库是否已经初始化,并返回结果;若访问控制信息库尚未初始化,应用权限信息管理模块将扫描系统中所有应用的信息,并根据信息更新访问控制信息库中的应用危险权限状态字集,同时将访问控制关系图进行初始化,十字链表初始化为空,并将邻接矩阵初始化为合法性未计算状态。3.根据权利要求1所述的方法,其特征在于,所述访问控制决策管理器实时查询访问控制信息库中通信请求中双方应用的运行权限,同时更新访问控制信息库的过程如下:首先,依据发起通信请求的应用方查询邻接矩阵中通信请求双方的访问控制关系是否合法,返回查询结果;若所查询的访问控制关系合法性尚未计算,则依据危险权限比较方法计算通信请求双方的访问控制关系的合法性,将合法性计算结果返回,并更新邻接矩阵,且在十字链表中增加通信请求双方间的访问控制关系节点。4.根据权利要求3所述的方法,其特征在于,应用权限信息管理模块对访问控制信息库的维护过程如下:1.1)在系统开机时对访问控制信息库进行检查,若访问控制信息库尚未初始化,则调用扩展的PMS服务扫描应用信息,通过查询危险权限编码映射表将已安装应用的危险权限状态写入访问控制信息库中的应用危险权限状态字集中,并将访问控制关系图初始化;1.2)当接...
【专利技术属性】
技术研发人员:徐旸,李建彬,曾泉润,高武强,莫斌基,
申请(专利权)人:中南大学,
类型:发明
国别省市:湖南,43
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。