CN102938039B - 针对应用的选择性文件访问 - Google Patents

针对应用的选择性文件访问 Download PDF

Info

Publication number
CN102938039B
CN102938039B CN201210331181.7A CN201210331181A CN102938039B CN 102938039 B CN102938039 B CN 102938039B CN 201210331181 A CN201210331181 A CN 201210331181A CN 102938039 B CN102938039 B CN 102938039B
Authority
CN
China
Prior art keywords
application
file
access
data
agent service
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210331181.7A
Other languages
English (en)
Other versions
CN102938039A (zh
Inventor
S.格雷厄姆
K.拉哈克里斯南
S.伊斯金
K.M.布兰奇
S.鲍尔
J.黑曾
T.K.比姆
A.金
G.E.R.奎因特罗
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN102938039A publication Critical patent/CN102938039A/zh
Application granted granted Critical
Publication of CN102938039B publication Critical patent/CN102938039B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • G06F21/335User authentication using certificates for accessing specific resources, e.g. using Kerberos tickets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Abstract

本发明提供了用于允许应用进行选择性文件系统访问的方法、系统和计算机程序产品。将应用安装在计算设备中。接收与应用相关联的应用清单。所述应用清单表明所述应用被允许访问的一种或更多种文件类型。把所表明的(多种)文件类型登记在可以由代理程序服务访问的位置中。将应用作为应用处理来启动。把应用处理隔离在应用容器中。所述应用容器阻止应用处理直接访问文件系统数据。在代理程序服务处从应用处理接收与文件系统数据当中的第一数据有关的访问请求。当代理程序服务确定第一数据的文件类型被包括在所登记的(多种)文件类型当中时,允许应用处理访问第一数据。

Description

针对应用的选择性文件访问
背景技术
应用包含运行在计算机系统中的可执行程序代码,并且被实施来施行一项或更多项任务。存在多种类型的编程语言可以被用来形成用于应用的程序代码。存在多种类型的应用以用来施行各种功能,其中包括办公室套装应用、桌面应用、移动应用、web应用等等。一些应用可以访问存储在其寄主计算机或其他计算机的文件系统中的数据以便在施行其功能时使用。举例来说,字处理应用可以访问文本文件或文档文件以进行编辑。媒体播放器应用可以访问音频文件和/或视频文件以进行播放。数据库应用可以访问数据库的数据库文件中的数据以用于各种用途。
但是由于应用通常可以访问文件系统数据(其中包括与所述应用无关的文件系统数据),因此包含恶意程序代码的应用有机会损害多种文件系统数据。
发明内容
提供本概要是为了以简化形式介绍将在下面的详细描述部分中进一步描述的概念的选择。本概要不意图标识出所要求保护的主题内容的关键特征或本质特征,也不意图被使用来限制所要求保护的主题内容的范围。
提供了用于使得应用能够进行选择性文件系统访问的方法、系统和计算机程序产品。应用对于文件系统数据的访问由代理程序服务应对。否则就阻止所述应用对(除了其自身的文件和其自身资源的其他文件之外的)文件系统数据进行访问。代理程序服务从应用接收针对访问文件系统数据的请求,并且如果所请求访问的数据属于所述应用被允许访问的文件类型,则代理程序服务允许所述应用访问所述数据。否则就拒绝或阻止应用对数据的访问。
根据一种方法实现方式,将应用安装在计算设备上。接收与应用相关联的应用清单。应用清单表明所述应用被允许访问的一种或更多种文件类型。所表明的(多种)文件类型被登记在可由代理程序服务访问的位置中。
此外,可以将应用作为应用处理来启动。应用处理被隔离在类似于用户帐户的应用容器中(其中具有用户帐户的用户无法访问其他用户的文件)。应用容器防止应用处理对文件系统数据的直接访问。在代理程序服务处从应用处理接收到与文件系统数据当中的第一数据相关的访问请求。当代理程序服务确定第一数据的文件类型被包括在所登记的(多种)文件类型当中时,允许应用处理对第一数据的访问。
根据一种系统实现方式,提供一种计算设备。所述计算设备包括存储装置和处理逻辑。所述存储装置存储安装在计算设备中的应用以及与应用相关联的应用清单。应用清单表明应用被允许访问的一种或更多种文件类型。处理逻辑包括代理程序服务并且把所述(多种)文件类型登记在可由代理程序服务(并且不可由应用)访问的位置中。代理程序服务被配置成把应用的访问限制到属于所登记的(多种)文件类型的文件。
所述处理逻辑可以在启用应用时发起应用处理,并且可以将所述应用处理包括到应用容器中。应用容器防止应用处理对文件系统数据的直接访问。代理程序服务从应用处理接收针对文件系统数据当中的第一数据的访问请求。当代理程序服务确定第一数据的文件类型被包括在所登记的(多种)文件类型当中时,处理逻辑允许应用处理对第一数据的访问。
此外,这里还描述了存储用于实现各个实施例(其中包括实现应用对于文件系统数据的选择性访问)和其他实施例的程序代码/逻辑的计算机可读存储介质。
下面参照附图详细描述了本发明的其他特征和优点以及本发明的各个实施例的结构和操作。应当提到的是,本发明不限于这里所描述的具体实施例。这样的实施例仅仅是出于说明性目的而在这里给出的。基于这里所包含的教导,附加的实施例对于相关领域技术人员来说将变得显而易见。
附图说明
被合并在此并且构成说明书的一部分的附图说明本发明,并且还与描述部分一起用来解释本发明的原理,从而允许相关领域的技术人员制造及使用本发明。
图1示出了根据一个示例性实施例的被配置成管理应用对于文件系统数据的访问的计算设备的方框图。
图2示出了根据一个示例性实施例的计算设备的方框图,其中代理程序服务被包括在操作系统中。
图3示出了根据一个示例性实施例的提供用于管理应用对文件系统数据的访问的处理的流程图。
图4示出了根据一个示例性实施例的提供用于安装及配置应用以便对文件系统数据进行受控访问的处理的流程图。
图5示出了根据一个示例性实施例的计算设备的方框图,其中应用被安装及配置成对文件系统数据进行受控访问。
图6示出了根据一个示例性实施例的应用清单的方框图。
图7示出了根据一个示例性实施例的用于在应用容器中启动应用的处理的流程图。
图8示出了根据一个示例性实施例的计算设备的方框图,其中在应用容器中启动应用。
图9示出了根据一个示例性实施例的提供用于使用代理程序服务来控制应用处理对文件系统数据的访问的处理的流程图。
图10示出了根据一个示例性实施例的计算设备的方框图,其中代理程序服务控制应用处理对文件系统数据的访问。
图11示出了根据一个示例性实施例的提供用于使用代理程序服务来控制应用处理对文件系统数据的访问的处理的流程图。
图12示出了可以被用来实施本发明的实施例的示例性计算机的方框图。
通过下面结合附图做出的详细描述,本发明的特征和优点将变得更加显而易见,其中相同的附图标记始终标识相应的元件。在附图中,相同的附图标记通常标示完全相同的、功能上类似的和/或结构上类似的元件。其中元件第一次出现的附图在相应的附图标记中由最左边的(多位)数字标示。
具体实施方式
I、介绍
本说明书公开了合并有本发明的特征的一个或更多实施例。所公开的(多个)实施例仅仅例示本发明。本发明的范围不限于所公开的(多个)实施例。本发明由所附权利要求书限定。
在说明书中提到“一个实施例”、“某一实施例”、“一个示例性实施例”等时表明所描述的实施例可以包括特定的特征、结构或特性,但是可能不一定每一个实施例都包括所述特定的特征、结构或特性。此外,这样的措辞不一定指代相同的实施例。此外,当结合一个实施例描述特定的特征、结构或特性时,认为本领域技术人员能够结合其他实施例实施这样的特征、结构或特性而不管是否做出了明确描述。
下面将描述本发明的各个示例性实施例。应当提到的是,在这里所提供的任何章节/子章节标题不意图进行限制。在本文献中通篇描述了各个实施例,并且任何类型的实施例都可以被包括在任何章节/子章节中。
II、示例性实施例
各个实施例涉及用于管理/限制/控制应用对文件系统数据的访问的技术。应用可以访问存储在其寄主计算机系统(和/或其他计算机系统)的文件系统中的数据以便施行其功能。举例来说,字处理应用可以访问文本文件或文档文件以进行编辑。媒体播放器应用可以访问音频文件和/或视频文件以进行播放。数据库应用可以访问存储在数据库中的数据以用于各种用途。但是由于应用可以访问文件系统数据(其中可能包括与所述应用无关的文件系统数据),因此包含恶意程序代码的应用有机会盗窃文件系统数据、损害多种文件系统数据或者实施其他不合期望的动作。
各个实施例提供了将应用对文件系统数据的访问限制到所述应用被配置成与之交互的文件系统数据类型的益处。举例来说,开发者或其他人员可以提供关于应用可以访问/与之交互(例如读取、写入、修改、重命名、拷贝、移动等等)的一种或更多种文件类型的指示。可以在把应用安装在计算机系统中时登记(多种)文件类型(例如MP3文件、Microsoft?Word文件等等)。当执行应用并且尝试访问计算机系统的文件系统数据时,如果所述文件系统数据具有所登记的(多种)文件类型当中的某一种文件类型,则允许应用访问所述文件系统数据。如果所访问的文件系统数据不属于所登记的(多种)文件类型,则可以拒绝或阻止对所述文件系统数据的访问。可以允许应用访问基本的应用信息(比如其自身的文件以及其自身资源的其他文件)、对应于所述应用的临时工作目录以及对应于所述应用的设定目录,但可以另外可以拒绝对于敏感文件系统数据的访问,正如这里所描述的那样。
可以在多种环境中实施各个实施例。举例来说,图1示出了根据一个示例性实施例的计算设备102的方框图。如图1中所示,计算设备102包括应用处理104、代理程序服务106、存储装置108和应用120。此外,存储装置108包括多个文件夹110a-110n。每一个文件夹110a-110n可以包括一个或更多文件。举例来说,文件夹110a被显示为包括文件112a-112n。文件夹110a-110n和文件112a-112n被包括在计算设备102的文件系统的文件系统数据118中。下面进一步描述了计算设备102。
计算设备102可以是任意类型的静止或移动计算设备,其中包括台式计算机(例如个人计算机等等)、移动计算机或计算设备(例如Palm?设备、RIMBlackberry?设备、个人数字助理(PDA)、膝上型计算机、笔记本计算机、平板计算机(例如AppleiPadTM)、上网本等等)、移动电话(例如蜂窝电话、智能电话,比如AppleiPhone、GoogleAndroidTM电话、MicrosoftWindows?电话等等)或者其他类型的移动设备。
如前所述,计算设备102包括存储装置108。存储装置108可以包括一种或更多种任意类型的存储机制以便存储文件夹和文件,其中包括磁盘(例如硬盘驱动器中)、光盘(例如光盘驱动器中)、磁带(例如带驱动器中)、诸如RAM设备、ROM设备等的存储器设备以及/或者任何其他适当类型的存储介质。存储装置108可以是完全本地的存储装置(如图1中所示),或者可以可选地包括远离计算设备102的存储装置,其中包括可以通过网络访问的存储装置,比如“云”存储装置以及在媒体服务器处可用的存储装置。此外,存储装置108可以包括可移除存储设备。如图1中所示,文件系统数据118被存储在存储装置108中。文件夹110a-110n是包括在文件系统数据118中的虚拟文件夹,正如相关领域技术人员所熟知的那样。文件夹110a-110n可以被组织在分层结构和/或任何其他设置中。可以存在任意数目的文件夹110,其中包括数十个、数百个、数千个甚至更多数目的文件夹,并且每一个文件夹110可以包括任意数目的文件。文件112a-112n是包含数据的计算机文件,正如相关领域技术人员所熟知的那样。可以存在任意数目的文件112,其中包括数十个、数百个、数千个甚至更多数目的文件。
代理程序服务106包括一个或更多处理(“例如代理程序处理”),所述处理可以在计算设备102中执行(例如由一个或更多处理器执行)。代理程序服务106被配置成把应用的访问限制到所述应用被允许访问的文件系统数据118当中的数据。代理程序服务106的程序代码可以是独立的程序代码,或者可以被包括在计算设备102的其他程序代码中。举例来说,图2示出了根据一个示例性实施例的计算设备102的方框图。如图2中所示,代理程序服务106可以被包括在计算设备102的操作系统202中。可选的是,代理程序服务106可以为计算设备102提供另外的服务,其中包括限制应用对计算设备102的硬件和/或其他资源的访问。
应用120是在计算设备102中执行/操作的软件应用,并且可以被存储在计算设备102的存储装置(例如存储装置108)中。举例来说,应用120可以是办公室套装应用、桌面应用、移动应用、web应用等等。办公室套装应用包括各种类型的生产力增强应用,比如字处理应用、电子表格应用、演示应用等等。桌面应用包括被配置成操作在(例如台式计算机的)计算机桌面中的各种类型的应用,其中包括一些办公室套装应用、桌面小装置或小工具(通常提供单一目的服务的交互式工具,比如新闻流送、提供当前的天气、显示当前股票报价等等)、web浏览器等等。移动应用包括操作在移动手持式设备中的各种类型的应用(例如“Apps”),所述移动手持式设备比如有智能电话、平板计算机、便携式媒体播放器、个人数字助理(PDA)等等。web应用(其也被称作“webapps”或“webapps”)是可以通过诸如因特网或内联网之类的网络访问的应用,并且可以被寄放在呈现所述应用的web浏览器中。示例性的应用包括社交联网应用、导航辅助应用(例如地图绘制应用、餐馆定位应用、交通应用等等)、游戏应用、财务规划应用等等。
应用120可以被执行来产生一个或更多应用事例或“处理”,比如应用处理104。应用处理104包括应用120的程序代码(指令)及其当前活动。应用处理104在计算设备102的一个或更多处理器中执行。应用处理104可以包括一个或更多执行线程。当存在多个执行线程时,各个线程可以同时执行程序代码。
在应用处理104的执行期间,应用处理104可能会尝试访问文件系统数据118当中的数据,比如文件112a。根据传统的系统,可能会在几乎没有限制的情况下允许应用处理104访问文件112a。但是应用处理104可能包括恶意程序代码(例如通过应用120的原始设计、通过被插入到应用120中的病毒代码等等),或者可能按照应用120的用户没有预期到的方式访问文件112a。在任一种情况下,应用处理104都可能由于被允许访问文件112a而造成损害。
各个实施例有助于通过限制对于文件系统数据的访问而减少由恶意应用代码造成的损害。根据一个实施例,应用处理104可以生成表明所期望访问的文件系统数据118当中的数据的数据访问114,所述数据在本例中是文件112a。如图1中所示,数据访问114被代理程序服务106接收到。代理程序服务106被配置成确定文件112a是否属于应用120被允许访问的文件类型。如果文件112a属于应用120被允许访问的文件类型,则代理程序服务106可以允许应用处理104访问文件112a。在这种情况下,如图1中所示,可以通过代理程序服务106把数据访问114中所请求的数据从存储装置108提供到应用处理104以作为响应数据116,或者响应数据116可以表明应用处理104能够访问所述数据的方式。举例来说,可以在响应数据116中把针对文件或文件夹的句柄传递到应用处理104,以便允许应用处理104访问所述文件或文件夹。否则,如果文件112a属于应用120不被允许访问的文件类型,则代理程序服务106可以拒绝对于文件112a的访问。当不被允许访问时,代理程序服务106可以拒绝应用处理104与文件和文件夹的各种交互,其中包括拒绝应用处理104针对以下操作的访问:读取文件、读取文件夹的内容、写入到文件或文件夹、重命名文件或文件夹、移动文件或文件夹、或者拷贝到第一数据的文件或文件夹之上。
计算设备102可以在多种方式下进行操作以施行其功能。举例来说,图3示出了根据一个示例性实施例的提供用于管理应用对文件系统数据的访问的处理的流程图300。下面将参照图1描述流程图300。基于下面关于流程图300的讨论,另外的结构和操作实施例对于相关领域技术人员来说将变得显而易见。
流程图300开始于步骤302。在步骤302中,登记对应于应用的可访问文件类型。举例来说,在一个实施例中,在计算设备102的数据结构(例如注册表)中登记应用120的应用处理被允许访问的一种或更多种文件类型。所述数据结构可以被存储在存储装置108或与计算设备102相关联的其他存储装置中。
在步骤304中,把所述应用的处理的访问限制到所登记的可访问文件类型。举例来说,在一个实施例中,代理程序服务106可以访问包含对应于应用120的所登记的可访问文件类型的数据结构。当代理程序服务106从应用120的应用处理(比如应用处理104)接收到针对数据的请求时,代理程序服务106可以访问所述数据结构以便确定所请求的数据是否属于所述应用处理被允许访问的文件类型。代理程序服务106可以在所述数据属于可允许文件类型的情况下允许应用处理访问所述数据,或者可以在所述数据不属于可允许文件类型的情况下拒绝访问请求。可以按照这种方式限制从应用120形成的任意数目的应用处理的文件系统数据访问,甚至是同时限制。
在各个实施例中,包括代理程序服务106的计算设备102可以按照多种方式施行其功能。在下面的各个子章节中描述了对应于计算设备102、代理程序服务106和流程图300的多个示例性实施例。举例来说,下一个子章节描述了用于安装被配置成对文件系统数据进行受控访问的应用的示例性实施例。后面的子章节描述了用于启动具有受控文件系统数据访问的应用的示例性实施例,其后一个章节描述了用于为所启动的应用提供对于文件系统数据的受限制访问的示例性实施例。
A、用于安装针对受控文件系统数据访问的应用的示例性实施例
根据一个示例性实施例,可以将应用安装在计算设备中,以便具有对于文件系统数据的受控访问。在一个实施例中,作为安装的一部分,允许开发者或其他用户在一个或更多安全位置处登记对应于其应用的可访问文件类型。随后可以由代理程序服务访问所述(多个)安全位置,以便允许应用访问文件系统数据。但是所述(多个)安全位置无法由应用访问。按照这种方式,对应于应用的可访问文件类型无法被篡改从而允许应用对文件系统造成损害。
举例来说,图4示出了根据一个示例性实施例的提供用于安装和配置应用以便对文件系统数据进行受控访问的处理的流程图400。流程图400提供了图3中的流程图300的步骤302的一种示例性实现方式。在一个实施例中,流程图400可以由图1的计算设备102施行。下面将参照图5描述流程图400。图5示出了根据一个示例性实施例的计算设备102的方框图,其中安装并配置应用以便对文件系统数据进行受控访问。如图5中所示,计算设备102包括处理逻辑502和存储装置108。处理逻辑502包括应用安装器506、文件系统登记模块508和标识符发生器520。基于下面关于流程图400和图5的计算设备102的讨论,其他的结构和操作实施例对于相关领域技术人员来说将变得显而易见。
流程图400开始于步骤402。在步骤402中,将应用安装在计算设备中。举例来说,如图1中所示,可以在计算设备102处接收应用信息512。应用信息512包括定义一项应用(比如图1的应用120)的所有文件和/或数据。可以从多种来源接收应用信息512,其中包括从与计算设备102相关联的计算机可读存储介质(例如紧致盘只读存储器(CDROM)设备、软盘、记忆棒(例如通用串行总线(USB)存储设备)等等)接收,通过诸如LAN(局域网)、WAN(广域网)或者诸如因特网(例如基于“云”的服务)的网络组合之类的网络从远程服务接收,以及/或者从其他来源接收。
如图5中所示,应用安装器506接收应用信息512。应用安装器506被配置成把应用信息512安装在计算设备102的存储装置108中以便安装应用。应用安装器506可以是专有的或者可以买到的应用安装程序,其中包括相关领域技术人员所熟知的被配置成按照这里所描述的那样安装应用的应用安装程序。
如图5中所示,应用安装器506对应用信息512进行处理,以便将应用安装为存储装置108中的应用包510。应用包510包括应用程序代码514。应用程序代码514是定义所安装的应用的功能的可执行代码(可由一个或更多处理器执行)。应用程序代码514可以具有一个或更多文件的形式以及/或者其他形式。应用安装器506被配置成把应用程序代码514安装在计算设备102中。
回到图4,在步骤404中,接收与应用相关联的应用清单,所述应用清单表明所述应用被允许访问的一种或更多种文件类型。举例来说,如图5中所示,应用包510还包括应用清单516。应用清单516是一个对象(例如一个或更多文件)。应用安装器506被配置成把应用清单516存储在计算设备102的存储装置108中。
应用清单516包括关于应用被允许访问的一种或更多种文件类型的指示。此外,应用清单516还可以可选地包括与应用相关联的其他信息。举例来说,图6示出了根据一个示例性实施例的应用清单516的方框图。如图6中所示,应用清单516包括可访问文件类型信息602、标识信息604以及能力信息606。在其他实施例中,应用清单516可以包括与图6中所示的信息相比的附加和/或替换信息。
可访问文件类型信息602包括关于相关联的应用被允许访问的一种或更多种文件类型的指示。“文件类型”定义并且在各个文件分类之间进行区分,比如通过文件扩展、文件种类以及/或者其他文件属性或元数据来进行区分。因此,文件类型信息602可以表明能够被用来定义可由应用访问的数据(例如文件、文件夹等等)的一种或更多种文件类型(通过文件扩展、文件种类以及/或者其他文件属性或元数据来表明)。可以按照多种方式在可访问文件类型信息602中表明文件类型。举例来说,可以在可访问文件类型信息602中将文件类型表示为单独的文件类型和/或文件类型分组,比如文件类型家族和/或文件类型分类。可以在可访问文件类型信息602中通过文件扩展来表明文件类型,所述文件扩展通常是跟随在文件名中的最后一个句点之后的几个字母数字字符。举例来说,关于各种单独的文件类型,对应于文本文件的文件类型扩展可以是“.txt”,对应于MPEG(移动画面专家组)视频文件的文件类型扩展可以是“.mpg”,对应于波形音频文件格式的音频文件的文件类型扩展可以是“.wav”等等。文件类型家族包括(例如通过相应的文件扩展)在一个家族中有关的多种文件类型,比如对应于共同产品的文件类型分组(例如与所述产品的不同版本相关联的不同文件类型)。举例来说,Microsoft?Word(字处理应用)文件类型家族可以包括分别与Microsoft?Word2007之前的版本以及与Microsoft?Word2007和后续版本有关的文件类型扩展“.doc”和“.docx”。文件类型分类包括通过产品分类有关的多种文件类型,比如音频分类、视频分类、字处理分类、数据库分类等等。举例来说,音乐或音频分类文件类型可以包括与音乐和/或音频相关联的多个文件扩展,比如“.wav”、“.mp3”、“.aiff”等等。
标识信息604包括对应于应用的标识信息。举例来说,标识信息604可以包括以下各项当中的一项或更多项:应用和/或应用包的名称,应用的发布者,应用的体系结构,资源类型(例如en-us之类的语言类型等等),应用的版本,以及/或者其他标识信息。
能力信息606表明了通过执行应用程序代码514而形成的应用处理被允许和/或不被允许访问的计算设备102的能力。这样的所表明的能力的例子包括表明是否可以访问计算设备102的存储设备(例如内部和/或外部存储设备),表明是否可以访问凭证,表明是否可以访问软件和/或硬件证书,表明是否可以访问输入/输出设备(例如麦克风、web摄像头等等),表明是否可以施行与远离计算设备102的实体的通信等等。能力信息606可选地存在,并且是应用能够访问数据的一种示例性方式。举例来说,一项所表明的能力可以代表对应于代理程序服务106所能允许访问的特定位置(例如图片库)的所有文件类型。
回到图4,在步骤406中,由应用清单表明的一种或更多种文件类型被登记在可由代理程序服务访问的位置中。举例来说,在一个实施例中,如图5中所示,文件类型登记模块508可以读取应用清单516,以便确定应用被允许访问的一种或更多种文件类型(例如在可访问文件类型信息602中所表明)。文件类型登记模块508被配置成通过把关于所述一种或更多种文件类型的指示作为(多种)文件类型518存储在安全存储位置504处来登记所述一种或更多种文件类型。如图5中所示,安全存储位置504可以是存储装置108的存储位置(例如存储区段),或者可替换地,可以处于单独的存储装置中。安全存储位置504被认为是安全的(例如有特权的)是因为所述应用的应用处理无法访问存储在其中的数据。因此,恶意应用无法修改(多种)文件类型518从而允许访问除了在(多种)文件类型518中定义的之外的其他文件类型,从而降低了恶意应用对文件系统数据造成损害的可能性。
此外,如图6中所示,标识符发生器520从应用清单516接收信息,并且可以生成安全性标识符522。安全性标识符522是可以被用来在计算设备102中标识与应用包510(其中包括为所述应用执行的应用处理)相关联的应用的唯一标识符。安全性标识符522类似于对应于用户帐户的用户标识符,所述用户标识符限制具有第一用户帐户的第一用户访问第二用户的文件。安全性标识符522可以被用来默认地确保应用无法访问文件系统的数据,以及把文件类型和/或能力的集合与应用包相关联。举例来说,安全性标识符522可以被用来关于包括访问控制列表(ACL)的计算设备102中的安全性操作标识应用处理。包括安全性标识符522的计算设备102的ACL可以标识相关联的应用可以访问的计算设备102的资源。如果安全性标识符522没有被包括在ACL中,则应用无法访问由所述ACL应对其安全性的任何资源。
可以按照任何方式为应用生成安全性标识符(SID)522,其中包括根据专有技术和/或能够买到的技术来生成。举例来说,可以基于应用包510的包标识符(包标识符SID)来生成安全性标识符522。基于包标识符生成安全性标识符522可以包括基于应用包510的包标识符的所有元素生成安全性标识符,或者仅仅基于所述元素的一个子集(例如包的家族标识符——来自包标识符的名称和发布者)生成安全性标识符。在另一个实施例中,可以作为来自标识信息604的信息的杂散生成安全性标识符522。举例来说,可以作为以下各项当中的一项或更多项的杂散生成安全性标识符522:发布者和/或应用包510的名称,应用的发布者,应用的体系结构,应用的版本等等。
B、用于启动具有受控文件系统数据访问的应用的示例性实施例
根据一个示例性实施例,可以针对在计算设备102处定义并登记了可允许文件类型的应用启动应用处理。在一个实施例中,所述应用处理可以被包括在防止该应用处理访问文件系统数据的应用容器中。
举例来说,图7示出了根据一个示例性实施例的提供用于启动对文件系统数据具有受控访问的应用的处理的流程图700。在一个实施例中,流程图700可以由图1的计算设备102施行。如下参照图8描述流程图700。图8示出了根据一个示例性实施例的计算设备102的方框图,其中启动所安装的应用,并且所得到的应用处理具有对于文件系统数据的受控访问。如图8中所示,计算设备102包括处理逻辑502、存储装置108和存储器810。处理逻辑502包括应用启动器802,并且应用启动器802包括令牌发生器804。基于下面关于流程图700和图8的计算设备102的讨论,另外的结构和操作实施例对于相关领域技术人员来说将变得显而易见。
流程图700开始于步骤702。在步骤702中,将应用作为应用处理启动。举例来说,如图8中所示,应用启动器802可以被配置成启动应用(比如图1的应用120),从而形成应用处理104。应用启动器802可以被配置成通过多种方式启动应用120从而形成应用处理104,其中包括根据专有技术或者根据相关领域技术人员所知的传统技术来实现。如图8中所示,应用处理104可以被加载到存储器810中。这样,应用处理104的程序代码可以很容易被执行应用处理104的计算设备102的一个或更多处理器访问。
在步骤704中,应用处理被包括在应用容器中。举例来说,如图8中所示,应用处理104被包括在应用容器806中。应用容器806是用于应用处理104的虚拟容器,其防止应用处理104直接访问文件系统数据。对应于应用的应用容器806类似于对应于用户的用户帐户,其中用户帐户被用来限制用户访问其他用户的信息。按照类似的方式,应用容器806限制应用访问其他信息。应用处理104可以通过多种方式被“包括”在应用容器806中,比如通过把与应用容器806相关联的安全性标识符应用到对应于应用处理104的令牌,其默认地限制应用处理104对于文件系统的敏感部分的访问。这样的敏感文件系统部分不包括对应于应用处理104自身的基本文件/文件夹,比如应用包510的资源、工作目录以及设定目录。可以适当地设定ACL,从而使得应用处理104可以访问这些基本项目。
举例来说,在一个实施例中,(例如如前所述地)为应用120生成的安全性标识符522可以与应用容器806相关联,并且被用来定义对应于应用容器806的访问限制。(例如在一个或更多ACL中)对于安全性标识符522定义的可访问资源适用于应用容器806,并因此适用于应用容器806中的应用处理104。举例来说,在一个实施例中,安全性标识符522无法被包括在与文件系统数据相关联的任何ACL中。这样,应用容器806从而还有应用处理104就不能直接访问文件系统数据。按照这种方式,应用容器806将应用处理104与文件系统数据隔离。相反,根据这里所描述的实施例,通过代理程序服务106限制应用处理104访问文件系统数据。正如本文中其他地方更加详细地描述的那样,代理程序服务106控制应用处理104可以访问哪些类型的文件系统数据。
如图8中所示,令牌发生器804可以接收与应用容器806相关联的安全性标识符522,并且可以生成对应于应用处理104的处理令牌812。处理令牌812可以被用来在计算设备102中唯一地标识应用处理104。举例来说,处理令牌812能够将应用处理104与其他类型的应用处理进行区分,以及与对于相同的应用120生成的应用处理104的附加事例进行区分。
令牌发生器804可以被配置成生成处理令牌812以便包括标识应用容器806的安全性标识符522,并且可以包括与应用清单516相关联的其他信息。举例来说,处理令牌812可以可选地包括从对应于应用120的应用清单516的信息生成的其他安全性标识符,其中包括基于能力信息606生成的一个或更多安全性标识符等等。
应当提到的是,在一个实施例中,处理令牌812不可由应用处理104修改。举例来说,处理令牌812可以被存储在存储器810的安全位置中,存储在安全存储位置504或其他安全存储位置中。这样,应用处理104就无法修改处理令牌812的安全性标识符以便被允许访问本来不可访问的文件系统数据,并从而被防止允许对文件系统造成损害。存储器810可以包括任意数目的存储器设备(比如随机存取存储器(RAM)设备),并且可以被包括在存储装置108中或者与之分开。
C、用于为所启动的应用提供对于文件系统数据的访问的示例性实施例
根据一个示例性实施例,可以为应用处理提供对于文件系统数据的访问。在一个实施例中,应用处理由于被包括在应用容器中而无法直接访问文件系统数据,所述应用容器由于其相关联的安全性标识符而具有受到限制的文件系统访问。相反,通过经由中介(即代理程序服务)访问文件系统数据,允许应用处理间接地访问文件系统数据。
举例来说,图9示出了根据一个示例性实施例的提供用于为应用处理提供对于文件系统数据的受控访问的处理的流程图900。在一个实施例中,流程图900可以由图1的计算设备102施行。如下参照图10来描述流程图900。图10示出了根据一个示例性实施例的计算设备102的方框图,其中所安装的应用先前被启动,并且为所得到的应用处理提供对于文件系统数据的受控访问。如图10中所示,计算设备102包括处理逻辑502和存储装置108。处理逻辑502包括代理程序服务106,代理程序服务106包括条件匹配逻辑1002。基于下面关于流程图900和图10的计算设备102的讨论,另外的结构和操作实施例对于相关领域技术人员来说将变得显而易见。
流程图900开始于步骤902。在步骤902中,在代理程序服务处从应用处理接收到针对文件系统数据当中的第一数据的访问请求。举例来说,如图10中所示,应用处理104生成数据访问114,其表明文件系统数据118当中的所期望访问的数据。在一些实施例中,数据访问114可以表明将要读取、写入或修改的数据。举例来说,在本例中,数据访问114可以表明将要读取文件112a。数据访问114还可以包括处理令牌812,以便将数据访问114标识为由应用处理104生成。如图10中所示,数据访问114被代理程序服务106接收到。
在步骤904中,当代理程序服务确定第一数据的文件类型被包括在所登记的一种或更多种文件类型当中时,允许应用处理访问第一数据。代理程序服务106被配置成确定文件112a是否属于应用处理104被允许访问的文件类型。举例来说,如果文件112a具有应用处理104被允许访问的文件类型,则代理程序服务106可以允许应用处理104访问文件112a。否则,如果文件112a具有应用处理104不被允许访问的文件类型,则代理程序服务106可以拒绝应用处理104对文件112a的访问。
在一个实施例中,代理程序服务106可以根据图11施行流程图900。图11示出了提供利用代理程序服务来控制应用处理对文件系统数据的访问的处理的流程图1100。基于下面关于流程图1100的讨论,另外的结构和操作实施例对于相关领域技术人员来说将变得显而易见。
流程图1100开始于步骤1102。在步骤1102中,接收令牌和关于在访问请求中请求的第一数据的指示。举例来说,如前所述,代理程序服务106可以接收数据访问114,其表明文件系统数据118当中的所期望访问的数据并且包括用以标识应用处理104的处理令牌812。操作从步骤1102继续到步骤1104。
在步骤1104中,确定第一数据的文件类型。举例来说,基于在数据访问114中表明的数据请求,代理程序服务106可以确定所请求的数据的文件类型。代理程序服务106可以通过以下方式确定所请求的数据的文件类型:通过包括在数据访问114中的所请求的数据的文件扩展(例如,诸如.txt、.wav、.mpeg等的扩展),通过在存储装置108中访问所请求的数据来确定所请求的数据的文件扩展,以及/或者通过其他技术。操作从步骤1104继续到步骤1106。
在步骤1106中,在安全位置处访问对于应用所登记的(多种)文件类型。举例来说,在一个实施例中,代理程序服务106可以确定包括在数据访问114中的应用处理104的安全性标识符522。代理程序服务106可以通过其与所确定的安全性标识符522的关联来识别出存储在安全存储位置504处的对应于应用处理104的(多种)文件类型518。代理程序服务106可以从安全存储位置504获取所识别出的(多种)文件类型518。操作从步骤1106继续到步骤1108。
在步骤1108中,确定第一数据的文件类型是否被包括在所登记的(多种)文件类型当中。举例来说,在一个实施例中,代理程序服务106的条件匹配逻辑1002被配置成确定所请求的数据的所确定的文件类型(在步骤1104中确定)是否关于(多种)文件类型518(在步骤1106中访问)满足条件。举例来说,条件匹配逻辑1002可以确定所请求的数据的所确定的文件类型是否等于包括在(多种)文件类型518当中的文件类型。如果所请求的数据的文件类型没有被包括在所登记的(多种)文件类型当中,则操作从步骤1108继续到步骤1110。如果所请求的数据的文件类型被包括在所登记的(多种)文件类型当中,则操作从步骤1108继续到步骤1112。
在步骤1110中,拒绝应用处理对第一数据的访问。当确定所请求的数据的文件类型不等于(多种)文件类型518的其中之一时,可以由代理程序服务106拒绝应用处理104对所请求的数据的访问。举例来说,如果应用处理104正在请求特定数据(例如特定文件等等),则可以阻止应用处理104访问所述特定数据,并且可以由代理程序服务106向应用处理104表明对于数据访问114的拒绝。在另一个实例中,如果应用处理104正在请求关于特定文件夹的内容的指示,则可以通过代理程序服务106使得具有不可访问文件类型的文件夹的文件对于应用处理104不可见。流程图1100的操作在施行了步骤1110之后结束。
在步骤1112中,允许应用访问第一数据。当确定所请求的数据的文件类型等于(多种)文件类型518的其中之一时,可以通过代理程序服务106准许应用处理104访问所请求的数据,并且可以由代理程序服务106在响应数据116中把所请求的数据提供到应用处理104。应当提到的是,在一个实施例中,可以通过代理程序服务106向应用处理104提供响应数据116,而不是允许应用处理104直接从存储装置108接收响应数据116。这样,不需要提高应用处理104的安全性/特权级别以使得应用处理104接收响应数据116。流程图1100的操作在施行了步骤1112之后完成。
举例来说,在出于说明性目的提供的一个实例中,应用处理104可以发送数据访问114以便请求文件名/路径为c:/home/user/userfile.doc的文件。代理程序服务106可以接收数据访问114,所述数据访问114包括所述文件名/路径和对应于应用容器806/应用处理104的安全性标识符522。代理程序服务106可以确定该文件名/路径的文件类型是“.doc”。代理程序服务106可以访问与对应于应用容器806/应用处理104的安全性标识符522相关联的(多种)文件类型518。在该例中,(多种)文件类型518可以包括“.doc”、“.docx”、“.txt”和“.wpd”的文件扩展。条件匹配逻辑1002可以确定对应于所请求的数据的文件类型“.doc”等于(多种)文件类型518当中的文件扩展。因此,代理程序服务106可以在响应数据116中向应用处理104提供文件名/路径为c:/home/user/userfile.doc的文件。
相应地,各个实施例提供了各项特征和益处。举例来说,代理程序服务106为包括在应用容器中的应用处理提供了文件系统抽象。代理程序服务106使用静态声明的文件类型来限制应用处理的数据访问。在安装时,对于代理程序服务106登记所声明的文件类型。(在应用容器中)隔离的应用处理使用安全性标识符来向代理程序服务106传达所述应用处理可以访问文件系统的一些分立部分(例如文档库、可移除存储装置等等)。这样就为应用提供了对于文件系统数据的经过过滤的访问。应当提到的是,可以为计算设备102的每一个用户提供代理程序服务106的事例(从而可以存在多个代理程序服务106),或者单个代理程序服务106可以应对所有用户。代理程序服务106可以被配置成应对单个应用或者同时应对多个应用。
III、示例性计算设备实施例
可以用硬件、软件、固件或其组合来实施代理程序服务106、处理逻辑502、应用安装器506、文件类型登记模块508、标识符发生器520、应用启动器802、令牌发生器804、条件匹配逻辑1002、流程图300、流程图400、流程图700、流程图900和流程图1100。举例来说,代理程序服务106、处理逻辑502、应用安装器506、文件类型登记模块508、标识符发生器520、应用启动器802、令牌发生器804、条件匹配逻辑1002、流程图300、流程图400、流程图700、流程图900和/或流程图1100可以被实施为计算机程序代码,所述计算机程序代码被配置成在一个或更多处理器中执行。可替换地,代理程序服务106、处理逻辑502、应用安装器506、文件类型登记模块508、标识符发生器520、应用启动器802、令牌发生器804、条件匹配逻辑1002、流程图300、流程图400、流程图700、流程图900和/或流程图1100可以被实施为硬件逻辑/电路。举例来说,在一个实施例中,代理程序服务106、处理逻辑502、应用安装器506、文件类型登记模块508、标识符发生器520、应用启动器802、令牌发生器804、条件匹配逻辑1002、流程图300、流程图400、流程图700、流程图900和/或流程图1100当中的一项或更多项可以被实施在芯片上系统(SoC)中。所述SoC可以包括集成电路芯片,所述集成电路芯片包括以下各项当中的一项或更多项:处理器(例如微控制器、微处理器、数字信号处理器(DSP)等等),存储器,一个或更多通信接口,以及/或者用以施行其功能的其他电路和/或嵌入式固件。
图12描绘出可以在其中实施本发明的实施例的计算机1200的一种示例性实现方式。举例来说,计算设备102可以被实施在与计算机1200类似的计算机系统中,其中包括计算机1200的一项或更多项特征以及/或者替换的特征。计算机1200可以是例如具有传统个人计算机、移动计算机、服务器或工作站形式的通用计算设备,或者计算机1200可以是专用计算设备。这里给出的关于计算机1200的描述是出于说明的目的而提供的,而不意图进行限制。本发明的实施例可以被实施在相关领域技术人员所知的未来类型的计算机系统中。
如图12中所示,计算机1200包括一个或更多处理器1202、系统存储器1204以及将包括系统存储器1204在内的各个系统组件耦合到处理器1202的总线1206。总线1206代表几种类型的总线结构当中的任意类型中的一种或更多种,其中包括存储器总线或存储器控制器、外围总线、加速图形端口以及处理器或利用多种总线体系结构当中的任一种的局域总线。系统存储器1204包括只读存储器(ROM)1208和随机存取存储器(RAM)1210。基本输入/输出系统1212(BIOS)被存储在ROM1208中。
计算机1200还具有以下驱动器当中的一项或更多项:用于对硬盘进行读取和写入的硬盘驱动器1214,用于对可移除磁盘1218进行读取或写入的磁盘驱动器1216,以及用于对诸如CDROM、DVDROM之类的可移除光盘1222或其他光学介质进行读取或写入的光盘驱动器1220。硬盘驱动器1214、磁盘驱动器1216和光盘驱动器1220分别通过硬盘驱动器接口1224、磁盘驱动器接口1226和光学驱动器接口1228连接到总线1206。各个驱动器及其相关联的计算机可读介质提供对于计算机可读指令、数据结构、程序模块以及用于计算机的其他数据的非易失性存储。虽然描述了硬盘、可移除磁盘和可移除光盘,但是还可以使用其他类型的计算机可读存储介质来存储数据,比如闪存卡、数字视频盘、随机存取存储器(RAM)、只读存储器(ROM)等等。
可以在硬盘、磁盘、光盘、ROM或RAM上存储多个程序模块。这些程序包括操作系统1230、一个或更多应用程序1232、其他程序模块1234以及程序数据1236。应用程序1232或程序模块1234例如可以包括计算机程序逻辑(例如计算机程序代码),其用于实施代理程序服务106、处理逻辑502、应用安装器506、文件类型登记模块508、标识符发生器520、应用启动器802、令牌发生器804、条件匹配逻辑1002、流程图300、流程图400、流程图700、流程图900和/或流程图1100(其中包括流程图300、400、700、900和1000的任意步骤)以及/或者这里所描述的其他实施例。
用户可以通过键盘1238和指示设备1240之类的输入设备将命令和信息输入到计算机1200中。其他输入设备(未示出)可以包括麦克风、操纵杆、游戏手柄、碟形卫星信号收发天线、扫描仪等等。这些和其他输入设备常常通过耦合到总线1206的串行端口接口1242连接到处理器1202,但是也可以通过其他接口连接,比如并行端口、游戏端口或通用串行总线(USB)连接到处理器1202。
显示设备1244也通过视频适配器1246之类的接口连接到总线1206。除了监视器之外,计算机1200还可以包括其他外围输出设备(未示出),比如扬声器和打印机。
计算机1200通过适配器或网络接口1250、调制解调器1252或者用于通过网络建立通信的其他装置连接到网络1248(例如因特网)。调制解调器1252可以是内部的或外部的,其通过串行端口接口1242连接到总线1206。
这里所使用的术语“计算机程序介质”、“计算机可读介质”和“计算机可读存储介质”被用来广泛地指代以下介质:比如与硬盘驱动器1214相关联的硬盘,可移除磁盘1218,可移除光盘1222,以及诸如闪存卡、数字视频盘、随机存取存储器(RAM)、只读存储器(ROM)之类的其他介质等等。这样的计算机可读存储介质与通信介质区分开并且不发生重叠(不包括通信介质)。通信介质通常在诸如载波之类的已调数据信号中具体实现计算机可读指令、数据结构、程序模块或其他数据。术语“已调数据信号”指的是其一项或更多项特性被设定或改变的信号,所述特性被设定或改变的方式使得将信息编码在所述信号中。作为举例而非限制,通信介质包括诸如声学、RF、红外之类的无线介质和其他无线介质。各个实施例也针对这样的通信介质。
如前所述,计算机程序和模块(其中包括应用程序1232和其他程序模块1234)可以被存储在硬盘、磁盘、光盘、ROM或RAM上。还可以通过网络接口1250或串行端口接口1242接收这样的计算机程序。当由应用执行或加载时,所述计算机程序允许计算机1200实施这里所讨论的本发明的实施例的特征。相应地,这样的计算机程序代表计算机1200的控制器。
本发明还涉及包括存储在任何计算机可用介质上的软件的计算机程序产品。当在一个或更多数据处理设备中执行时,这样的软件使得(多个)数据处理设备如这里所描述的那样进行操作。本发明的实施例采用现在或者未来所知的任何计算机可用或计算机可读介质。计算机可读介质的实例包括(但不限于)诸如RAM、硬盘驱动器、软盘、CDROM、DVDROM、极碟、各种带、磁性存储设备,光学存储设备,MEM,基于纳米技术的存储设备等等之类的各种存储设备。
VI、结论
虽然前面描述了本发明的各个实施例,但是应当理解的是,所述实施例仅仅是作为举例给出的而不是进行限制。相关领域技术人员将认识到,在不背离如所附权利要求书所限定的本发明的精神和范围的情况下,可以在其中做出各种形式和细节上的改变。相应地,本发明的广度和范围不应当受到任何前述示例性实施例的限制,而应当只由所附权利要求书及其等效表述限定。

Claims (10)

1.一种计算设备中的方法(400),其包括:
将应用安装(402)在计算设备中;
接收(404)与应用相关联的应用清单,所述应用清单表明所述应用被允许访问的一种或更多种文件类型;以及
把所述一种或更多种文件类型登记(406)在可以由代理程序服务访问的位置中,所述代理程序服务被配置成把所述应用的访问限制到属于所登记的一种或更多种文件类型的文件,所述登记包括:
从应用清单读取一种或更多种文件类型;以及
将所述一种或更多种文件类型的指示存储在应用处理无法访问的安全位置中。
2.权利要求1的方法,其还包括:
将应用作为应用处理来启动;
把应用处理加载到应用容器中,所述应用容器拒绝应用处理直接访问文件系统数据;
在代理程序服务处从应用处理接收与文件系统数据当中的第一数据有关的访问请求;以及
当代理程序服务确定第一数据的文件类型被包括在所登记的一种或更多种文件类型当中时,允许应用处理访问第一数据。
3.权利要求2的方法,其中,所述一种或更多种文件类型包括一种或更多种文件扩展、文件种类或者其他文件属性或元数据,其中所述登记包括:
在可由代理程序服务访问但是不可由应用处理访问的安全位置处,存储关于用于应用的在应用清单中表明的一种或更多种文件扩展、文件种类或者其他文件属性或元数据的指示。
4.权利要求3的方法,其中,所述将应用处理加载到应用容器中包括:
为应用处理生成包括对应于应用容器的标识符的令牌,所述令牌不可由应用处理修改。
5.权利要求4的方法,其中,所述接收访问请求包括:
在代理程序服务处接收所述令牌以及关于在访问请求中请求的第一数据的指示。
6.权利要求5的方法,其中,所述允许应用处理进行访问包括:
由代理程序服务根据关于在访问请求中请求的第一数据的指示确定第一数据的文件类型;
由代理程序服务在所述安全位置处访问对应于应用的所登记的一种或更多种文件类型;
由代理程序服务确定第一数据的文件类型是否被包括在所登记的一种或更多种文件类型当中;以及
当确定第一数据的文件类型被包括在所登记的一种或更多种文件类型当中时,由代理程序服务允许应用处理访问第一数据。
7.权利要求6的方法,其中,所述允许应用处理进行访问包括:
当确定第一数据的文件类型没有被包括在所登记的一种或更多种文件类型当中时,由代理程序服务拒绝应用处理对第一数据的访问。
8.权利要求7的方法,其中,所述拒绝包括:
拒绝应用处理针对以下操作的访问:读取第一数据的文件、读取第一数据的文件夹的内容、写入到第一数据的文件或文件夹的至少其中之一、重命名第一数据的文件或文件夹、移动第一数据的文件或文件夹、或者拷贝到第一数据的文件或文件夹之上。
9.一种计算设备(102),其包括:
存储装置(108),其存储安装在计算设备(102)中的应用(120)以及与应用(120)相关联的应用清单(516),所述应用清单(516)表明应用(120)被允许访问的一种或更多种文件类型;所述存储装置进一步将从应用清单读取的一种或多种文件类型的指示存储在可由代理程序服务访问并无法由所述应用访问的安全位置中;以及
处理逻辑(502),其包括代理程序服务(106)并且把应用清单(516)所表明的一种或更多种文件类型登记在可由代理程序服务(106)访问的位置(504)中,所述代理程序服务(106)被配置成把应用(120)的访问限制到属于所登记的一种或更多种文件类型的文件。
10.一种计算设备中的器件,包括:
用于将应用安装(402)在计算设备中的装置;
用于接收(404)与应用相关联的应用清单的装置,所述应用清单表明所述应用被允许访问的一种或更多种文件类型;以及
用于把所述一种或更多种文件类型登记(406)在可以由代理程序服务访问的位置中的装置,所述代理程序服务被配置成把所述应用的访问限制到属于所登记的一种或更多种文件类型的文件,所述设备还包括:
用于从应用清单读取一种或更多种文件类型的装置;以及
用于将所述一种或更多种文件类型的指示存储在应用处理无法访问的安全位置中的装置。
CN201210331181.7A 2011-09-09 2012-09-10 针对应用的选择性文件访问 Active CN102938039B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/229367 2011-09-09
US13/229,367 US9773102B2 (en) 2011-09-09 2011-09-09 Selective file access for applications
US13/229,367 2011-09-09

Publications (2)

Publication Number Publication Date
CN102938039A CN102938039A (zh) 2013-02-20
CN102938039B true CN102938039B (zh) 2016-03-16

Family

ID=47696935

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210331181.7A Active CN102938039B (zh) 2011-09-09 2012-09-10 针对应用的选择性文件访问

Country Status (6)

Country Link
US (1) US9773102B2 (zh)
EP (1) EP2754083A4 (zh)
JP (1) JP6151256B2 (zh)
KR (1) KR101928127B1 (zh)
CN (1) CN102938039B (zh)
WO (1) WO2013036472A1 (zh)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9773102B2 (en) 2011-09-09 2017-09-26 Microsoft Technology Licensing, Llc Selective file access for applications
US8990561B2 (en) 2011-09-09 2015-03-24 Microsoft Technology Licensing, Llc Pervasive package identifiers
US9800688B2 (en) 2011-09-12 2017-10-24 Microsoft Technology Licensing, Llc Platform-enabled proximity service
US8855681B1 (en) * 2012-04-20 2014-10-07 Amazon Technologies, Inc. Using multiple applications to provide location information
JP6091144B2 (ja) * 2012-10-10 2017-03-08 キヤノン株式会社 画像処理装置及びその制御方法、並びにプログラム
US10356204B2 (en) 2012-12-13 2019-07-16 Microsoft Technology Licensing, Llc Application based hardware identifiers
US9292280B2 (en) 2013-03-15 2016-03-22 Google Inc. Systems and methods for multi-tiered format registration for applications
US9489430B2 (en) 2013-05-14 2016-11-08 Google Inc. System and method for identifying applicable third-party applications to associate with a file
US9858247B2 (en) 2013-05-20 2018-01-02 Microsoft Technology Licensing, Llc Runtime resolution of content references
US9547607B2 (en) 2013-06-27 2017-01-17 Microsoft Technology Licensing, Llc Brokering application access for peripheral devices
US9317686B1 (en) * 2013-07-16 2016-04-19 Trend Micro Inc. File backup to combat ransomware
JP6258001B2 (ja) * 2013-10-31 2018-01-10 株式会社東芝 電子機器および方法
CN104935560B (zh) * 2014-03-21 2019-06-07 新华三技术有限公司 一种数据保护方法及其装置
US9378384B2 (en) 2014-04-16 2016-06-28 Bank Of America Corporation Secure endpoint file export in a business environment
US9432369B2 (en) * 2014-04-16 2016-08-30 Bank Of America Corporation Secure data containers
WO2015176741A1 (de) * 2014-05-19 2015-11-26 Siemens Aktiengesellschaft Container mit einheitlichem look and feel mehrerer applikationen
CN105404819A (zh) * 2014-09-10 2016-03-16 华为技术有限公司 一种数据访问控制方法、装置以及终端
CN104281491B (zh) * 2014-09-26 2018-01-09 北京音之邦文化科技有限公司 一种数据处理方法及装置
CN104484285B (zh) * 2014-12-09 2017-11-17 杭州华为数字技术有限公司 一种存储管理方法和装置
CN105184153B (zh) * 2015-08-26 2018-10-02 北京元心科技有限公司 智能终端及其基于多级容器的应用程序运行方法
US9747438B2 (en) 2015-11-02 2017-08-29 Red Hat, Inc. Enabling resource access for secure application containers
EP3584696B1 (en) 2016-01-15 2024-01-03 Google LLC Managing delivery of code and dependent data using application containers
US9817648B2 (en) 2016-01-15 2017-11-14 Google Inc. Application containers with dynamic sub-package loading
US20180046330A1 (en) * 2016-08-12 2018-02-15 Microsoft Technology Licensing, Llc Interface menu presenting non-installed content sharing applications
US10416979B2 (en) * 2017-05-16 2019-09-17 Red Hat, Inc. Package installation on a host file system using a container
CN107292173A (zh) * 2017-06-06 2017-10-24 北京奇虎科技有限公司 文档安全防护方法、装置以及设备
WO2019005073A1 (en) * 2017-06-29 2019-01-03 Hewlett-Packard Development Company, L.P. COMPUTER DEVICE MONITORING VIA AGENT APPLICATIONS
CN107358118B (zh) * 2017-07-03 2020-06-09 中兴通讯股份有限公司 Sfs访问控制方法及系统、sfs及终端设备
US20190362066A1 (en) * 2018-05-25 2019-11-28 Microsoft Technology Licensing, Llc Accessing secure system resources by low privilege processes
US11238172B2 (en) * 2019-06-24 2022-02-01 International Business Machines Corporation Managing user access to data of a social media account
US11582238B2 (en) * 2019-08-13 2023-02-14 Dell Products L.P. Securing a server from untrusted client applications
CN110532764B (zh) * 2019-08-19 2022-03-11 维沃移动通信有限公司 一种权限处理的方法、移动终端及可读存储介质
US20220309041A1 (en) * 2021-03-23 2022-09-29 Microsoft Technology Licensing, Llc Flexible virtualization of application data for specified system locations
US20230035500A1 (en) * 2021-08-02 2023-02-02 Dell Products L.P. Dynamically selecting an application to open a file
US20230350941A1 (en) * 2022-04-29 2023-11-02 Apple Inc. Contextual text lookup for images

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1582430A (zh) * 2001-05-14 2005-02-16 国际商业机器公司 用于许可访问软件的方法、系统、与程序产品
CN101131725A (zh) * 2007-05-16 2008-02-27 何鸿君 一种文件访问控制方法
CN101925913A (zh) * 2008-01-31 2010-12-22 国际商业机器公司 加密文件访问的方法和系统

Family Cites Families (159)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5956715A (en) 1994-12-13 1999-09-21 Microsoft Corporation Method and system for controlling user access to a resource in a networked computing environment
US5721824A (en) 1996-04-19 1998-02-24 Sun Microsystems, Inc. Multiple-package installation with package dependencies
US6151643A (en) 1996-06-07 2000-11-21 Networks Associates, Inc. Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer
US6052120A (en) 1996-10-01 2000-04-18 Diamond Multimedia Systems, Inc. Method of operating a portable interactive graphics display tablet and communications systems
EP0862124A3 (en) 1997-02-28 2003-03-26 Fujitsu Limited File access system for efficiently accessing a file having encrypted data within a storage device
US5974549A (en) 1997-03-27 1999-10-26 Soliton Ltd. Security monitor
US6117187A (en) 1997-09-30 2000-09-12 Hewlett-Packard Company Automatic generation of a software installation package
US6101607A (en) 1998-04-24 2000-08-08 International Business Machines Corporation Limit access to program function
US6279111B1 (en) 1998-06-12 2001-08-21 Microsoft Corporation Security model using restricted tokens
US6505300B2 (en) 1998-06-12 2003-01-07 Microsoft Corporation Method and system for secure running of untrusted content
US6697569B1 (en) 1998-09-11 2004-02-24 Telefonaktiebolaget Lm Ericsson (Publ) Automated conversion of a visual presentation into digital data format
US6412070B1 (en) 1998-09-21 2002-06-25 Microsoft Corporation Extensible security system and method for controlling access to objects in a computing environment
US6694434B1 (en) 1998-12-23 2004-02-17 Entrust Technologies Limited Method and apparatus for controlling program execution and program distribution
US7151832B1 (en) 1999-11-18 2006-12-19 International Business Machines Corporation Dynamic encryption and decryption of a stream of data
US7398532B1 (en) 2000-03-02 2008-07-08 Hewlett-Packard Development Company, L.P. System and method for establishing a secure execution environment for a software process
US6725452B1 (en) 2000-06-01 2004-04-20 Aduoa, Inc. Method for resolving dependency conflicts among multiple operative entities within a computing environment
US7213266B1 (en) 2000-06-09 2007-05-01 Intertrust Technologies Corp. Systems and methods for managing and protecting electronic content and applications
AU2001268647A1 (en) 2000-06-20 2002-01-02 James R Clark Multi-session secured digital transmission process
US7669238B2 (en) 2000-06-21 2010-02-23 Microsoft Corporation Evidence-based application security
WO2002005184A2 (en) 2000-07-10 2002-01-17 Critical Devices, Inc. Method and system for software inventory management using a global central repository
US20030084134A1 (en) * 2000-09-01 2003-05-01 Pace Charles P. System and method for bridging assets to network nodes on multi-tiered networks
JP3776705B2 (ja) 2000-09-28 2006-05-17 株式会社東芝 通信システム、移動端末装置、ゲートウェイ装置及び通信制御方法
US6604209B1 (en) 2000-09-29 2003-08-05 Sun Microsystems, Inc. Distributed component testing in an enterprise computer system
JP2003044297A (ja) 2000-11-20 2003-02-14 Humming Heads Inc コンピュータリソースの制御を行なう情報処理方法および装置、情報処理システム及びその制御方法並びに記憶媒体、プログラム
US20020071565A1 (en) 2000-12-11 2002-06-13 Kurn David Michael Software process pre-authorization scheme for applications on a computer system
US20030037237A1 (en) 2001-04-09 2003-02-20 Jean-Paul Abgrall Systems and methods for computer device authentication
JP2003015993A (ja) 2001-06-28 2003-01-17 Sony Corp 情報処理装置および情報処理方法、記録媒体、並びにプログラム
US7069330B1 (en) 2001-07-05 2006-06-27 Mcafee, Inc. Control of interaction between client computer applications and network resources
US6917951B2 (en) * 2001-07-26 2005-07-12 Microsoft Corporation System and method for replicating data in resource sets
AU2003239385A1 (en) 2002-05-10 2003-11-11 Richard R. Reisman Method and apparatus for browsing using multiple coordinated device
US20150135206A1 (en) 2002-05-10 2015-05-14 Convergent Media Solutions Llc Method and apparatus for browsing using alternative linkbases
US7401235B2 (en) 2002-05-10 2008-07-15 Microsoft Corporation Persistent authorization context based on external authentication
US20150135214A1 (en) 2002-05-10 2015-05-14 Convergent Media Solutions Llc Method and apparatus for browsing using alternative linkbases
GB0212314D0 (en) 2002-05-28 2002-07-10 Symbian Ltd Secure mobile wireless device
US6865659B2 (en) 2002-06-07 2005-03-08 Sun Microsystems, Inc. Using short references to access program elements in a large address space
US7542988B1 (en) 2006-01-03 2009-06-02 Symantec Corporation File type associative application layered system
US7152243B2 (en) 2002-06-27 2006-12-19 Microsoft Corporation Providing a secure hardware identifier (HWID) for use in connection with digital rights management (DRM) system
US7401352B2 (en) * 2002-08-30 2008-07-15 International Business Machines Corporation Secure system and method for enforcement of privacy policy and protection of confidentiality
US7512810B1 (en) 2002-09-11 2009-03-31 Guardian Data Storage Llc Method and system for protecting encrypted files transmitted over a network
JP4400059B2 (ja) 2002-10-17 2010-01-20 株式会社日立製作所 ポリシー設定支援ツール
EP1420323A1 (en) 2002-11-18 2004-05-19 Koninklijke KPN N.V. Method and system for distribution of software components
US7337442B2 (en) 2002-12-03 2008-02-26 Microsoft Corporation Methods and systems for cooperative scheduling of hardware resource elements
US20040199787A1 (en) 2003-04-02 2004-10-07 Sun Microsystems, Inc., A Delaware Corporation Card device resource access control
US7478094B2 (en) 2003-06-11 2009-01-13 International Business Machines Corporation High run-time performance method for setting ACL rule for content management security
US7814551B2 (en) 2003-09-09 2010-10-12 Microsoft Corporation System and method for manifest generation
US7392383B2 (en) 2003-09-25 2008-06-24 International Business Machines Corporation Method and apparatus for providing process-based access controls on computer resources
US20050091535A1 (en) 2003-10-24 2005-04-28 Microsoft Corporation Application identity for software products
US20050091658A1 (en) 2003-10-24 2005-04-28 Microsoft Corporation Operating system resource protection
US8590032B2 (en) 2003-12-10 2013-11-19 Aventail Llc Rule-based routing to resources through a network
US7568195B2 (en) 2003-12-16 2009-07-28 Microsoft Corporation Determining a maximal set of dependent software updates valid for installation
US7480655B2 (en) 2004-01-09 2009-01-20 Webroor Software, Inc. System and method for protecting files on a computer from access by unauthorized applications
US7698393B2 (en) 2004-03-23 2010-04-13 Microsoft Corporation Method and system for shadowing information between computing devices
US20050246762A1 (en) 2004-04-29 2005-11-03 International Business Machines Corporation Changing access permission based on usage of a computer resource
US20050256859A1 (en) 2004-05-13 2005-11-17 Internation Business Machines Corporation System, application and method of providing application programs continued access to frozen file systems
US7650627B1 (en) 2004-05-28 2010-01-19 Sap Ag Abstract configuration files for efficient implementation of security services
US7509497B2 (en) 2004-06-23 2009-03-24 Microsoft Corporation System and method for providing security to an application
EP1783581A4 (en) 2004-06-30 2010-08-25 Panasonic Corp PROVISION OF EXECUTION OF A PROGRAM AND METHOD OF EXECUTION
US20100081375A1 (en) 2008-09-30 2010-04-01 Apple Inc. System and method for simplified control of electronic devices
US7703090B2 (en) 2004-08-31 2010-04-20 Microsoft Corporation Patch un-installation
US7676835B2 (en) 2004-08-31 2010-03-09 International Business Machines Corporation System and method for regulating access to objects in a content repository
US8499337B1 (en) 2004-10-06 2013-07-30 Mcafee, Inc. Systems and methods for delegation and notification of administration of internet access
US7516477B2 (en) 2004-10-21 2009-04-07 Microsoft Corporation Method and system for ensuring that computer programs are trustworthy
US8060856B2 (en) * 2004-11-18 2011-11-15 Aol Inc. Native objects accessible by platform neutral API
US8117623B1 (en) * 2004-11-18 2012-02-14 Adobe Systems Incorporated System and method for providing notices to users of a computer program in a flexible way
US7475396B2 (en) 2004-12-03 2009-01-06 International Business Machines Corporation Method and apparatus for defining, building and deploying pluggable and independently configurable install components
CN100490387C (zh) 2004-12-28 2009-05-20 北京邮电大学 用于应用服务器的基于令牌的细粒度访问控制系统及方法
US7472377B2 (en) 2005-01-18 2008-12-30 International Business Machines Corporation Systems and methods for determining software package identity during a system build
US7802294B2 (en) 2005-01-28 2010-09-21 Microsoft Corporation Controlling computer applications' access to data
US7650501B1 (en) 2005-02-15 2010-01-19 Sun Microsystems, Inc. System and methods for construction, fusion, prosecution, and maintenance of minimized operating environments
US20060193467A1 (en) 2005-02-16 2006-08-31 Joseph Levin Access control in a computer system
CA2600503C (en) 2005-04-18 2012-10-09 Research In Motion Limited Method and system for executing a container-managed application on a processing device
US7707620B2 (en) 2005-05-06 2010-04-27 Cisco Technology, Inc. Method to control and secure setuid/gid executables and processes
US20060259980A1 (en) 2005-05-16 2006-11-16 Microsoft Corporation Method and system for limiting rights of services
US7716734B2 (en) 2005-05-19 2010-05-11 Microsoft Corporation Systems and methods for pattern matching on principal names to control access to computing resources
US20070005734A1 (en) 2005-06-30 2007-01-04 Microsoft Corporation Generically extensible client application
US7580933B2 (en) 2005-07-28 2009-08-25 Microsoft Corporation Resource handling for taking permissions
US8073442B2 (en) 2005-10-05 2011-12-06 Microsoft Corporation Binding a device to a provider
US20070083620A1 (en) * 2005-10-07 2007-04-12 Pedersen Bradley J Methods for selecting between a predetermined number of execution methods for an application program
CN1959631B (zh) 2005-11-04 2016-09-21 上海启明软件股份有限公司 一种基于itron的应用软件自主装配系统及方法
US20100153671A1 (en) * 2005-12-01 2010-06-17 Drive Sentry Inc. System and method to secure a computer system by selective control of write access to a data storage medium
US7664924B2 (en) * 2005-12-01 2010-02-16 Drive Sentry, Inc. System and method to secure a computer system by selective control of write access to a data storage medium
US7779265B2 (en) 2005-12-13 2010-08-17 Microsoft Corporation Access control list inheritance thru object(s)
US8621549B2 (en) 2005-12-29 2013-12-31 Nextlabs, Inc. Enforcing control policies in an information management system
US8209747B2 (en) 2006-01-03 2012-06-26 Cisco Technology, Inc. Methods and systems for correlating rules with corresponding event log entries
US20070192500A1 (en) 2006-02-16 2007-08-16 Infoexpress, Inc. Network access control including dynamic policy enforcement point
US20100229242A1 (en) 2006-02-21 2010-09-09 Nec Corporation Program execution control system, program execution control method and computer program for program execution control
US20070208857A1 (en) 2006-02-21 2007-09-06 Netiq Corporation System, method, and computer-readable medium for granting time-based permissions
EP1833222A1 (en) 2006-03-10 2007-09-12 Abb Research Ltd. Access control protocol for embedded devices
US20070234412A1 (en) 2006-03-29 2007-10-04 Smith Ned M Using a proxy for endpoint access control
US9489109B2 (en) 2006-03-30 2016-11-08 Sony Ericsson Mobile Communication Ab Data communication in an electronic device
US8001528B2 (en) 2006-03-30 2011-08-16 Microsoft Corporation Organization of application state and configuration settings
US7870387B1 (en) 2006-04-07 2011-01-11 Mcafee, Inc. Program-based authorization
US8166472B2 (en) * 2006-10-12 2012-04-24 Apple Inc. Installation utility system and method
US20080120707A1 (en) 2006-11-22 2008-05-22 Alexander Ramia Systems and methods for authenticating a device by a centralized data server
US7934087B2 (en) 2006-11-29 2011-04-26 Novell, Inc. Techniques for secure event recording and processing
US7925875B2 (en) 2006-12-31 2011-04-12 Sandisk Corporation Systems and methods for identifying and booting a computer architecture
CN100483352C (zh) 2007-02-13 2009-04-29 华为技术有限公司 Idl调用装置及调用方法
US20080201705A1 (en) 2007-02-15 2008-08-21 Sun Microsystems, Inc. Apparatus and method for generating a software dependency map
US20080220878A1 (en) 2007-02-23 2008-09-11 Oliver Michaelis Method and Apparatus to Create or Join Gaming Sessions Based on Proximity
CN101616719A (zh) 2007-02-23 2009-12-30 高通股份有限公司 用以基于接近度创建或加入游戏会话的方法和设备
US7797743B2 (en) 2007-02-26 2010-09-14 Microsoft Corporation File conversion in restricted process
US20080244723A1 (en) 2007-03-27 2008-10-02 Microsoft Corporation Firewall Restriction Using Manifest
US8239954B2 (en) 2007-05-07 2012-08-07 Microsoft Corporation Access control based on program properties
CN101325509B (zh) 2007-06-11 2011-04-06 华为技术有限公司 安装软件组件的方法、系统及装置
US8185889B2 (en) 2007-06-19 2012-05-22 Red Hat, Inc. Methods and systems for porting software packages from one format to another
US8191012B2 (en) 2007-08-30 2012-05-29 Daylife, Inc. Method and system for creating theme, topic, and story-based cover pages
GB2455059A (en) 2007-10-09 2009-06-03 Symbian Software Ltd Transmitting device pairing information over multiple available out of band channels/interfaces
US8978028B2 (en) 2007-10-10 2015-03-10 Microsoft Technology Licensing, Llc Transactional multi-package installation
KR101474561B1 (ko) 2007-11-27 2014-12-19 삼성전자주식회사 이동통신 단말기에서의 어플리케이션 실행방법 및 장치
US8107879B2 (en) 2007-12-31 2012-01-31 Intel Corporation Device, system, and method of establishing multiple wireless connections
US20090193507A1 (en) 2008-01-28 2009-07-30 Wael Ibrahim Authentication messaging service
EP2086206A1 (en) 2008-01-31 2009-08-05 Alcatel Lucent System for operating a peer-to-peer network taking into account access network subscriber information
JP4613969B2 (ja) 2008-03-03 2011-01-19 ソニー株式会社 通信装置、及び通信方法
EP2107458A1 (en) 2008-03-31 2009-10-07 Jatho Investments Modelling software appliance
US7930760B2 (en) 2008-04-01 2011-04-19 Microsoft Corporation Centralized enforcement of name-based computer system security rules
US20090319673A1 (en) 2008-04-24 2009-12-24 International Business Machines Corporation Automated Wireless Device Pairing
US8458363B2 (en) 2008-06-08 2013-06-04 Apple Inc. System and method for simplified data transfer
US8407693B2 (en) 2008-06-09 2013-03-26 International Business Machines Corporation Managing package dependencies
US20090327900A1 (en) 2008-06-26 2009-12-31 Microsoft Corporation Indicating resources to which there are access rights
US8204969B2 (en) * 2008-08-05 2012-06-19 Canon Kabushiki Kaisha Method for retrieving updates via the internet
US20100058320A1 (en) 2008-09-04 2010-03-04 Microsoft Corporation Managing Distributed System Software On A Gaming System
KR100997802B1 (ko) 2008-10-20 2010-12-01 한국전자통신연구원 정보 단말기의 보안 관리 장치 및 방법
US9043919B2 (en) * 2008-10-21 2015-05-26 Lookout, Inc. Crawling multiple markets and correlating
US8146134B2 (en) 2008-10-28 2012-03-27 Yahoo! Inc. Scalable firewall policy management platform
US20100174599A1 (en) 2009-01-05 2010-07-08 Apple Inc. System and method for providing content associated with a product or service
US9288210B2 (en) 2009-01-26 2016-03-15 Microsoft Technology Licensing, Llc Revocable object access
JP4803263B2 (ja) 2009-01-28 2011-10-26 ブラザー工業株式会社 ソフトウェアのインストール方法及びプログラム及び情報処理装置
US8752153B2 (en) * 2009-02-05 2014-06-10 Wwpass Corporation Accessing data based on authenticated user, provider and system
US8131214B2 (en) 2009-03-02 2012-03-06 Motorola Mobility, Inc. Method for selecting content for transfer or synchronization between devices
US8375377B2 (en) * 2009-03-06 2013-02-12 International Business Machines Corporation Controlling java virtual machine component behavior on a per-classloader basis
US8468608B1 (en) 2009-03-30 2013-06-18 Symantec Corporation Enforcing digital rights management in a heterogeneous environment
US20100278345A1 (en) 2009-05-04 2010-11-04 Thomas Matthieu Alsina Method and apparatus for proximity based pairing of mobile devices
US20100287513A1 (en) 2009-05-05 2010-11-11 Microsoft Corporation Multi-device gesture interactivity
KR101590188B1 (ko) 2009-05-08 2016-01-29 삼성전자주식회사 휴대단말기에서 소프트웨어 패키지의 무결성을 검증하는 방법
US9270683B2 (en) * 2009-05-15 2016-02-23 Amazon Technologies, Inc. Storage device authentication
US8826269B2 (en) 2009-06-15 2014-09-02 Microsoft Corporation Annotating virtual application processes
JP5424735B2 (ja) 2009-06-17 2014-02-26 キヤノン株式会社 通信装置及びその制御方法、プログラム
US8340577B2 (en) 2009-09-24 2012-12-25 Research In Motion Limited Communications device using electromagnet and activated communications circuit
US20110070827A1 (en) 2009-09-24 2011-03-24 Research In Motion Limited Communications device and method for initiating communications at a communications device
US20110098030A1 (en) 2009-10-27 2011-04-28 Nokia Corporation Method and apparatus for activating services
US8838644B2 (en) 2009-11-25 2014-09-16 International Business Machines Corporation Extensible access control list framework
CN102129364B (zh) 2010-01-14 2013-09-25 中国电信股份有限公司 应用程序中嵌入微件工具栏的方法和快速访问微件的方法
US8745239B2 (en) * 2010-04-07 2014-06-03 Limelight Networks, Inc. Edge-based resource spin-up for cloud computing
US9218359B2 (en) * 2010-07-02 2015-12-22 Code Systems Corporation Method and system for profiling virtual application resource utilization patterns by executing virtualized application
US20120194534A1 (en) * 2011-02-02 2012-08-02 Alcatel-Lucent Usa Inc. System and Method for Managing Cache Storage in Adaptive Video Streaming System
US20120297288A1 (en) 2011-05-16 2012-11-22 Edward Mansouri Method and System for Enhancing Web Content
US9319406B2 (en) * 2011-07-12 2016-04-19 Apple Inc. System and method for linking pre-installed software to a user account on an online store
US8973158B2 (en) 2011-07-20 2015-03-03 Microsoft Technology Licensing Llc Trust level activation
US20130054734A1 (en) * 2011-08-23 2013-02-28 Microsoft Corporation Migration of cloud applications between a local computing device and cloud
US20130061316A1 (en) 2011-09-06 2013-03-07 Microsoft Corporation Capability Access Management for Processes
US9118686B2 (en) 2011-09-06 2015-08-25 Microsoft Technology Licensing, Llc Per process networking capabilities
EP2754085B1 (en) * 2011-09-07 2018-10-24 Intel Corporation Verifying firmware integrity of a device
US8990561B2 (en) 2011-09-09 2015-03-24 Microsoft Technology Licensing, Llc Pervasive package identifiers
US20130067459A1 (en) 2011-09-09 2013-03-14 Microsoft Corporation Order-Independent Deployment Collections with Dependency Package Identifiers
US9773102B2 (en) 2011-09-09 2017-09-26 Microsoft Technology Licensing, Llc Selective file access for applications
US9800688B2 (en) * 2011-09-12 2017-10-24 Microsoft Technology Licensing, Llc Platform-enabled proximity service
US9152784B2 (en) 2012-04-18 2015-10-06 Mcafee, Inc. Detection and prevention of installation of malicious mobile applications
US10356204B2 (en) * 2012-12-13 2019-07-16 Microsoft Technology Licensing, Llc Application based hardware identifiers
US9858247B2 (en) 2013-05-20 2018-01-02 Microsoft Technology Licensing, Llc Runtime resolution of content references

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1582430A (zh) * 2001-05-14 2005-02-16 国际商业机器公司 用于许可访问软件的方法、系统、与程序产品
CN101131725A (zh) * 2007-05-16 2008-02-27 何鸿君 一种文件访问控制方法
CN101925913A (zh) * 2008-01-31 2010-12-22 国际商业机器公司 加密文件访问的方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于Linux操作系统文件权限的设置;孙悦等;《计算机安全》;20080331;全文 *

Also Published As

Publication number Publication date
JP6151256B2 (ja) 2017-06-21
US20130067600A1 (en) 2013-03-14
US9773102B2 (en) 2017-09-26
CN102938039A (zh) 2013-02-20
KR20140066718A (ko) 2014-06-02
EP2754083A4 (en) 2015-04-22
EP2754083A1 (en) 2014-07-16
KR101928127B1 (ko) 2019-02-26
WO2013036472A1 (en) 2013-03-14
JP2014530399A (ja) 2014-11-17

Similar Documents

Publication Publication Date Title
CN102938039B (zh) 针对应用的选择性文件访问
CN110199271B (zh) 用于现场可编程门阵列虚拟化的方法和设备
CN110178136B (zh) 现场可编程门阵列程序的签名验证的方法和设备
CN101650660B (zh) 从中央存储装置引导计算机系统
EP1946238B1 (en) Operating system independent data management
US8417969B2 (en) Storage volume protection supporting legacy systems
US20190026442A1 (en) Offline activation for application(s) installed on a computing device
CN112805708B (zh) 保护计算机系统上的选定磁盘
US10592470B2 (en) Discovery of calling application for control of file hydration behavior
US10732889B2 (en) Information handling system with multi-key secure erase of distributed namespace
US20180268156A1 (en) Methods and apparatus for containerized secure computing resources
US9009777B2 (en) Automatic role activation
US20220053001A1 (en) Methods and apparatus for automatic configuration of a containerized computing namespace
US11409847B2 (en) Source-based authentication for a license of a license data structure
US8090937B2 (en) System and method for managing booting of an information handling system
US10853506B2 (en) Systems and methods for preventing leakage of protected document data
TW202101266A (zh) 用於安全介面控制之安全執行客體所有者控制
US8359635B2 (en) System and method for dynamic creation of privileges to secure system services
US11244031B2 (en) License data structure including license aggregation
CN102378964B (zh) 创建虚拟进程的进程内中介
CN112231761A (zh) 一种设备挂载方法、计算设备及可读存储介质
KR20140127124A (ko) 시스템 자원에 대한 접근을 관리하는 전자 장치
CN113254917B (zh) 一种录音权限管理方法、计算设备及存储介质
US20150277888A1 (en) Systems and methods to create a clean install of an application
JP2010033102A (ja) 情報処理端末、アクセス制御システム、アクセス制御規則割当方法およびプログラム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150706

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150706

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

C14 Grant of patent or utility model
GR01 Patent grant