对计算机设备上存储区的应用程序级存取特权的制作方法

文档序号:6428858阅读:519来源:国知局
专利名称:对计算机设备上存储区的应用程序级存取特权的制作方法
技术领域
本发明一般涉及计算机设备中所使用的应用程序的处理,尤其涉及把应用程序存储在文件结构中并且限制应用程序对计算机设备上存储区的存取。
背景无线通信最近几年经历了蓬勃发展。随着用户和企业越来越依赖于他们的无线设备,比如移动电话和个人数字助理(PDA),无线服务提供商,即通信公司,争取提供这些无线设备上的附加功能。该附加功能不仅会增加对无线设备的需求,而且会增加目前用户间的使用率。
当考虑到应用程序在无线设备上的执行时,无线设备的环境产生了独特的难题。需要开发下载应用程序并删除应用程序的方法。此外,需要无线设备上的安全性。无线设备上的安全性关系包括以可能的最佳方式控制环境,使得应用程序不能有意或无意地降级或破坏无线设备上的其它文件或者无线设备在其上通信的网络。
应用程序在执行期间可以执行各种操纵,比如读、写、以及修改设备上存储的或者设备可存取的文件。这些文件可以是如设备驱动器这样的设备所使用的系统文件、其它应用程序文件或者数据文件。
期望控制应用程序对设备可存取的其它文件的存取,作为一种安全性措施,用于限制应用程序会作用于设备或与设备相连的任何系统上的任何破坏。这种破坏可能是通过应用程序上的病毒有意造成,或者是无意的,其中应用程序根据写得很差的代码执行,从而无意地支配了资源、破坏了其它应用程序或数据。
目前,控制应用程序对存取器的存取的仅有方法包括定义用户的特许级别。可以给予用户一个特许级别,允许用户读、写或修改各种存储区内的文件。这种机制仅仅控制用户级的存取。
然而,这种实践不允许根据应用程序执行来限制存储区存取。尽管用户自身试图限制应用程序对存储器的存取,然而用户所执行的应用程序全都得到对存储器的相同存取,如为用户定义的。而且,不存在限制应用程序对用户控制外的存储器的存取的机制。
因而,本领域中需要一种用于限制应用程序对存储器的存取的系统和方法。此外,最好建立这种限制,使设备或设备的用户不能改变应用程序上施加的存取限制。
发明概述符合本发明的系统和方法通过为应用程序存储创建较安全的环境并且限制应用程序对其它存储区的存取,从而克服了现有系统的缺点。而且,符合本发明的系统和方法提供了一种机制,使得设备和/或设备的用户不能改变应用程序上施加的存取限制。
在一实施例中,本发明提供了一种在设备上执行应用程序的方法,包括以下步骤接收执行应用程序的请求;确定应用程序是否被修改;在应用程序未被修改的情况下,把应用程序映射到唯一的存储单元;许可应用程序对唯一存储单元的存取;以及拒绝第二应用程序对唯一存储单元的存取。
在另一实施例中,本发明提供了一种具有文件结构的设备,包括用于把文件存储在文件结构中的控制程序,其中所述控制程序可用于在文件结构内存储多个应用程序,各个应用程序都有文件结构的一个相关部分,控制程序可用于许可每个应用程序对其相关部分的存取,并拒绝各个应用程序对存储区其它相关部分的存取。
在还有一实施例中,本发明提供了在设备上存储应用程序的方法,包括以下步骤在设备处接收应用程序;把应用程序存储在设备上的存储器中;以及独立于设备上的用户存取特权,限制应用程序只能对存储器上唯一部分进行存取。下列描述和附图中还描述了本发明的进一步实施例。
附图简述通过下面提出的结合附图的详细描述,本发明的特征、性质和优点将变得更加明显,附图中相同的元件具有相同的标识,其中

