CN103890772A - 用于web运行时刻系统的沙盘技术 - Google Patents
用于web运行时刻系统的沙盘技术 Download PDFInfo
- Publication number
- CN103890772A CN103890772A CN201280048863.5A CN201280048863A CN103890772A CN 103890772 A CN103890772 A CN 103890772A CN 201280048863 A CN201280048863 A CN 201280048863A CN 103890772 A CN103890772 A CN 103890772A
- Authority
- CN
- China
- Prior art keywords
- widgets
- access control
- wrt
- control rule
- security
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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
- G06F21/6281—Protecting 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 at program execution time, where the protection is within the operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/629—Protecting access to data via a platform, e.g. using keys or access control rules to features or functions of an application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
- G06F9/4484—Executing subprograms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/401—Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2113—Multi-level security, e.g. mandatory access control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2119—Authenticating web pages, e.g. with suspicious links
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2137—Time limited access, e.g. to a computer or data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
在本发明的第一实施例中,提供了一种在具有处理器和存储器的计算机系统中提供小组件的安全性强制执行的方法,包括:从请求服务的小组件进程提取访问控制信息、生成为该小组件进程定制的访问控制规则,并且向Web运行时刻(WRT)系统的用户代码空间外的计算机系统的可信部分提供访问控制规则;以及,对于任何静态访问控制规则,将小组件进程的安全性检查从WRT系统委托到计算机系统的可信部分。
Description
技术领域
本发明总体上涉及改善web运行时刻(webruntime)系统的安全性。更具体地说,本发明涉及使用沙盘技术来改善web运行时刻系统的安全性。
背景技术
小组件(widget)(通常也称为web小组件)是用于显示和/或更新本地数据或Web上的数据的交互式单目标应用,其以允许在用户的机器或移动设备上进行单个下载和安装的方式被打包。小组件是可以使用web标准来制作(authored)并且被打包用于分发的客户端侧应用。可以将它们下载并且安装在客户端机器上。小组件可以作为单机应用(stand-alone application)来运行(意指它能够在Web浏览器外运行)。小组件是通常使用HTML、JavaScript和CSS编写的可下载应用,并且利用web技术和标准。
小组件运行所处的运行时刻环境被称为小组件用户代理或Web运行时刻系统(Web Runtime System,WRT)。WRT负责进行小组件的安装/解除安装,并且提供用于小组件的调用和配置的功能。WRT也负责小组件的运行(execution)。例如,典型地以作为独立语言的JavaScript来编写web小组件。WRT包含被称为JavaScript引擎的软件模块,以解释小组件的JavaScript代码并且执行该运行。
图1图示出基于LimoTM平台(即基于LinuxTM的移动式电话平台)的WRT的简化高层(high level)体系结构图解。在该示例中,在用户界面(UI)层,小组件可以执行诸如提供天气信息、时钟或图片查看器之类的功能。存在Web运行时刻UI。在引擎层,存在小组件引擎和小组件管理器。在核心层,存在Web套件(Webkit)。Web套件是在Web引擎中使用的库。WRT是除核心层的Web引擎之外的组件的集合,需要其来支持所安装的小组件。
小组件程式包是符合特定标准(例如参见由W3C、万维网联盟2011年8月11日出版的W3C建议的推荐“Widgets:Packaging and Configurationspecification”)、包含构成小组件的实施的各种文件(包括配置文档、图标、数字签名等等)的程式包。小组件程式包包含元数据,该元数据在本专利申请中将被称为用于相关联的小组件的清单文件(manifest file)。清单文件描述大量的事情,包括对于小组件的访问限制。由WRT使用访问限制来控制小组件对设备能力、网络资源、文件系统等等的访问。
存在若干不同的标准团体,其稍有不同地设置用于小组件的规范和标准化以及用于小组件的JavaScript API。设置用于小组件的规范的这些团体包括:W3C、WAC、JIL、BONDI和Opera等等。结果是,存在不同类型的小组件和小组件运行时刻系统。尽管规范的细节(例如,如何描述访问权限和许可的粒度)不同,但这些小组件系统的通用安全性模型和访问控制强制执行(enforcement)原理非常地类似。
在运行小组件本身的相同进程中由WRT的用户空间(user-space)代码处理在当前的WRT实施中的访问控制强制执行。例如,如图2中所示的,在Web引擎代码中处理这些控制和强制执行,图2示出在Web引擎层具有访问控制特征的BONDI小组件实施的总体高层体系结构。
参考图3,本专利申请的发明人已经认识到,因为由WRT的用户空间代码——在运行小组件本身的相同进程中——来处理在当前的WRT实施中的访问控制强制执行,所以出现常规WRT中的安全性弱点。例如,在Web引擎(例如Web套件)代码中处理这些控制和强制执行。如图3所图示的,具有合法的访问流的良好的进程将通过安全性检查。然而,受害的进程具有可能导致绕过所提到的安全性检查的破坏的访问流。
常规WRT中的安全性控制固有地是易损坏的并且可能经由诸如地址空间破坏和代码注入之类的威胁被绕过。例如,Web引擎可能包含一漏洞(bug),该漏洞允许远程攻击者或恶意的小组件注入并运行任意代码或者改变该Web引擎中的合法控制流。因此,攻击者/小组件可以绕过安全性检查并且访问受限资源。
作为说明性示例,流行的Web浏览器SafariTM具有可能导致绕过安全性检查的若干易损坏性类型。SafariTM基于被称作Web套件的同一Web引擎,其用于包括iPhoneTM平台和AndroidTM平台的许多移动式平台。这些易损坏性包括运行代码易损坏性、溢出易损坏性和存储器破坏易损坏性。SafariTM基于在许多移动式平台中使用的相同Web套件Web引擎。因此,存在与常规WRT安全性控制相关联的显著的安全性顾虑。
大规模应用社区(WAC)定义用于访问设备能力的JavaScript API。WAC规范从诸如JIL、BONDI以及W3C之类的较早规范成就派生而来,并且受其影响。JIL和BONDI小组已经与WAC联合,并且现在所有这些成就和操作当前处于WAC的总括之下。
WAC API包括被分组成不同模块的若干方法和属性:
允许使用设备加速度计传感器的加速度计模块API;
允许使用设备定向传感器的定向模块API;
使得能够通过设备照相机捕捉媒体的照相机模块API;
提供对设备状态信息的访问的设备状态模块API;
允许访问设备文件系统的文件系统模块API;
允许消息发送和调取的消息收发模块API;
暴露设备位置的地理定位模块API(如在W3C中规定的);
暴露不同的PIM(个人信息管理)功能的pim模块API;
使得能够管理联系人信息的联系人模块API;
使得能够管理日历信息的日历模块API;
使得能够管理任务信息的任务模块API;
使得能够通过不同的设备能力与端用户进行交互的设备交互模块API。
对这些模块的方法和属性的访问服从不同的策略规则。WAC将这些API中的一些标识为“受限”,也称作“敏感”功能,并且对这些受限API的访问由WAC安全性框架控制并且需要用户同意。
WAC定义三个安全域:“可信”域(又叫作WAC域)、“不可信”域和“运营商”(又叫作WAC运营商)域。取决于它们所运行的域,应用服从不同的安全性规则。WAC也利用数字签名方案,并且应用的域是基于它的数字签名链被确定的。“运营商”域意图由网络服务供应商使用。如果应用具有源于WAC营办商的数字签名,即,该应用的证书链的根是运营商根证书,那么该应用运行在运营商域中。如果应用的证书链是已知的WAC根证书,则该应用运行在可信域中。否则,如果应用没有被签名或签名链没有扩展到WAC根证书,则其运行在不可信域中。图4对基于哪些情况小组件属于哪个域进行概述。
由于适当的安全性控制,访问受限API典型地需要用户确认。例如,希望访问地理定位模块API的应用可能需要用户为该应用访问API提供许可。能够以临时性或永久性为基础给出该许可。例如,WAC定义可用于对这些API强加安全性控制的5种不同类型的用户确认需要:
●允许:能够在不提示用户进行确认的情况下运行功能;
●一次使用:必须每次提示用户来确认可以运行功能;
●会话:每一会话必须提示用户一次(即,当小组件首先被添加到活动页面时)来确认可以运行功能;
●覆盖式:在由小组件第一次进行API功能时,必须提示用户进行确认,但是一旦确认,再也不需要提示;
●拒绝:由运营商使用来指示从不许可API功能。
下面的表格1描绘用于每个安全域的受限功能和它们的对应的策略规则的例子。能够由运营商修改该表格来个性化体验。此外,用户也能够配置策略并且选择使用与运营商提供的默认策略有区别的策略。
表格1
需要在该框架内运行的应用以在其元数据文件(例如清单、小组件配置文档等等)中指定和描述它需要访问哪些API和远程网络资源。这些被称为相关性。元数据文件中的[feature]和[iriset]属性能够用于该目的。在准许用于要安装的小组件资源的许可之前,具有WAC能力的设备能够显示小组件的静态表达的相关性(例如,与小组件配置文档中的<特征元素声明>有关的API)。
在Linux中存在两种主要机制来提供访问控制:DAC和MAC机制。
在计算机安全性中,强制访问控制(MAC)指的是如下的一类访问控制:操作系统通过其来约束主体或发起者访问或通常对对象或目标执行某种操作的能力。实际上,主体通常是进程或线程;对象是诸如文件、目录、TCP/UDP端口、共享存储器片段等等的构造。主体和对象的每个均具有安全性属性的集合。无论何时主体企图访问对象时,由操作系统内核强制执行的认证规则检查这些安全性属性并且决定访问是否能够发生。将按照认证规则(也称为策略)的集合来测试任何主体对任何对象进行的任何操作以确定是否允许该操作。
利用强制访问控制,由安全性策略管理员来集中地控制该安全性策略;用户不具有超越策略并且例如准许对否则将是受限的文件进行访问的能力。相反,也支配主体访问对象的能力的自主访问控制(DAC)允许用户具有做出策略决定/或分配安全性属性的能力。(用户、群组和读写运行许可的传统的UNIX操作系统是DAC的示例。)MAC使能的系统允许策略管理员实施组织级的安全性策略。与DAC不同,用户不能偶然地或有意地超越或修改该策略。这允许安全性管理员定义保证(原则上)对于所有用户将强制执行的中心性的策略。
当前系统中的DAC机制提供用于不同的用户的资产的隔离。传统上,计算机系统被设计为多用户系统。例如,公司或大学中的计算机能够存储不同个人的资产(例如文件、口令、程序等等)并且同时地服务于多个用户(例如文件服务器)。传统的DAC(即,用户/群组许可)确定哪些用户能够访问哪些资产并且因此提供用户级隔离。
在实际上是单个用户设备的现代高端移动设备中,DAC用来提供用于应用的隔离和沙盘。例如,在Android电话中,每个应用被分配用户id并且好象它是‘虚拟用户’一样运行。通过该方式,由于DAC隔离,属于不同应用的文件能够具有不同的DAC许可,并且应用不能访问每个其他的文件。此外,每个应用能够被控制来访问它被允许访问的特定的资源集合。在Android中,例如,当新的应用被安装时,系统向用户示出该应用需要的许可列表并且询问用户是否准许那些许可。如果许可被准许,系统以允许应用仅仅访问由许可规定的资源或服务的方式来配置该应用的DAC许可。
类似地,例如SMACK的MAC机制能够用于在移动设备中提供应用隔离和沙盘。SMACK和SELinux是基于MAC机制的标签。我们能够向系统中的应用和资源分配特定的(且可能唯一的)标签。SMACK和SELinux也使用访问控制策略(即,访问规则的列表,其规定具有哪个标签的应用能够访问哪个标签的资源)。
类似于如上所述的DAC机制,可以向移动电话中的应用分配不同的标签,并且将适当的策略规则传递到MAC机制来控制应用能够访问哪些资源和服务。基于由用户准许的许可,移动电话系统能够配置新近安装的应用的MAC标签和策略规则。
在Linux中,对于像文件、套接字、目录和设备等等的内核空间对象强制执行DAC和MAC。但是在像智能电话等等的复杂系统中,可能存在在通过DAC或MAC不能控制的用户空间中定义的许多对象。这些对象是由诸如系统守护进程、框架守护进程等等的进程创建和控制的。如果应用需要访问由守护进程控制的用户空间对象,则它需要将请求发送到该守护进程来调取对象。为了保护这样的用户空间对象,必须存在一种证书来强制执行访问权限。可信实体应该检查应用/进程是否有权限访问用户空间对象。在一些情况下,用户空间对象的守护进程能够执行这样的安全性检查和强制执行。如果应用和守护进程使用标准Linux IPC来直接地彼此通信,则守护进程能够检查进行请求的应用的证书和访问权限,并且因此不必引入第三方过程来执行安全性检查。然而,在智能电话中,一些服务可能使用像D总线那样的中间实体来用于通信、服务请求等等。在此情况下,对等方的证书不被自动地传播到通信信道的另一端,且因此为了访问控制目的而需要第三方可信实体,在该文档中我们将会将其称为“安全服务器”。这样的安全服务器能够将可验证的证书分给进行请求的进程并且稍后能够代表想要检查进行请求的进程的访问权限的其他进程来验证证书。这样的方案能够使用不同形式的证书。在本文档中,为了简化起见,我们将证书认为是由安全服务器生成的随机cookie(即随机数)。在图5中给出示例操作流。
在500,由应用进程请求cookie。在502,安全服务器调取应用进程的访问权限,并且生成随机cookie,将它与访问权限一起保存。在504,安全服务器向应用进程发送响应。在506,应用进程使用cookie从服务守护进程请求服务。在508,服务守护进程询问具有给定的cookie的特权。在510,安全服务器检查特权,并且在512,安全服务器向服务守护进程返回结果。在512,服务守护进程对应用进程进行响应。
发明内容
技术问题
本发明总体上涉及改善小组件系统的安全性,以及对设备和其他应用提供保护使其免遭受害的或恶意的小组件和/或进程运行该小组件。
解决方案
在本发明的第一实施例中,提供了一种在具有处理器和存储器的计算机系统中提供小组件的安全性强制执行的方法,包括:从请求服务的小组件进程中提取访问控制信息、生成为该小组件进程定制的访问控制规则,并且,向Web运行时刻(WRT)系统的用户代码空间外的计算机系统的可信部分提供访问控制规则;以及,对于任何静态访问控制规则,将小组件进程的安全性检查从WRT系统委托到计算机系统的可信部分。
在本发明的第二实施例中,提供了一种在具有处理器和存储器的计算机系统中提供小组件的安全性强制执行的方法,包括:从请求服务的小组件进程中提取访问控制信息、生成为该小组件进程定制的访问控制规则,并且,向Web运行时刻(WRT)系统的用户代码空间外的计算机系统的可信部分提供访问控制规则;以及,对于任何静态访问控制规则,将小组件进程的一些但非所有的安全性检查从WRT系统委托到计算机系统的可信部分,使得执行两级安全性检查,一个由WRT系统执行,并且一个由计算机系统的可信部分执行。
在本发明的第三实施例中,提供一种具有改善的小组件安全性的计算机系统,包括:处理器;存储器;操作系统;和支持小组件的安装和调用的Web运行时刻(WRT)系统,WRT系统被配置为从每个所安装的小组件接收小组件清单并且确定可从WRT委托到与操作系统相关联的计算机系统的更安全的部分的访问控制规则,WRT系统进一步被配置为将可委托的静态访问控制规则的集合传递到更安全的部分以执行安全性检查。
在本发明的第四实施例中,提供一种系统,包括:多个小组件;WRT管理进程;安全服务器;和操作系统内核;其中WRT管理进程被配置为:从小组件提取访问控制信息、生成访问控制规则,并且向操作系统内核提供访问控制规则;以及,对于任何静态访问控制规则,将静态访问控制规则的至少一些安全性检查委托到操作系统内核。
在本发明的第五实施例中,提供一种可由机器读取的程序储存设备,该程序储存设备有形地体现可由机器运行以用于执行在具有处理器和存储器的计算机系统中提供小组件的安全性强制执行的方法的指令的程序。该方法包括:从请求服务的小组件进程提取访问控制信息、生成为该小组件进程定制的访问控制规则,并且,向Web运行时刻(WRT)系统的用户代码空间外的计算机系统的可信部分提供访问控制规则;以及,对于任何静态访问控制规则,将小组件进程的安全性检查从WRT系统委托到计算机系统的可信部分。
有益效果
本发明改善小组件系统的安全性,并且对设备和其他应用提供保护使其免遭受害的或恶意的小组件和/或进程运行该小组件。
附图说明
图1图示出基于LimoTM平台(即基于LinuxTM的移动电话平台)的WRT的简化的高层体系结构图解。
图2是图示出现有技术Web运行时刻体系结构的各部分的高层体系结构图解。
图3图示出现有技术系统中的小组件安全性易损坏性。
图4对基于哪些情况小组件属于哪个域进行概述。
图5是根据本发明的实施例的示例操作流。
图6是图示出根据本发明的实施例的WRT体系结构的框图。
图7图示出根据本发明的一个实施例、向诸如操作系统内核之类的系统的更安全的部分提供小组件访问规则的修改的Web运行时刻系统。
图8图示出根据本发明的一个实施例的、安全性检查从Web运行时刻到内核的委托。
图9图示出根据本发明的一个实施例、向诸如操作系统内核之类的系统的更安全的部分提供小组件访问规则的修改的Web运行时刻系统。
图10图示出根据本发明的实施例使用安全性令牌来强制执行小组件安全性。
图11图示出根据本发明的一个实施例、使用安全性令牌以对于小组件的位置服务请求执行安全性检查的示例。
图12是图示出根据本发明的实施例的、用于提供小组件的安全性强制执行的方法的流程图。
具体实施方式
现在将详细地参考本发明的特定实施例,其包括由发明人预期的用于执行本发明的最佳实施方式。在附图中图示这些特定实施例的示例。尽管结合这些特定实施例描述本发明,但将理解,不意欲将本发明限制到所描述的实施例。相反地,意图覆盖可以包括在所附权利需要所限定的精神和范围内的替换物、修改和等同体。在下面的描述中,阐述特定细节以便提供对本发明的彻底的理解。可以在没有这些特定细节中的一些或所有的情况下实践本发明。另外,可以不必详细描写众所周知的特征以避免不必要地使本发明晦涩。
根据本发明,可以使用各种类型的操作系统、编程语言、计算平台、计算机程序和/或通用机器来实施组件、处理步骤和/或数据结构。另外,那些本领域技术人员将认识到,在没有脱离在这里公开的发明构思的范围和精神的情况下,也可以使用诸如硬连线设备、现场可编程门阵列(FPGA)、专用集成电路(ASIC)等等本质上较不通用的设备。本发明也可以有形地体现为存储在诸如存储器设备的计算机可读媒介上的计算机指令的集合。
本发明总体上涉及改善小组件系统的安全性,以及对设备和其他应用提供保护使其免遭受害的或恶意的小组件和/或进程运行该小组件。一种解决方案可以涉及将访问控制规则的集合从Web运行时刻(WRT)系统委托到WRT的用户空间代码外的计算机系统的更安全的部分,由此改善小组件安全性。然而,这种解决方案也需要解决诸如WAC API之类的、包含访问控制强制执行规则的API。
在本发明的实施例中,具有沙盘机制的多进程Web运行时刻系统用来安全地运行WAC小组件。如果所允许和拒绝的许可对于每个小组件是静态的,即,如果所有访问权限在安装时间是已知的或能够被确定,那么涉及将访问控制规则的集合从WRT委托到计算机系统的更安全的部分的解决方案将是足够的。然而,由WAC规范许可的会话的添加的特征和一次使用提示使访问控制管理和沙盘复杂化,这是因为小组件的访问权限能够在运行时刻改变并且在系统上必须存在可信实体来监视WAC小组件的运行以检测它们的访问权限的上下文中的这样的改变、相应地修订访问控制策略并且强制执行新的上下文。
在本发明中,使用多进程模型来重新设计WRT。被称作WRT进程的管理进程被引入以负责初始化小组件进程、调整安全性配置的一些部分、并且处理来自小组件进程的安全关键的请求。每个小组件在单独的且隔离的进程中运行。由安全服务器、WRT进程和内核经由通过安装管理器在安装时间以及通过WRT进程在启动时间和运行时刻配置的DAC与MAC规则的组合来控制用于该进程的访问。
在小组件的安装期间,亦被称为程式包管理器的安装管理器处理小组件的程式包(包括它的证书和清单文件)并且然后识别其能够在安装时间准许的访问权限。安装管理器然后基于识别的权限来精巧地制作用于该小组件的访问控制规则,并且将这些规则传递到操作系统内核和/或适当的操作系统/框架守护进程/服务。当该小组件被调用时,WRT进程确定在启动时间哪个访问权限能够被授予给该小组件、精巧地制作访问控制规则并且将它们传递到操作系统内核和/或适当的操作系统/框架守护进程/服务。WRT进程然后创建或保留用于该小组件的运行的进程。结果是,小组件在对于其他活动的小组件来说为分离的且隔离的进程中运行。在小组件的运行期间,安全性检查和强制执行被委托给操作系统内核和其他有关的进程。WRT进程在运行时刻的安全性控制和配置中也扮演活跃的角色。照此,系统能够基于API来动态地改变哪个实体执行访问控制策略的检查。
图6是图示出根据本发明的实施例的WRT体系结构的框图。程式包管理器600在安装期间处理小组件程式包并且通过检查其证书来识别小组件属于哪个域。小组件的域指示对于哪个许可需要使用哪个类型的提示。对于需要覆盖式提示的许可,安装管理器提示用户以得到对所请求的许可的批准。基于来自用户的反馈,安装管理器配置授予给小组件的、用于那些许可的访问规则。
在启动时间,通过将启动请求中继到AUL604的菜单屏幕602来识别小组件。AUL604然后将请求中继到WRT管理进程606。WRT管理进程606识别该小组件的许可是否需要以及哪个许可需要会话和一次性提示。对于需要会话提示的那些许可,WRT进程提示用户以得到确认。基于来自用户的反馈,WRT进程配置授予给小组件的、用于那些许可的访问规则。
在运行时刻,当WAC小组件运行时,能够由内核和安全服务器608基于通过安装管理器和WRT管理进程606建立的访问控制配置来处理与除一次使用之外的所有提示类型相对应的访问。对与一次使用提示相对应的访问进行不同地处理。需要一次使用提示许可的小组件610向WRT管理进程606发送请求。WRT管理进程606从用户得到确认以识别许可是否被准许。由该许可控制的访问可以涉及从守护进程612对内核层对象的直接访问和/或对对象/服务的访问。对于访问,在控制中涉及安全服务器608,WRT管理进程606与安全服务器608通信并且请求“一次使用cookie”,并且然后将其传递给请求者进程。通过该一次使用cookie,小组件进程610能够从守护进程612请求服务。一次使用cookie是专用的cookie,其在小组件进程消耗由授予给该小组件的一次使用提示许可所控制的所请求的服务之后期满。对于由内核通过MAC和DAC控制的对对象的访问,小组件进程向WRT管理进程606发送访问请求。该WRT管理进程606执行安全性检查,并且如果所需要的许可被授予给小组件,则WRT管理进程606代表小组件执行访问并且将结果返回到请求者小组件。
如以上概述的,取决于特定许可所需要的提示的类型,对安全性强制执行和配置进行不同地处理。对于覆盖式提示,可以在小组件安装期间或小组件第一次被启动时向用户询问许可准许。对应的访问规则(DAC、MAC等等)对于小组件被配置一次并且对于该小组件的使用寿命保持使用相同的配置。对于会话提示,可以在启动小组件之前向用户询问许可准许。然后能够在分支的WRT进程中相应地配置新进程(例如,将其添加到对应的DAC群组、加载SMACK规则等等)。能够针对会话令牌来联系安全服务器608,会话令牌是仅对于会话的持续时间有效的令牌。然后,特权被丢弃且小组件被运行。当下次WRT启动相同小组件时,从小组件的上次会话来重置动态访问控制配置,并且安全服务器被告知撤回先前的会话令牌。
对于一次使用提示,对于需要直接访问的资源,小组件进程610针对该资源向WRT管理进程606发送请求。然后WRT管理进程606询问用户以便授予许可。如果被授予,那么WRT管理进程606代表小组件执行操作。对于由守护进程控制的资源,小组件请求WRT管理进程606得到用于特定许可的一次使用提示。WRT管理进程606询问用户。如果许可被授予,则WRT进程从安全服务器得到一次性令牌。安全服务器608仅仅验证令牌一次,使得小组件仅仅能够消耗守护进程的所请求的服务一次。当下次它想要访问相同的服务/资源时,它需要启动另一个一次使用提示。
从该图能够看出,特定小组件614能够访问与其本身相对应的本地数据存储616,但是不能访问系统文件618或与其他小组件相对应的本地数据存储620。
图7图示出根据本发明的实施例的、用于在小组件的安装期间生成安全性规则的步骤的示意性集合。存在与不同的标准团体相关联的不同类型的小组件(例如W3C小组件、WAC小组件等等)以及不同的小组件运行时刻系统。然而,通用安全性模型和访问控制强制执行原理是类似的,因此将理解,本发明适用于不同类型的小组件和运行时刻系统。
在小组件程式包700中分发小组件,小组件程式包700包含清单文件702以及像小组件的HTML、CSS文件、JavaScriptTM代码等等的其他文件704。清单文件包含诸如小组件的名称、制作者信息、配置信息等等的元数据。清单文件也包含与它的小组件操作所需的访问权限有关的元数据。例如,如果小组件需要访问网络资源或像照相机的设备资源,则小组件的清单文件必须规定这些资源。作为清单的例子,考虑以下简化的清单文件:
在简化的清单文件的示例中,小组件清单文件702包括名称、识别信息,并且规定对网络主机的访问权限。在该示例中,小组件需要访问作为资源的网络主机“quirksmode.org”。然后在该示例中,使用<security>和<access>标签来描述对所规定的网络主机资源的访问。类似地,清单文件可以包含对像照相机的其他资源、诸如通讯录或联系人列表项的人员信息、位置信息等等的访问请求。
如较早地所描述的,在小组件的安装期间,WRT模块706具有管理进程,其处理708包括其清单文件702的小组件的程式包,并且然后识别和提取与有效访问请求相关联的它的被授予的访问权限。(WRT模块706包括总的WRT中与小组件的安装相关联的至少那些组件,虽然将理解的是,WRT作为一个总体包括用于安装和运行小组件二者的组件。)然后,WRT模块706编译用于小组件的被授予的访问权限的列表,并且基于识别的权限来生成710用于该小组件的访问控制规则。这能够包括在静态访问控制规则712和非静态访问控制规则714之间做出区分。静态访问控制规则是那些在安装时间能够被确定或评估的访问控制规则。那么非静态访问控制规则是在更迟(即在运行时刻)之前不能被确定或评估的规则。用于小组件的静态访问控制规则712被直接地或间接地传递716到计算系统的更安全的部分,诸如传递到OS/内核720和/或适当的OS/框架守护进程/服务。在该示例中,静态小组件访问控制规则712被传递到存储用于整个系统的访问控制规则718的区域。
当小组件被调用时,WRT模块706创建或保留进程来用于它的运行。因此,小组件在对于其他的活动的小组件来说为分离的且隔离的进程中运行。在小组件的运行期间,安全性检查和强制执行被委托给OS内核的更安全的部分720和其他有关的进程。在一个实施例中,对于它通过生成规则并且将其传递到内核的更安全的部分720和有关的进程而委托的访问的类型,WRT模块706不必须执行安全性控制。在另一个实施例中,WRT模块706对小组件API呼叫执行惯例(即,常规)安全性检查。然后,由内核720执行另一个层的检查。当小组件访问通过WRT模块检查时,WRT模块代码发出访问对应资源的系统呼叫。然后,内核720对系统呼叫执行例如MAC检查的检查来看看特定访问是否被允许。内核检查仍然基于由WRT模块706例如在安装期间生成的规则。在该替换方式中,WRT模块706不委托安全性检查。
在一个实施方式中,强制访问控制(MAC)被用作安全性决定和强制执行方案的一部分。通常,由WRT模块706传递到内核的规则能够是MAC规则,并且内核能够通过它的MAC机制来强制执行这些规则。与常规小组件安全性方法相比,这提供更大的安全性保证。
取决于关于小组件、OS/内核和在平台上使用的安全机制的实施细节,可以包括图7中图示的步骤的许多微小的变化。如在图7中能够看出的,WRT模块706在安装期间处理小组件程式包700,并且识别小组件的访问请求/需求。WRT模块706编译授予给该小组件的访问权限。该处理可以涉及其他步骤,诸如检查用户偏好、系统策略,或提示用户以得到许可授予的确认。所授予的许可的一些细节、即许可的粒度等等在不同的小组件系统之间是不同的,并且由此是实施方式特定的。
在WRT模块706编译用于小组件的授予的许可的列表(或部分列表)之后,它根据该列表生成安全性规则。WRT将生成的安全性规则传递到内核。取决于OS/内核的特点和在平台上利用的安全性机制的细节,这能够以各种方式发生。例如,WRT能够更新系统上的一般性策略文件或发出系统呼叫来动态地向内核通知这些安全性规则。在一个实施例中,WRT模块706生成在小组件运行的同时能够被内核强制执行的MAC规则(诸如安全性增强的LinuxTM(SELinux)或用于LinuxTM系统的SMACK规则,或控制LinuxTM上的网络访问的iptables/Netfilter规则)。
返回参考图7,现在解释在本发明和常规WRT实施方式之间的一些差异。常规WRT实施方式处理小组件程式包、从清单文件中提取访问请求,并且编译用于小组件的授予的访问权限的列表。但是,然后它们将许可列表存储在例如数据库文件(如在SLPWRT中完成的)或用于WRT稍后调取它们以使WRT强制执行访问规则的文件中。它们不生成任何MAC规则或把任何规则传递给内核。它们也没能在静态和非静态规则之间进行区分,并且也没能以本发明指出的方式处理非静态规则。在调用小组件时,常规WRT将从数据库中读取它的许可列表,并且在小组件运行期间由它自身来处理安全性检查和强制执行。相反,在图6和图7的实施例中,WRT被修改为:以可以传递到内核用于使内核执行惯常地由WRT执行的安全性检查的至少一些的形式而生成静态访问控制规则,以及在安全服务器的帮助下处理非静态访问控制规则。这需要对常规WRT系统实施方式的显著的修改。在使内核实施MAC规则以强制执行小组件安全性检查的示例中,这需要将静态访问控制规则转换为MAC规则。例如:在一个实施方式中,对WRT的修改包括:
●实施一算法,以根据特定于所使用的MAC技术和OS的需求的许可列表来生成MAC规则,其与代码一起被添加到WRT代码基(codebase)算法以将生成的MAC规则传递到OS/内核。
图8图示出对于传递在OS/内核上的规则用于在运行时刻强制执行安全性规则的一般步骤的示例。当小组件被调用时,WRT模块800在与其他应用和小组件隔离的单独的进程802中运行它。本领域普通技术人员应当理解,尽管存在一个WRT,但存在WRT的不同的组件。图8的WRT模块至少包括与小组件运行相关联的组件。WRT系统管理进程相应地也配置该进程802的安全性属性(例如SELinux或SMACK标签),使得内核804能够区分正在进程中运行的小组件。如由箭头806所图示的,小组件然后尝试访问受控的资源,即经由先前由WRT生成并且传递到系统的静态访问控制规则由内核来控制资源。WRT模块800然后向内核发出有关的系统呼叫而不执行安全性检查,如由箭头810所图示的。也就是说,WRT将静态规则的安全性检查委托到OS/内核804。然后内核检测系统呼叫并且检查小组件的静态访问控制规则808,如由箭头812所图示的。然后,内核做出拒绝还是继续进行操作的决定。然后,内核将结果返回到WRT模块800,如由箭头标志814所图示的。如果访问被拒绝,则内核返回错误代码。如果访问被允许,则内核执行操作并且返回结果。因此,当内核从运行该小组件的进程接收到呼叫时,它检查用于小组件的访问规则,并且检测呼叫细节(例如参数、将会受到呼叫的影响的对象等等),并且然后它允许或拒绝呼叫。
在调用小组件时,常规WRT实施方式从例如数据库中读取它们的相应的许可列表,并且在小组件运行期间由自己处理安全性检查和强制执行。相反,在本发明中,用于静态规则的这些安全性检查和强制执行被从WRT去除,并且该责任被委托给内核,而由WRT管理进程结合安全服务器来处理非静态规则。WRT不执行与已经传递到内核的MAC规则有关的任何检查。相反,它允许有关的请求总是通过而不阻挡它们。由内核来处理对于这些规则的实际的安全性控制。这需要修改现存的WRT来去除这些常规安全性检查。此外,取决于OS和MAC技术,可能需要将额外的代码添加到WRT以恰在运行小组件之前配置小组件进程的安全性上下文(例如MAC主体标签)。
如先前描述的,内核能够通过MAC机制来控制小组件访问。现在将讨论一些示意性机制,尽管将理解也可以使用其他机制。在一个实施例中,假定小组件不具有网络访问许可,即,它的清单没有指定访问网络的任何需求或特别地请求不应当给出网络访问。WRT被编程为当处理该小组件的清单时理解到该小组件应当被禁止访问网络。在该示例中,WRT向该小组件(即向将运行小组件的进程)分配安全性上下文(例如SMACK或SElinux标签),并且生成MAC规则来禁止来自该小组件的任何网络访问请求(或,取决于使用中的MAC系统,WRT将不生成允许网络访问的任何规则)。WRT将该信息(安全性上下文+MAC安全性规则)传递到内核。如果小组件在运行时刻尝试访问网络资源,则内核将从请求访问网络的该小组件的进程接收系统呼叫。内核将检查进程的安全性上下文并且意识到访问应当被拒绝。它将不执行该系统呼叫并且把错误消息返回到呼叫进程。
现在假定小组件不具有访问平台上的位置信息(例如,全球定位系统(GPS)位置信息)的许可。同样,假定在该平台上存在处理GPS信息的分发的系统守护进程。更具体地说,仅仅该守护进程能访问GPS硬件,并且所有其他进程/应用需要向该守护进程发送请求以得到GPS数据。当处理该小组件的清单时,WRT明白该小组件应当被禁止访问GPS信息。WRT向该小组件(即将运行小组件的进程)分配安全性上下文(例如SMACK或SElinux标签),并且生成MAC规则来禁止(或,取决于使用中的MAC系统,WRT不生成任何规则来允许)该小组件与GPS守护进程通信(例如,禁止小组件进程和守护进程之间的进程内通信(IPC))。WRT将该信息(安全性上下文+MAC安全性规则)传递到内核。如果该小组件尝试在运行时刻与GPS守护进程通信以得到位置信息,则内核将从该小组件的进程接收系统呼叫(例如IPC呼叫)以与守护进程通信。内核将检查小组件进程和GPS守护进程的安全性上下文,并且意识到访问应当被拒绝。它将不执行系统呼叫并且把错误消息返回到进程。
另一方面,在该示例中,如果小组件被授予访问GPS信息的许可,则WRT生成规则来允许小组件进程和GPS守护进程之间的IPC(或不生成任何规则来禁止它)。当该小组件在运行时刻尝试访问GPS数据时,内核将从该小组件的进程接收用于与守护进程通信的系统呼叫(例如IPC呼叫)。内核将检查小组件进程和GPS守护进程的安全性上下文,并且意识到访问应当被准许。它将继续进行系统呼叫。
在一个优选的实施例中,内核级的强制访问控制用于安全性决定和强制执行。在计算机安全性中,MAC指的是操作系统通过其使主体或发起者(例如运行小组件的进程)访问或通常对对象或目标(例如,特定文件、网络资源或硬件部件)执行某种操作的能力得以约束的一类访问控制。实际上,主体通常是进程或线程;对象是诸如文件、目录、TCP/UDP端口、共享存储器片段等等的构造。主体和对象的每个均具有安全性属性的集合。无论何时主体企图访问对象,由操作系统内核强制执行的认证规则检查这些安全性属性并且决定访问是否能够发生。将按照认证规则(例如策略)的集合来测试任何主体对任何对象进行的任何操作以确定是否允许该操作。
存在在不同的操作系统中可用的各种MAC技术。LinuxTM具有四个不同的主要MAC机制:在主线内核中实施的SELinux、Smack、Tomoyo和AppArmor。虽然它们全部基于相同或类似的原理,但是它们的体系结构、能力和使用示出显著差别。
正如前面提到的那样,在精细级别粒度的WRT和OS实施方式中存在许多潜在的变化。因此,实施方式细节将确定多少安全性检查能够被推卸给内核。取决于小组件系统和OS组合,一些小组件活动可能不能很好地被转化/映射为内核系统呼叫。在此情况下,内核可能不能提供小组件系统需要的精细颗粒的安全性控制。为了解决该情形,WRT可以被编程为经由检测系统呼叫来识别哪些小组件活动能够由内核控制并且然后仅将控制的那个子集委托给内核。如果对于一些小组件活动内核或OS不能提供足够的安全性控制,那么WRT需要处理不能被OS/内核处理的那些控制。因此,原则上存在如下情形,其中,基于什么检查能够被委派给内核,WRT将提供精细级别粒度的安全性检查/控制,同时内核提供粗略级别粒度的安全性检查。在这样的情形中,能够对WRT做出若干修改。这包括使WRT将与能够由OS/内核满意地控制的活动相对应的那些访问控制规则传递到OS/内核。在小组件的运行时刻期间,这对应于WRT在没有执行任何安全性检查的情况下将仅仅那些与能够由OS/内核满意地控制的小组件的安全性检查有关的活动相对应的请求传递到内核/OS。将由WRT自己来处理不能由OS/内核满意地控制的活动或请求。
替换地,WRT对小组件API呼叫执行常规安全性检查,而由内核执行另一个层的检查。当小组件访问通过WRT模块检查时,WRT模块代码发出用于访问对应的资源的系统呼叫。然后,内核对系统呼叫执行例如MAC检查的检查来看看特定访问是否被允许。在该替换方式中,WRT模块706不委托安全性检查。
预期到本发明的许多变化和各个实施例。参考图9,在一个实施例中,安全性规则的生成发生在调用时而不是安装期间。例如,WRT系统管理进程900能够处理小组件程式包、从清单文件中提取访问请求,如由箭头902所指出的。然后,当用户想要调用小组件时,WRT能够恰在开始运行小组件之前生成规则并且将它们传递到OS904。相比图7的示例的主要差异由箭头906图示出,其图示出管理进程创建新进程来运行小组件以及小组件代码并且从新进程调取数据且小组件运行开始。
在另一个实施例中,WRT能够将规则生成委托给另一个实体(例如,OS服务或进程)。在这些实施例中,WRT能够将清单文件和其他有关的信息传递到该实体,该实体处理规则生成并更新策略(即,把规则传递给内核)。
如先前描述的,在优选的实施例中,由内核经由MAC机制来处理安全性强制执行,以消除WRT执行安全性检查的安全性弱点。然而,其他布置是可能的,其中计算机系统的更安全的部分诸如通过使用OS守护进程和/或安全性令牌来处理小组件的安全性检查。替换实施例能够以各种不同的方式来实现这点,如图10和图11所图示的。安全性检查和强制执行能够依赖于安全性令牌。每个小组件能够具有示出它的访问权限的安全性令牌。
如图10所图示的,在安装期间或在调用时,WRT处理小组件程式包并且从清单文件中提取访问请求,如由箭头1000所指出的。WRT然后编译用于小组件的授予的访问权限的列表,并且也从令牌生成和验证守护进程1004请求用于授予的权限的安全性令牌,如由箭头1002所指出的。守护进程生成适当的安全性令牌,并且将它传递回到WRT,如由箭头1006所指出的。然后,WRT存储安全性令牌用于稍后使用,如由箭头1008所指出的。
这样的令牌需要由可信方(例如WRT或系统守护进程)生成、被保护免受不可信方(例如小组件)的损害、是可靠的和可验证的,并且允许其他实体(例如,系统服务)来检查小组件的访问权限。
图11是其中安全性令牌先前已经由WRT存储的说明性的使用示例。假设平台使用基于令牌的安全性框架并且也具有用于访问例如GPS、传感器等等的各种系统或OS框架守护进程。在该平台上运行的小组件想要访问GPS数据。WRT请求访问GPS数据并且将它的安全性令牌附着到对GPS服务守护进程1100的请求,如由箭头1102所图示的。GPS守护进程1100接收请求并且检查安全性令牌。这可以包括向令牌生成和验证守护进程1106发送令牌(箭头1104)以检查小组件是否需要访问所请求的数据的权限。令牌生成和验证守护进程1106检查所接收的令牌以确定小组件是否能够被准许访问并且将允许/拒绝决定返回到GPS守护进程1100。GPS服务守护进程1100返回消息,如由箭头1108所指出的。如果小组件具有访问GPS数据(如在它的安全性令牌中指示的)的许可,则GPS服务守护进程1100履行请求并且返回所请求的结果。否则,GPS服务守护进程拒绝执行请求并且发送回错误消息。
图12是图示出根据本发明的实施例的用于提供小组件的安全性强制执行的方法的流程图。在1200,能够从请求服务的小组件进程中提取访问控制信息。在1202,能够生成访问控制规则。在1204,能够将访问控制规则提供到WRT系统的用户代码空间外的计算机系统的可信部分。然后,对于所遇到的每个访问控制规则,可以运行1206-1210。在1206,能够确定访问控制规则是静态还是非静态的。如果是静态的,则在1208将小组件进程的安全性检查从WRT系统委托到计算机系统的可信部分。如果是非静态的,则在1210能够从安全服务器请求一次性令牌,其中一次性令牌在小组件进程消耗所请求的服务之后期满。
本领域普通技术人员将理解,上述的示例体系结构能够以许多方式来实施,诸如用于由处理器运行的程序指令、软件模块、微码、计算机可读介质上的计算机程序产品、逻辑电路、专用集成电路、固件、消费者电子设备等等并且可以利用无线设备、无线发射机/接收机和无线网络的其他部分。此外,用于在多个电子显示屏幕上显示多媒体内容的所公开的方法和系统的实施例能够采取完全的硬件实施例、完全的软件实施例或包含软件和硬件元件两者的实施例的形式。
通常使用术语“计算机可读媒介”来指诸如主存储器、二级存储器、可移去贮存器、硬盘、闪速存储器、磁盘驱动存储器、CD-ROM和其他形式的持续存储器之类的介质。应当注意到,可以用于描述包含用于操作本发明的各个方法的可运行的计算机代码的存储设备的程序贮存器设备不应该被理解为覆盖暂时的主题,诸如载波或信号。程序贮存器设备和计算机可读介质是通常用来指诸如主存储器、辅存储器、可移除贮存器盘、硬盘驱动器,和其他有形的贮存器设备或部件之类的介质的术语。
虽然仅仅详细描写了本发明的一些实施例,但应当理解,在不脱离本发明的精神上或范围的情况下,可以以许多其他形式来实施本发明。因此,这些实施例应当被视为说明性的且不是限制性的,并且本发明不限于在这里给出的细节,而是可以在所附权利要求的范围和等同体内被修改。
Claims (22)
1.一种在具有处理器和存储器的计算机系统中提供小组件的安全性强制执行的方法,包括:
从请求服务的小组件进程提取访问控制信息、生成为该小组件进程定制的访问控制规则,并且向Web运行时刻(WRT)系统的用户代码空间外的计算机系统的可信部分提供访问控制规则;以及
对于任何静态访问控制规则,将小组件进程的安全性检查从WRT系统委托到计算机系统的可信部分。
2.根据权利要求1所述的方法,进一步包括:
对于任何非静态访问控制规则:
从安全服务器请求一次性令牌,其中该一次性令牌在小组件进程消耗所请求的服务之后期满;并且
其中,由小组件进程使用一次性令牌来访问服务。
3.根据权利要求1所述的方法,其中,静态访问控制规则包括以下中的一个:
覆盖式提示;
许可提示;和
拒绝提示。
4.根据权利要求2所述的方法,其中,非静态访问控制规则包括以下中的一个:
会话提示;和
一次使用提示。
5.根据权利要求2所述的方法,其中,对于作为会话提示的任何非静态访问控制规则,该方法进一步包括:
在启动小组件进程之前,从用户请求许可;
丢弃WRT的特权;以及
在小组件进程的下一次启动时,重置小组件进程的动态访问控制配置并且请求安全服务器撤回一次性令牌。
6.根据权利要求2所述的方法,其中,对于作为一次性提示的任何非静态访问控制规则,该方法进一步包括:
当小组件进程请求服务时,从用户请求许可;
请求安全服务器仅仅单次兑现一次性令牌。
7.根据权利要求1所述的方法,其中,可信部分是操作系统内核。
8.根据权利要求7所述的方法,其中,访问控制规则被实施为由内核强制执行的强制访问控制规则。
9.根据权利要求7所述的方法,其中,由WRT管理进程来执行提取、生成和提供。
10.根据权利要求1所述的方法,其中,安全服务器是服务位置协议(SLP)访问控制的一部分。
11.一种在具有处理器和存储器的计算机系统中提供小组件的安全性强制执行的方法:包括:
从请求服务的小组件进程提取访问控制信息、生成为该小组件进程定制的访问控制规则,并且向Web运行时刻(WRT)系统的用户代码空间外的计算机系统的可信部分提供访问控制规则;以及
对于任何静态访问控制规则,将小组件进程的一些但非所有安全性检查从WRT系统委托到计算机系统的可信部分,使得执行两个级别的安全性检查,一个由WRT系统执行,并且一个由计算机系统的可信部分执行。
12.根据权利要求11所述的方法,其中,可信部分是操作系统内核。
13.根据权利要求12所述的方法,其中,访问控制规则被实施为由内核强制执行的强制访问控制规则。
14.一种具有改善的小组件安全性的计算机系统,包括:
处理器;
存储器;
操作系统;以及
Web运行时刻(WRT)系统,支持小组件的安装和调用,WRT系统被配置为从每个被安装的小组件接收小组件清单并且确定可从WRT委托到与操作系统相关联的计算机系统的更安全的部分的访问控制规则,WRT系统进一步被配置为将可委托的静态访问控制规则的集合传递到更安全的部分以执行安全性检查。
15.根据权利要求14所述的计算机系统,其中,WRT系统包括WRT管理进程,其被配置为与安全服务器通信以对于任何非静态访问控制规则获取一次性令牌。
16.根据权利要求14所述的计算机系统,其中,WRT系统被配置为当小组件被调用时传递可委托的静态访问控制规则的集合。
17.根据权利要求15所述的计算机系统,其中,WRT管理进程进一步被配置为当为了作为会话提示的任何非静态访问控制规则调用小组件时与安全服务器通信。
18.根据权利要求16所述的计算机系统,其中,WRT管理进程进一步被配置为当小组件对于作为链接到特定服务的一次性提示的任何非静态访问控制规则而请求该特定服务时与安全服务器通信。
19.根据权利要求14所述的计算机系统,其中,可信部分是内核。
20.一种系统,包括:
多个小组件;
WRT管理进程;
安全服务器;和
操作系统内核;
其中,WRT管理进程被配置为:
从小组件提取访问控制信息、生成访问控制规则,并且向操作系统内核提供访问控制规则;以及
对于任何静态访问控制规则,将静态访问控制规则的至少一些安全性检查委托到操作系统内核。
21.根据权利要求20所述的系统,其中,WRT管理进程与WRT系统相关联。
22.一种可由机器读取的程序储存设备,该程序储存设备有形地体现可由机器运行以用于执行在具有处理器和存储器的计算机系统中提供小组件的安全性强制执行的方法的指令的程序,该方法包括:
从请求服务的小组件进程提取访问控制信息、生成为该小组件进程定制的访问控制规则,并且向Web运行时刻(WRT)系统的用户代码空间外的计算机系统的可信部分提供访问控制规则;以及
对于任何静态访问控制规则,将小组件进程的安全性检查从WRT系统委托到计算机系统的可信部分。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161514856P | 2011-08-03 | 2011-08-03 | |
US61/514,856 | 2011-08-03 | ||
US13/412,496 US9064111B2 (en) | 2011-08-03 | 2012-03-05 | Sandboxing technology for webruntime system |
US13/412,496 | 2012-03-05 | ||
PCT/KR2012/006097 WO2013019059A2 (en) | 2011-08-03 | 2012-07-31 | Sandboxing technology for webruntime system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103890772A true CN103890772A (zh) | 2014-06-25 |
CN103890772B CN103890772B (zh) | 2017-11-03 |
Family
ID=47627805
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280048863.5A Expired - Fee Related CN103890772B (zh) | 2011-08-03 | 2012-07-31 | 用于web运行时刻系统的沙盘技术 |
Country Status (7)
Country | Link |
---|---|
US (1) | US9064111B2 (zh) |
EP (1) | EP2740064B1 (zh) |
JP (1) | JP6072792B2 (zh) |
KR (1) | KR101948044B1 (zh) |
CN (1) | CN103890772B (zh) |
AU (1) | AU2012290796B2 (zh) |
WO (1) | WO2013019059A2 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104951695A (zh) * | 2015-06-16 | 2015-09-30 | 广东欧珀移动通信有限公司 | 一种基于Selinux定制应用程序安全策略方法和装置 |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8825748B2 (en) * | 2011-07-06 | 2014-09-02 | Sharp Laboratories Of America, Inc. | Sandboxed daemon process invocation through HTTP |
US8973136B2 (en) * | 2011-08-02 | 2015-03-03 | Quick Heal Technologies Private Limited | System and method for protecting computer systems from malware attacks |
US20130067531A1 (en) * | 2011-09-12 | 2013-03-14 | Microsoft Corporation | Access Brokering Based on Declarations and Consent |
US8893225B2 (en) | 2011-10-14 | 2014-11-18 | Samsung Electronics Co., Ltd. | Method and apparatus for secure web widget runtime system |
KR101379527B1 (ko) * | 2011-12-30 | 2014-03-28 | 인텔 코오퍼레이션 | 클라우드 기반 실시간 앱 프라이버시 대시보드 |
US20130173698A1 (en) * | 2011-12-30 | 2013-07-04 | Ramandeep Sethi | Dynamic Content Adaptation |
US8930917B2 (en) * | 2012-05-22 | 2015-01-06 | Adobe Systems Incorporated | Method and apparatus for mobile application development and testing that avoids repackaging and reinstallation |
CN102819715A (zh) * | 2012-08-15 | 2012-12-12 | 腾讯科技(深圳)有限公司 | Api监控方法和装置 |
GB2507339A (en) | 2012-10-29 | 2014-04-30 | Ibm | Accessing privileged objects in a server by means of semi privileged instruction |
US9323511B1 (en) * | 2013-02-28 | 2016-04-26 | Google Inc. | Splitting application permissions on devices |
KR101503456B1 (ko) * | 2013-03-15 | 2015-03-24 | 에스케이텔레콤 주식회사 | 단말장치 및 단말장치의 동작 방법 |
US9830202B1 (en) * | 2013-04-24 | 2017-11-28 | Google Llc | Storage and process isolated web widgets |
US9158935B2 (en) * | 2013-06-07 | 2015-10-13 | Microsoft Technology Licensing, Llc | Automatic mediation of resource access in mobile applications |
JP6210812B2 (ja) * | 2013-09-24 | 2017-10-11 | キヤノン株式会社 | 情報処理装置およびその制御方法、並びにプログラム |
US20160127412A1 (en) * | 2014-11-05 | 2016-05-05 | Samsung Electronics Co., Ltd. | Method and system for detecting execution of a malicious code in a web based operating system |
US9575740B2 (en) * | 2015-01-21 | 2017-02-21 | Samsung Electronics Co., Ltd. | Apparatus and method for running multiple instances of a same application in mobile devices |
US10685142B2 (en) * | 2015-02-02 | 2020-06-16 | Indiana University Research And Technology Corporation | External resource control of mobile devices |
US10552638B2 (en) * | 2015-05-13 | 2020-02-04 | Intel Corporation | Integrity protection of a mandatory access control policy in an operating system using virtual machine extension root operations |
US10140462B2 (en) * | 2015-05-21 | 2018-11-27 | Qualcomm Innovation Center, Inc. | Stackable file system with user space policy management |
EP3247084B1 (en) | 2016-05-17 | 2019-02-27 | Nolve Developments S.L. | Server and method for providing secure access to web-based services |
US10262157B2 (en) * | 2016-09-28 | 2019-04-16 | International Business Machines Corporation | Application recommendation based on permissions |
CN106845240A (zh) * | 2017-03-10 | 2017-06-13 | 西京学院 | 一种基于随机森林的Android恶意软件静态检测方法 |
US11003798B1 (en) * | 2018-09-18 | 2021-05-11 | NortonLifeLock Inc. | Systems and methods for enforcing age-based application constraints |
US11741196B2 (en) | 2018-11-15 | 2023-08-29 | The Research Foundation For The State University Of New York | Detecting and preventing exploits of software vulnerability using instruction tags |
US11693948B2 (en) * | 2020-08-04 | 2023-07-04 | International Business Machines Corporation | Verifiable labels for mandatory access control |
US11366901B2 (en) * | 2020-10-07 | 2022-06-21 | Bank Of America Corporation | System and method for identifying insider threats in source code |
US11687675B1 (en) * | 2022-09-08 | 2023-06-27 | Pezo Tech Llc | Method and system for improving coupling and cohesion of at least one educational program |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050120219A1 (en) * | 2003-12-02 | 2005-06-02 | International Business Machines Corporation | Information processing apparatus, a server apparatus, a method of an information processing apparatus, a method of a server apparatus, and an apparatus executable process |
US20090063691A1 (en) * | 2007-08-30 | 2009-03-05 | Dimitris Kalofonos | Access rights used for resource discovery in peer-to-peer networks |
US20090138937A1 (en) * | 2007-11-23 | 2009-05-28 | Microsoft Corporation | Enhanced security and performance of web applications |
US20100273486A1 (en) * | 2006-10-11 | 2010-10-28 | Yash Kharia | System and method for optimizing battery power |
CN102016792A (zh) * | 2008-03-25 | 2011-04-13 | 高通股份有限公司 | 用于管理无线通信环境中的小窗口的设备和方法 |
Family Cites Families (63)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7127605B1 (en) | 1999-05-10 | 2006-10-24 | Axalto, Inc. | Secure sharing of application methods on a microcontroller |
US7062780B2 (en) * | 1999-10-14 | 2006-06-13 | Hewlett-Packard Development Company, L.P. | Granular access control of inter-process communications in a compartment mode workstation labeled environment |
US6859909B1 (en) * | 2000-03-07 | 2005-02-22 | Microsoft Corporation | System and method for annotating web-based documents |
US7350204B2 (en) * | 2000-07-24 | 2008-03-25 | Microsoft Corporation | Policies for secure software execution |
JP3790661B2 (ja) | 2000-09-08 | 2006-06-28 | インターナショナル・ビジネス・マシーンズ・コーポレーション | アクセス制御システム |
US7249374B1 (en) * | 2001-01-22 | 2007-07-24 | Cisco Technology, Inc. | Method and apparatus for selectively enforcing network security policies using group identifiers |
CN100444128C (zh) * | 2002-02-27 | 2008-12-17 | 科学园株式会社 | 计算机文件系统驱动器的控制方法和计算机系统 |
US7912971B1 (en) * | 2002-02-27 | 2011-03-22 | Microsoft Corporation | System and method for user-centric authorization to access user-specific information |
US7430753B2 (en) * | 2002-03-27 | 2008-09-30 | At&T Intellectual Property, I, L.P. | Method to enable cooperative processing and resource sharing between set-top boxes, personal computers, and local devices |
US7191469B2 (en) * | 2002-05-13 | 2007-03-13 | Green Border Technologies | Methods and systems for providing a secure application environment using derived user accounts |
AU2003253667A1 (en) * | 2002-06-18 | 2003-12-31 | Arizona Board Of Regents, Acting For Arizona State University | Assignment and management of authentication and authorization |
US7512788B2 (en) | 2002-12-10 | 2009-03-31 | International Business Machines Corporation | Method and apparatus for anonymous group messaging in a distributed messaging system |
US20040236747A1 (en) * | 2003-03-06 | 2004-11-25 | Swimmer Morton G. | Data processing systems |
WO2005008385A2 (en) * | 2003-07-07 | 2005-01-27 | Cryptography Research, Inc. | Reprogrammable security for controlling piracy and enabling interactive content |
JP2007034341A (ja) * | 2003-08-22 | 2007-02-08 | Nec Corp | コンピュータシステム及びそれに用いるプログラム実行環境実現方法並びにそのプログラム |
US7146158B2 (en) * | 2003-11-14 | 2006-12-05 | Motorola, Inc. | Method and apparatus for reformatting dialed numbers |
US7142848B2 (en) * | 2004-02-26 | 2006-11-28 | Research In Motion Limited | Method and system for automatically configuring access control |
CN1969579A (zh) * | 2004-06-10 | 2007-05-23 | 松下电器产业株式会社 | 从rfid标签接收数据的移动终端及移动终端的控制策略确定方法 |
US20060137007A1 (en) * | 2004-12-16 | 2006-06-22 | Nokia Corporation | Revoking a permission for a program |
CN100489827C (zh) * | 2004-12-30 | 2009-05-20 | 诺基亚公司 | 利用访问控制信息使用具有多个配置的设备中的配置的方法、系统和设备 |
FR2880441B1 (fr) * | 2004-12-31 | 2010-06-18 | Trusted Logic | Chargement dynamique securise |
US7743336B2 (en) | 2005-10-27 | 2010-06-22 | Apple Inc. | Widget security |
US8104077B1 (en) * | 2006-01-03 | 2012-01-24 | Symantec Corporation | System and method for adaptive end-point compliance |
ATE391960T1 (de) * | 2006-02-27 | 2008-04-15 | Sap Ag | Zugangssteuerungssystem, regelmaschinenadapter, regelbasierte durchführungsplattform und verfahren zur durchführung der zugangssteuerung |
US7836483B2 (en) * | 2006-04-28 | 2010-11-16 | Sap Ag | Automatic derivation of access control policies from a choreography |
US8272048B2 (en) * | 2006-08-04 | 2012-09-18 | Apple Inc. | Restriction of program process capabilities |
US7856654B2 (en) * | 2006-08-11 | 2010-12-21 | Novell, Inc. | System and method for network permissions evaluation |
CN101131718B (zh) * | 2006-08-22 | 2012-05-23 | 华为技术有限公司 | 一种受保护内容完整性验证的方法、设备及系统 |
US20080082627A1 (en) * | 2006-09-29 | 2008-04-03 | Allen Stewart O | Method and Apparatus for Widget Container/Widget Tracking and Metadata Manipulation |
US8056092B2 (en) * | 2006-09-29 | 2011-11-08 | Clearspring Technologies, Inc. | Method and apparatus for widget-container hosting and generation |
US7853987B2 (en) * | 2006-10-10 | 2010-12-14 | Honeywell International Inc. | Policy language and state machine model for dynamic authorization in physical access control |
US20080148298A1 (en) | 2006-12-18 | 2008-06-19 | Palm, Inc. | System and Methods for Providing Granular Security for Locally Running Scripted Environments and Web Applications |
WO2008099402A2 (en) * | 2007-02-16 | 2008-08-21 | Forescout Technologies | A method and system for dynamic security using authentication server |
US20080209535A1 (en) * | 2007-02-28 | 2008-08-28 | Tresys Technology, Llc | Configuration of mandatory access control security policies |
US20100138896A1 (en) | 2007-04-05 | 2010-06-03 | Atsushi Honda | Information processing system and information processing method |
US8060486B2 (en) * | 2007-05-07 | 2011-11-15 | Hewlett-Packard Development Company, L.P. | Automatic conversion schema for cached web requests |
US7702754B2 (en) * | 2007-05-23 | 2010-04-20 | Sap Ag | Enhanced widget architecture |
JP4985246B2 (ja) | 2007-09-04 | 2012-07-25 | 富士通株式会社 | データ中継装置、データ中継方法、および、当該データ中継装置としてのコンピュータに実行される管理プログラム |
US20090111448A1 (en) * | 2007-10-31 | 2009-04-30 | Nokia Corporation | System and method for enabling widget interaction |
US20090132949A1 (en) * | 2007-11-16 | 2009-05-21 | Jason Bosarge | Methods and systems for transmitting, receiving and annotating internet content |
US9269059B2 (en) * | 2008-03-25 | 2016-02-23 | Qualcomm Incorporated | Apparatus and methods for transport optimization for widget content delivery |
US20090254529A1 (en) * | 2008-04-04 | 2009-10-08 | Lev Goldentouch | Systems, methods and computer program products for content management |
US7945774B2 (en) | 2008-04-07 | 2011-05-17 | Safemashups Inc. | Efficient security for mashups |
KR20090123587A (ko) * | 2008-05-28 | 2009-12-02 | 주식회사 인프라웨어 | 이동통신 단말기에서 위젯을 이용하여 사용자 인터페이스를제공하는 방법 |
WO2010013609A1 (ja) * | 2008-07-30 | 2010-02-04 | 株式会社Access | 実行環境ソフトウェア、クライアント装置、およびサーバ装置 |
CN101651537B (zh) * | 2008-08-15 | 2013-07-10 | 上海贝尔阿尔卡特股份有限公司 | 一种在通信网络系统中进行分散式安全控制的方法和装置 |
KR101095163B1 (ko) * | 2008-08-27 | 2011-12-16 | 에스케이플래닛 주식회사 | 위젯 실행을 위한 사용자 단말기와 스마트 카드 간 연동 시스템 및 그 방법 |
US10802990B2 (en) * | 2008-10-06 | 2020-10-13 | International Business Machines Corporation | Hardware based mandatory access control |
KR100997802B1 (ko) * | 2008-10-20 | 2010-12-01 | 한국전자통신연구원 | 정보 단말기의 보안 관리 장치 및 방법 |
US20100106977A1 (en) | 2008-10-24 | 2010-04-29 | Jan Patrik Persson | Method and Apparatus for Secure Software Platform Access |
US8239938B2 (en) * | 2008-12-08 | 2012-08-07 | Nvidia Corporation | Centralized device virtualization layer for heterogeneous processing units |
KR20100078137A (ko) * | 2008-12-30 | 2010-07-08 | 삼성전자주식회사 | 휴대용 단말기의 위젯 서비스 제공 장치 및 방법 |
US7924717B2 (en) * | 2009-02-27 | 2011-04-12 | Hewlett-Packard Development Company, L.P. | Systems and methods of handling access control violations |
US8272065B2 (en) | 2009-03-11 | 2012-09-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Secure client-side aggregation of web applications |
US20140032722A1 (en) * | 2009-05-29 | 2014-01-30 | Adobe Systems Incorporated | Controlling Characteristics of Network Device Widgets through a Network Device |
KR101113820B1 (ko) * | 2010-03-16 | 2012-02-29 | 소프트캠프(주) | 응용프로그램의 파일 입출력 보안방법과 보안시스템 |
KR20110112622A (ko) * | 2010-04-07 | 2011-10-13 | 김인상 | 앱스토어용 콘텐츠 오픈 라이센싱 시스템 및 그 방법 |
US8850573B1 (en) * | 2010-04-14 | 2014-09-30 | Google Inc. | Computing device with untrusted user execution mode |
US8566910B2 (en) | 2010-05-18 | 2013-10-22 | Nokia Corporation | Method and apparatus to bind a key to a namespace |
EP2458548A1 (en) * | 2010-11-30 | 2012-05-30 | France Telecom | System and method for implementing dynamic access control rules to personal cloud information |
EP2498179A1 (en) * | 2011-03-09 | 2012-09-12 | Telefónica, S.A. | Method for managing widgets in an electronic device to improve the user experience of the device |
US20120232973A1 (en) * | 2011-03-11 | 2012-09-13 | Diy Media, Inc. | System, methods and apparatus for incentivizing social commerce |
US8893225B2 (en) * | 2011-10-14 | 2014-11-18 | Samsung Electronics Co., Ltd. | Method and apparatus for secure web widget runtime system |
-
2012
- 2012-03-05 US US13/412,496 patent/US9064111B2/en active Active
- 2012-05-15 KR KR1020120051322A patent/KR101948044B1/ko active IP Right Grant
- 2012-07-31 EP EP12820580.4A patent/EP2740064B1/en not_active Not-in-force
- 2012-07-31 JP JP2014523839A patent/JP6072792B2/ja not_active Expired - Fee Related
- 2012-07-31 WO PCT/KR2012/006097 patent/WO2013019059A2/en active Application Filing
- 2012-07-31 CN CN201280048863.5A patent/CN103890772B/zh not_active Expired - Fee Related
- 2012-07-31 AU AU2012290796A patent/AU2012290796B2/en not_active Ceased
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050120219A1 (en) * | 2003-12-02 | 2005-06-02 | International Business Machines Corporation | Information processing apparatus, a server apparatus, a method of an information processing apparatus, a method of a server apparatus, and an apparatus executable process |
US20100273486A1 (en) * | 2006-10-11 | 2010-10-28 | Yash Kharia | System and method for optimizing battery power |
US20090063691A1 (en) * | 2007-08-30 | 2009-03-05 | Dimitris Kalofonos | Access rights used for resource discovery in peer-to-peer networks |
US20090138937A1 (en) * | 2007-11-23 | 2009-05-28 | Microsoft Corporation | Enhanced security and performance of web applications |
CN102016792A (zh) * | 2008-03-25 | 2011-04-13 | 高通股份有限公司 | 用于管理无线通信环境中的小窗口的设备和方法 |
Non-Patent Citations (2)
Title |
---|
ARUN MUKHIJA: "CASA – A Framework for Dynamically Adaptive Applications", 《DESIGN OF THE CASA FRAMEWORK》 * |
W3C: "Widgets 1.0 Requirements", 《W3C WORKING DRAFT》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104951695A (zh) * | 2015-06-16 | 2015-09-30 | 广东欧珀移动通信有限公司 | 一种基于Selinux定制应用程序安全策略方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103890772B (zh) | 2017-11-03 |
US9064111B2 (en) | 2015-06-23 |
JP6072792B2 (ja) | 2017-02-01 |
EP2740064A4 (en) | 2018-04-11 |
KR20130018492A (ko) | 2013-02-25 |
KR101948044B1 (ko) | 2019-05-09 |
WO2013019059A3 (en) | 2013-04-04 |
US20130036448A1 (en) | 2013-02-07 |
EP2740064B1 (en) | 2019-07-03 |
JP2014524606A (ja) | 2014-09-22 |
AU2012290796B2 (en) | 2016-11-03 |
AU2012290796A1 (en) | 2014-01-09 |
WO2013019059A2 (en) | 2013-02-07 |
EP2740064A2 (en) | 2014-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103890772A (zh) | 用于web运行时刻系统的沙盘技术 | |
US8893225B2 (en) | Method and apparatus for secure web widget runtime system | |
US8984291B2 (en) | Access to a computing environment by computing devices | |
KR101889577B1 (ko) | 부정조작 불가능한 위치 제공 서비스 | |
CN108243175B (zh) | 一种基于桶策略的访问控制方法及装置 | |
US20080066187A1 (en) | Mobile Wireless Device with Protected File System | |
EP2939390B1 (en) | Processing device and method of operation thereof | |
CN112165461A (zh) | 一种零信任动态授权方法、装置和计算机设备 | |
CN104680075A (zh) | 用于来自高级别应用程序许可的细粒度访问控制的框架 | |
US20150358357A1 (en) | Processing device and method of operation thereof | |
WO2017016231A1 (zh) | 一种策略管理方法、系统及计算机存储介质 | |
Lovat et al. | Data-centric multi-layer usage control enforcement: A social network example | |
KR102430882B1 (ko) | 클라우드 환경 내 이벤트 스트림 방식의 컨테이너 워크로드 실행 제어 방법, 장치 및 컴퓨터-판독 가능 기록 매체 | |
Ulltveit-Moe et al. | Mobile security with location-aware role-based access control | |
Chang et al. | Towards a multilayered permission‐based access control for extending Android security | |
Birnstill et al. | Building blocks for identity management and protection for smart environments and interactive assistance systems | |
EP2581853B1 (en) | Method and apparatus for secure web widget runtime system | |
Fu et al. | Component‐based permission management of Android applications | |
Rehman et al. | Security-enhanced Android for an enterprise | |
Brannock et al. | PROVIDING A SAFE EXECUTION ENVIRONMENT. | |
Zheng | Overview of security Enhanced Android’s security architecture | |
Holford et al. | The concept of self-defending objects in the development of security aware applications | |
Avancha | A Framework for Trustworthy Service-Oriented Computing (Short Paper) | |
Heuser | Towards modular and flexible access control on smart mobile devices | |
Sadeghi et al. | Dipl.-Inform. Stephan Heuser aus Aachen, Deutschland |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20171103 |
|
CF01 | Termination of patent right due to non-payment of annual fee |