用于来自高级别应用程序许可的细粒度访问控制的框架的制作方法_3

文档序号:8361767阅读:来源:国知局
特征或操作。可以由生成 清单文件的程序员人工地进行对应用程序的熟悉,或者可以利用其它映射技术通过软件自 主地进行对应用程序的熟悉。
[0048] 在方框33中,将低级别MC规则合并入可动态加载策略模块中。一个实例是将 manifest,xml文件中的互联网高级别许可到各自的SELinuxMAC规则的映射识别应用程 序可创建套接字并且指明(在MAC规则中)可使用哪种类型的SCKET、TCP或UDP和被允许的 端口。将每个高级别许可转化成低级别MAC规则,并且将每个经转化的许可捆绑入一个可 加载策略模块(例如,当执行应用程序时可以在SELinux策略中启动的SELinux策略模块)。
[0049] 在步骤34中,将应用程序安装在可加载策略模块中。每次应用程序运行时,在MC 级别中利用被应用程序的策略模块所加强的策略而执行应用程序。
[0050] 为了识别哪种许可是用于每个应用程序(例如,Android?),每个应用程序在其根 目录中具有一个清单文件(例如,AndroidManifest.xml)。清单向操作系统平台提供关于应 用程序的基本信息。在应用程序可以运行任何应用程序的代码之前,此信息必须由操作系 统平台接收。清单通常包括以下内容:(1)清单文件给出用于应用程序的Java包的名称, 其中包名称用作对于应用程序的唯一标识符;(2)清单文件描述了应用程序的组成,例如 构成应用程序的活动、服务、广播接收器和内容提供者。清单文件也给出执行各个组成的类 的名称,并且公布它们的能力(例如,它们可以处理哪些互联网消息)。这种声明允许操作系 统平台了解这些组成是什么以及在什么条件下可以启动它们;(3)清单文件决定哪些进程 将占用应用程序组成;(4)清单文件声明应用程序必须具备哪些许可以便访问API的受保 护部分并且与其它应用程序相互作用;(5)清单文件声明要求其它应用程序具备的许可以 便与应用程序的组成相互作用;(6)清单文件列出了当正在运行应用程序时提供剖析和其 它信息的工具类(这种声明可能仅在正在开发和测试应用程序时存在于清单中,并且在公 布应用程序之前被去除);(7)清单文件声明应用程序所要求的AndroidAPI的最低级别; (8)清单文件列出应用程序必须链接的程序库。
[0051] 许可是限制对装置上的一部分代码或者数据的访问的约束。强加此限制来保护可 能会被误用从而歪曲或损害用户的体验的关键数据和代码。
[0052] 通过唯一的标签来识别每个许可。该标签常常表示被限制的行为。以下是许可的 实例(例如,用于Android的许可): android,permission.CALL_EMERGENCY_NUMBERS android,permission.READ_0WNER_DATA android,permission.SET_WALLPAPER android,permission.INTERNET。
[0053] 此外,图6示出了可以在清单文件中被请求的示例应用程序许可及它们的相关的 访问功能。
[0054] 可以由最多一个的许可来保护一个特征。如果应用程序需要访问由许可保护的一 个特征,那么应用程序必须声明它要求具有在清单中的<uses-permission>元素的许可。 在将应用程序安装在移动装置中后,用户通过对签署应用程序的证书的权威机构进行检查 而确定是否授予被请求的许可,并且在一些情况下询问用户。如果用户授权该许可,那么应 用程序能够使用被保护的特征。如果该许可不被授权,那么在不向用户发出任何通知的情 况下访问这些特征的企图将简单地失败。
[0055] 应用程序也可以保护具有许可的其自身组成(活动、服务、广播接收器和内容提供 者)。它可以采用在被其它应用程序声明的清单许可文件中列出的由操作系统平台所定义 的任何许可,或应用程序可以定义其自身。新的许可被声明具有〈permission〉元素。可以 被保护的活动的一个实例是如下:
【主权项】
1. 一种用于应用程序特征对移动计算装置上的资源的访问控制的方法,包括w下步 骤: 准备应用程序用于经由处理器而安装在所述移动计算装置上; 识别与所述应用程序相关的应用程序许可,所述应用程序许可与所述移动计算装置的 资源访问有关; 确定与所述应用程序许可相关的限制; 基于所述限制,定义用于所述应用程序许可的一组强制访问控制规则; 将所述一组强制访问控制规则与所述应用程序许可合并在可加载强制访问控制策略 模块中;及 将所述可加载强制访问控制策略模块存储在所述移动计算装置的存储器中,所述可加 载强制访问控制策略模块能够由所述移动计算装置的操作系统强制执行。
2. 如权利要求1所述的方法,其中清单文件将所述应用程序许可映射到所述一组强制 访问控制规则。
3. 如权利要求2所述的方法,其中所述清单文件列举出由所述应用程序请求的所述应 用程序许可。
4. 如权利要求3所述的方法,其中将所述清单文件中的所述许可映射到提供用于访问 所述移动计算装置资源的授权规则的所述一组强制访问控制规则。
5. 如权利要求4所述的方法,其中所述强制访问控制规则定义对各自端口的访问。
6. 如权利要求1所述的方法,其中处理器将所述文件中的所述许可转换成所述一组强 制访问控制规则。
7. 如权利要求1所述的方法,其中沙盒框架用于防止所述应用程序访问所述移动计算 装置的资源,其中所述沙盒框架起到在请求的应用程序与所述装置资源之间的代理服务器 的作用。
8. 如权利要求7所述的方法,其中所述代理服务器提供对所述移动装置的系统文件的 虚拟复本的访问,其中只允许对所述系统文件的虚拟复本进行选择性访问,由此防止对所 述移动装置的所述系统文件的访问。
9. 如权利要求7所述的方法,其中所述沙盒框架起到请求的应用程序与控制所述资源 的操作系统之间的代理服务器的作用。
10. -种用于将访问控制安装在移动计算装置上的方法,包括: 在移动计算装置与应用程序分配实体之间建立通信联系,所述应用程序分配实体配置 成当被所述移动计算装置请求时将应用程序传输至所述移动计算装置; 由所述移动计算装置将请求发送至所述应用程序实体,W便下载所述应用程序; 识别与所述应用程序相关的应用程序许可,所述应用程序许可与所述移动计算装置的 资源访问有关; 确定与所述应用程序许可相关的限制; 定义用于所述应用程序许可的一组强制访问控制规则;及 将所述一组强制访问控制规则和所述应用程序许可合并在可加载强制访问控制策略 模块中。
【专利摘要】本发明涉及用于来自高级别应用程序许可的细粒度访问控制的框架。一种用于应用程序特征对移动计算装置上的资源的访问控制的方法。准备应用程序用于经由处理器而安装在移动计算装置上。识别与应用程序相关的应用程序许可。应用程序许可与对移动计算装置的资源的访问有关。确定与应用程序许可相关的限制。基于这些限制,定义用于应用程序许可的一组强制访问控制规则。将这组强制访问控制规则和应用程序许可合并入可加载强制访问控制策略模块中。将可加载强制访问控制策略模块存储在移动计算装置的存储器中,可加载强制访问控制策略模块能够由移动计算装置的操作系统强制执行。
【IPC分类】G06F21-62
【公开号】CN104680075
【申请号】CN201410694627
【发明人】G.D.霍兰德, K.埃德弗拉维, A.诺金
【申请人】通用汽车环球科技运作有限责任公司
【公开日】2015年6月3日
【申请日】2014年11月27日
【公告号】DE102014116750A1, US20150150119
当前第3页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1