图1是描述带有存储器的计算机设备的框图,其中可实践本发明的示例性实施例;图2是描述本发明一示例性实施例中,包含具有存储器的无线设备以及应用程序存取进程的无线系统结构的框图;图3是描述在实现本发明示例性实施例中使用的文件结构的框图4是描述本发明一示例性实施例中存储应用程序的进程的流程图,该进程限制了应用程序对设备的存储区的存取;以及图5是描述本发明一示例性实施例中限制应用程序对存储区的存取的进程流程图。
优选实施例的详细描述现在将参考附图来描述说明性的实施例和示例性的应用来揭示本发明的有利原理,附图中相同的符号代表相同或相应的部分。在结合附图考虑了下列详细描述后,本发明的性质、目的和优点对于本领域的技术人员来说将变得更为明显。
引言本发明限制了应用程序对计算机设备上的存储区的存取。设备上的同一用户可以安装多个应用程序。用户可以具有对所有应用程序以及各个应用程序的存储区的存取。然而,符合本发明的系统和方法限制了各个应用程序对分配给特定应用程序以外的存储区的存取。通过根据应用程序而非根据用户来定义这一存取,通过减少由于应用程序覆写或不适当地存取该应用程序不应存取的存储区而产生的不希望结果,可以实现较安全的应用程序执行。即使在执行应用程序的用户有权存取应用程序被禁止存取的其它存储区时也提供了这种增加的安全级别。
而且,符合本发明的系统和方法还提供了对共享存储区的存取,使得多个应用程序可以维持它们专用和安全的区域,但也可以与其它应用程序共享文件,比如文件和库。
本领域的技术人员会认识到,为了描述简洁,上面的内容描述了发布或执行的应用程序文件类型。“应用程序”还可以包括具有可执行内容的文件,比如对象代码、脚本、java文件、收藏夹文件(或PQA文件)、WML脚本、字节代码以及perl脚本。此外,这里所指的“应用程序”还可以包括实质上不可执行的文件,比如需要被打开的文档或者需要被存取的其它数据文件。
图1是描述带有存储器的计算机设备的框图,其中可实践本发明的示例性实施例。在该示例性实施例中,计算机设备105包含通过总线130互连的存储器110、CPU 115和输入/输出(I/O)接口120。本领域的技术人员会认识到,这些仅仅是计算机设备中包含的一些组件。而且,可以使用使计算机设备的各个组件互连的许多其它范例。
计算机设备105可以通过网络100与外部系统相接,还可以通过I/O设备125(比如通过CD-ROM、智能卡或软盘)把应用程序或其它数据接收到I/O接口120内。计算机设备105的存储区110用于存储被接收到计算机设备105内的数据和应用程序。存储区110可以包括硬盘驱动器、闪存或其它存储手段(未示出)。而且,计算机设备可以把其它信息存储在存储区110中,比如操作系统文件、源文件、配置文件和库。然而,也可以使用分开的存储区,比如ROM、EPROM和RAM来存储这些或其它文件。
计算机设备可以是在连到网络100时有固定位置的个人计算机,或者是在与网络100通信时可以改变其地理位置的移动无线设备。
应用程序135可以通过网络100或通过I/O设备125被计算机设备所接收。如上所述,这些应用程序包括、但不限于具有可执行内容的文件,比如对象代码、脚本、java文件、收藏夹文件(或PQA文件)、WML脚本、字节代码和perl脚本。
网络100可以是结合个人和公共网络的陆线网络,比如因特网,或者可以结合RF网络,比如用户无线通信的RF网络。
在本发明一实施例中,计算设备105还可以包含一控制程序,比如由高通(QUALCOMM)公司开发的BREW API。控制程序可用于协调存储机制,它为应用程序提供了有限的存取,如这里所公开的一样。
图2是描述本发明一示例性实施例中,包含具有存储器的无线设备以及应用程序存取进程的无线系统结构的框图。中央服务器202是一实体,其或由自身或与认证服务器组合以认证与程序设计标准或惯例所定义的集合兼容的应用程序。如上所述,可以建立这些程序设计标准,使得应用程序会在高通公司开发的BREWTM软件平台上执行。
在一实施例中,中央服务器数据库204包括在任何时刻被下载到网络200内的各个无线设备230的各个应用程序的标识记录、下载应用程序的个体的电子服务号(“ESN”)以及对于传递该应用程序的无线设备230唯一的移动标识号(“MIN”)。或者,中央服务器数据库204包含无线设备模型的网络200中的各个无线设备230、无线网络载体、使用无线设备230的区域以及对标识哪个无线设备230传递哪些应用程序有用的任何其它信息的记录。此外,中央服务器数据库也可以存储与应用程序相关的这个开发者标识信息。
中央服务器202在网络208上,比如因特网(最好是安全的),与一个或多个计算机服务器206进行通信。服务器206也可以通过网络208与载体网络210进行通信。载体网络210通过因特网和POTS(简易普通电话系统)(在图2中总体标识为211)两者与MSC 212进行通信。载体网络210和MSC 212间的因特网连接211传递数据,POTS 211传递语音信息。MSC 212又连接到多个基站(“BTS”)214。MSC 212通过因特网211(用于数据传输)和POTS 211(用于语音信息)两者连到BTS。BTS 214通过短消息传递服务(“SMS”)或任何其它空中方法把消息以无线方式发送到无线设备230。
上述网络可用于把应用程序发送到计算机设备,比如无线设备230。在一实施例中,应用程序具有使其区别于其它应用程序或文件的唯一标识符以及检测对应用程序的修改的数字签名。该数字签名可以被绑定到应用程序并且或绑定地或单独地被存储在无线设备上,但仍与应用程序相关。应用程序从中央服务器被发送到各个服务器206之一,通过MSC和BTS被发送到无线设备230。
图3是描述在实现本发明示例性实施例中使用的文件结构的框图。在带有存储区的计算机设备上,本发明一实施例创建了一种文件结构来帮助限制应用程序对存储区的存取。图3的这个结构描述了一种分等级的结构,然而本领域的技术人员会认识到,可以使用许多文件结构来实现这里所述的限制应用程序对存储区的存取的系统和方法。
在该实施例中,文件结构的根定义了要被存储在该部分存储区中的文件。文件根目录300的子目录包括应用程序305和共享310。当计算机设备接收应用程序时,它们被存储在应用程序目录305下的子目录(如App X 315和App Y 320)中。本领域的技术人员会认识到,该分等级结构可以使用各种子目录方案来构造,而同时仍能实现本发明。
在本发明一实施例中,与各个应用程序相关的许可被存储在应用程序目录305中。这些许可可用于许可应用程序对特定文件的权利,比如对API、数据和库。
最好每个应用程序有与其相关的唯一标识符,该唯一标识符可用于在应用程序子目录305下创建单个应用程序的子目录。在一实施例中,各个应用程序都有一个唯一名称,并且使用应用程序的名称来创建子目录。
当各个应用程序被存储在应用程序子目录305下时,映射被创建并且与各个应用程序相关联。该映射防止应用程序存取文件结构的其它区域。在一实施例中,App X子目录315关于App X对存储区的调用而被映射到根目录。例如,从App X的角度看,即使实际上它是一子目录,它也被存储在文件结构中的根目录处。在该实施例中,通过把App X子目录315映射到根目录,来自App X的调用就不能存取App X 315目录外的任何文件。然而,App X可以存取App X子目录315以及App X子目录315下的任何子目录(未示出)。因而,在这种实现中,App X不能存取文件根目录300、应用程序子目录305或者更主要的是不能存取App Y子目录320。
类似地,在同一用户所存取的同一设备内,当计算机设备接收App Y时,它被存储在App Y子目录320内的应用程序子目录305下。如图App X一样,为AppY创建了一种映射,使得它对于App Y来说被存储在根目录中。这把App Y的存取仅仅限制在对App Y子目录320和其下的任何子目录(未示出)。如同App X一样,这种文件结构和映射方案提供了防止App Y存取文件结构的其它部分的好处。
因而在计算机设备上,可以根据特定的应用程序而不是仅根据使用计算机设备的用户的存取特权级别而许可应用程序存取文件。
把应用程序目录映射为文件结构中的根目录是本发明的一个实施例,本领域的技术人员会认识到存在限制应用程序存取存储区的其它范例,比如信号量、许可列表及其他技术。
在本发明另一实施例中,预期可能希望在应用程序间共享文件,比如数据或库。因此,在这种情况下,最好建立共享目录310并且包括把共享目录映射到希望共享数据的各个应用程序。最好该共享数据还被映射到应用程序,使其存在于例如单独驱动器的根目录处。把共享目录310映射为根目录会防止各个应用程序对共享目录的父目录的存取,因而防止对共享目录的父目录的任何子目录的存取。
此外,数字签名最好与唯一标识符相关联,比如上述的应用程序名称。通过使用数字签名或者某些其它修改检测技术,可以检测应用程序是否修改了由此创建子目录的唯一标识符。修改检测和/或防止通过当应用程序不适当工作时提供一指示而创建了一较安全的系统,比如把自己重新命名为另一应用程序的名称而存取它的子目录。例如,万一App X将其重新命名为App Y,且万一系统允许根据名称而重新映射,名称即是这种情况下的唯一标识符,则App X能够存取App Y的文件。
图4是描述本发明一示例性实施例中存储应用程序的进程的流程图,该进程限制了应用程序对设备的存储区的存取。进程通过接收带有唯一标识符的应用程序而开始(步骤400)。进程可由控制程序来控制,控制程序对接收到的应用程序的存储和映射提供某些指示。在一实施例中,控制程序是在无线设备上运行的由高通公司开发的BREWTMAPI。
在一实施例中,唯一标识符是应用程序名称。在该实施例中,被发送到计算机设备或被其接收的应用程序需要被监视,使得相同的应用程序名称不被发送到计算机设备或被其接收。可以使用其它标识符,本领域的技术人员知道如何监视到来的应用程序以确定是否存在重复的标识符。
进程继续把接收到的应用程序存储在文件结构中的子目录中(步骤405)。这可以包括使用应用程序接收到的唯一标识符来创建子目录。然后,进程创建应用程序子目录作为根目录的映射(步骤410)。因而当执行应用程序时,应用程序看上去位于根目录处。
然后,进程继续通过创建另一根目录到共享目录的映射而提供应用程序对共享目录的存取(步骤415)。可以设立这个共享目录,使得多个应用程序能够为了共享像数据和库这样的文件而存取这个目录。
如果计算机设备接收随后的应用程序(步骤420),进程就重复,但根据唯一标识符为随后的应用程序创建了一个分开的子目录。因而,随后的应用程序看上去位于根目录处。而且,它可被映射到与前面的应用程序为共享文件而映射的目录相同的共享目录。
如果未接收到任何附加的应用程序,进程就结束(步骤425)。
图5是描述本发明一示例性实施例中限制应用程序对存储区的存取的进程流程图。进程通过接收在计算机设备上执行应用程序的请求而开始(步骤500)。这个请求可以通过用户经由用户输入而作出,或者通过或在计算机设备上或通过网络连到计算机设备的另一应用程序而作出。
在一实施例中,应用程序具有与其相关的数字签名来检测修改。在该实施例中,进程继续评估与应用程序相关的数字签名(步骤505)。如果修改了应用程序,如数字签名所确定的,计算机设备就可以选择许多动作过程,包括以下的任一或许多种拒绝执行应用程序、通知用户有关经修改的应用程序、通知计算机设备监视系统有关经修改的应用程序或者通知服务器或其它计算机系统有关经修改的应用程序。
如果应用程序未被修改,则进程创建对应用程序的存取特权(步骤508)。这些特权可以通过使用上面关于图3和4描述的映射进程来创建。然而,可以使用其它特权方案来定义应用程序对设备上存储区的特权。
在应用程序执行期间,应用程序可以接收一请求一存取存储区(步骤510)。例如,应用程序可以请求对位于存储区内的文件执行读、写或修改操作。这种文件可以包括控制计算机设备资源的那些文件。计算机设备确定应用程序是否被许可到文件位置的特权(步骤515)。如果上面使用了映射范例,计算机系统就根据应用程序不能存取应用程序所映射的根目录以上的文件这一事实而确定特权。
如果应用程序如步骤515所确定的具有到文件位置的特权,则应用程序被许可存取该文件(步骤520)。如果应用程序未被许可存取文件的位置,则拒绝存取(525)且进程结束(步骤530)。
结论已经为了说明和描述的目的而给出本发明实现的上述描述。它不是穷举的,并不把本发明限制为所公开的严格形式。考虑到上述原理或者从实践本发明可知,修改和变化是可行的。例如,所述实现包括软件,但本发明的一个实施例可以用硬件和软件的组合或者用硬件单独实现。本发明既可以用面向对象的程序设计系统来实现,又可以用非面向对象的程序设计系统来实现。此外,尽管本发明的各方面被描述为存储在存储器中,然而本领域的技术人员会认识到,这些方面也可被存储在其它类型的计算机可读媒质上,比如像硬盘、软盘或CD-ROM这样的次级存储设备;来自因特网的载波或其它传播媒质;或者其它形式的RAM或ROM。本发明的范围由权利要求及其等价物所定义。
权利要求
1.一种限制应用程序对设备上存储区的存取的方法,包括以下步骤把应用程序存储在存储区的第一部分;为应用程序指定第一部分的特权;许可应用程序存取第一部分的特权;以及拒绝应用程序对存储区第二部分的存取。
2.如权利要求1所述的方法,还包括许可设备用户对存储区第二部分的存取的步骤。
3.如权利要求1所述的方法,其特征在于,所述存储区位于无线设备上。
4.如权利要求1所述的方法,其特征在于,应用程序的存储是由无线设备上的应用程序编程接口执行的。
5.如权利要求1所述的方法,还包括以下步骤把第二应用程序存储在存储区中;以及许可第一应用程序和第二应用程序对存储区第三部分的存取。
6.一种用于在设备上存储多个应用程序的方法,包括以下步骤把多个应用程序存储在设备上的存储区中,其中多个应用程序的每一个都与存储区的单独部分相关联;向多个应用程序的每一个提供存取存储区的一个相关部分的特权;以及拒绝多个应用程序之一存取存储区的一个相关部分。
7.如权利要求6所述的方法,还包括以下步骤允许设备用户存取能存取存储区一个相关部分的一个应用程序以及被拒绝存取存储区一个相关部分的一个应用程序。
8.如权利要求6所述的方法,还包括以下步骤许可多个应用程序存取存储区的共享部分。
9.如权利要求6所述的方法,其特征在于,所述设备是一无线设备。
10.一种带有存储区的设备,包括与存储区相关的文件结构;控制程序,其指示应用程序在设备上的存储;以及带有第一应用程序的存储区,所述第一应用程序被允许存取存储区的第一部分,并被拒绝存取存储区的第二部分。
11.如权利要求10所述的设备,还包括第二应用程序被允许存取存储区的第二部分,并被拒绝存取存储区的第一部分。
12.如权利要求11所述的设备,其特征在于,所述第一应用程序和第二应用程序可用于存取存储区的第三部分。
13.一种在设备上执行应用程序的方法,包括以下步骤接收执行应用程序的请求;确定应用程序是否被修改;在应用程序未被修改的情况下,把应用程序映射到唯一的存储单元;许可应用程序存取唯一存储单元;以及拒绝第二应用程序存取唯一存储单元。
14.如权利要求13所述的方法,其特征在于,所述第二应用程序能存取第二存储单元,用户能存取唯一存储单元和第二存储单元。
15.如权利要求13所述的方法,还包括以下步骤许可应用程序和第二应用程序对共享存储单元的存取。
16.如权利要求13所述的方法,其特征在于,所述设备是一无线设备。
17.一种带有文件结构的设备,包括把文件存储在文件结构内的控制程序,其中所述控制程序可用于在文件结构内存储多个应用程序,各个应用程序都有文件的一个相关部分,且控制程序可用于许可各个应用程序对其相关部分的存取,并且拒绝各个应用程序对存储区其它相关部分的存取。
18.如权利要求17所述的方法,其特征在于,所述文件结构是分等级的结果,所述控制程序可用于映射各个应用程序以指示该应用程序被存储在根目录中。
19.如权利要求17所述的方法,其特征在于,所述控制程序把多个应用程序映射到文件结构的共享部分。
20.一种在设备上存储应用程序的方法,包括以下步骤在设备处接收应用程序;把应用程序存储在设备上的存储器中;以及独立于设备上的用户存取特权,将应用程序的存储限制为只能对存储器上唯一部分进行存取。
21.如权利要求20所述的方法,其特征在于,所述设备是一无线设备。
22.如权利要求20所述的方法,其特征在于,所述限制应用程序存取的步骤是通过把存储器上的唯一部分映射为应用程序的根目录而执行的。
23.一种限制应用程序对存储区的存取的系统,包括在设备处接收应用程序的装置;把应用程序存储在设备上的存储器中的装置;以及独立于设备上的用户存取特权,将应用程序的存储限制为只能对存储器上唯一部分进行存取的装置。
24.一种包含计算机可执行指令的计算机可读媒质,所述指令在执行一种方法时用于限制应用程序对存储区的存取,所述方法包括以下步骤在设备处接收应用程序;把应用程序存储在设备上的存储器中;以及独立于设备上的用户存取特权,将应用程序的存储限制为只能对存储器上唯一部分进行存取。
25.一种限制应用程序对设备上存储区的存取的方法,包括以下步骤为应用程序指定存储区的第一部分的特权;许可应用程序存取第一部分的特权;以及拒绝应用程序存取存储区的第二部分。
全文摘要
应用程序对存储器的存取根据每个应用程序而被限制。许可应用程序存取一部分存储器。应用程序可以通过在该部分内创建不同的文件结构,修改、读取和写入其中包含的文件,从而操纵该部分存储器。拒绝应用程序存取所许可部分外部的存储区。同样,存储区内存储的其它应用程序遵循类似的范例。在一实施例中,存储区是分等级的文件结构,应用程序作为孩子被存储在文件结构中。然而,应用程序被映射以指明,每个应用程序都被存储在文件结构处以防止对文件结构其它区域的存取。在另一实施例中,文件结构支持多个应用程序映射到的共享目录,也作为根目录,但是是另一驱动器的根目录。
文档编号G06F15/16GK1564992SQ02819889
公开日2005年1月12日 申请日期2002年8月13日 优先权日2001年8月13日
发明者S·A·斯普里格, L·伦德布雷德 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1