已声明的起源策略的制作方法

文档序号:6594640阅读:141来源:国知局
专利名称:已声明的起源策略的制作方法
已声明的起源策略背景相同起源策略(SOP)是用于客户机侧脚本的安全措施,其阻止从一个“起源”加载的文档或脚本获得或设置来自不同起源的文档的特性。有了 S0P,浏览器不应信任从任意网站加载的内容。在SOP中,网页在“沙箱”中运行,且被阻止访问来自其他起源的资源。没有了这个保护,恶意网页可能损害另一网页的机密性或完整性。术语“起源”使用域名、协议,和端口来定义。如果这三个值相同,则两个页面属于同一起源。为了说明,下表 1 给出了相对于URL“http://www. example, com/dir/page. html” 的起源比较的示例。标注为“结果”的栏示出相应URL的SOP的结果。
URL
http://www.example.com/dir2/other.html
结果
原因
成功
相同协议和主机表 1概述提供本概述是为了以精简的形式介绍将在以下详细描述中进一步描述的一些概念。本概述并非旨在标识出所要求保护的主题的关键特征或必要特征。本概述亦非旨在用于限制所要求保护的主题的范围。提供了已声明的起源策略。首先,可以接收包括一应用程序被允许访问的诸地址的多个记录。可以将所接收的多个记录放在一清单中。接着,可以接收包含一地址的请求, 并将其与清单中的多个记录进行比较。当清单中的多个记录之一与该地址匹配时,或当对清单中的多个记录之一是否与该地址匹配遇到模糊性时,可以允许访问该地址。当清单中的多个记录无一与该地址匹配时,可以拒绝访问该地址。此外,当该应用程序被更新、卸载, 或重新安装时,可以拒绝改变清单中的多个记录的任一个的任何请求。前述概括描述和以下详细描述两者都提供示例且都只是说明性的。因此,前述概括描述和以下详细描述不应被认为是限制性的。此外,除了此处所阐明的那些之外还可提供其他特征或变型。例如,各实施方式可涉及在详细描述中描述的各种特征组合和子组合。附图简述合并在本发明中并构成其一部分的附图示出本发明的各种实施方式。在附图中

图1是一操作环境的框图;图2是用于提供已声明的起源策略的方法的流程图;以及图3是包括计算设备的系统的框图。详细描述以下详细描述参考各个附图。只要可能,就在附图和以下描述中使用相同的附图标记来指示相同或类似的要素。尽管可能描述了本发明的各实施方式,但修改、改编和其他实现也是可能的。例如,可以对附图中所示出的要素进行置换、添加、或修改,且可以通过对所公开的方法置换、重新排序、或添加阶段来修改此处所描述的方法。因此,以下详细描述并不限制本发明。相反,本发明的正确范围由所附权利要求书确定。常规web浏览器试图使用SOP安全策略来控制脚本能访问什么站点。SOP试图防止攻击者通过在用户上下文中发送HTTP请求或通过假装是合法网站来扮演合法网站来扮演合法用户。除了让开发者难以试图使用来自多个站点的web服务建立网页混搭以外,SOP 具有众多安全问题。丰富因特网应用程序(RIA)可以包括具有传统桌面应用特征和功能的web应用。 RIA可以将用户所需的处理转移到web客户端的接口,但是将大量数据(即维持程序、数据等的状态)留在应用服务器上。RIA可以在web浏览器中运行,可以不需要软件安装,且可以在象沙箱那样的安全环境中本地地运行。RIA可以包括网页的本地拷贝,其可以基于本地地获得的信息执行不同功能。SOP可以是RIA的一个问题,因为RIA网页可以不来自于与RIA网页使用的web服务的相同的站点。SOP可能阻塞了 RIA可做的大部分功能。如果 SOP被完全移除而没有一些替换,则RIA或提供web服务的已受损主机中的隐错可能使用 RIA来攻击终端用户。例如,已受损主机可以将RIA重定向以向攻击者的主机发送认证信息。因此,对RIA而言,需要对SOP的替代。图1示出了一操作环境100的框图。如图1所示,操作环境100可以包括丰富因特网应用程序(RIA) 105、清单110、操作系统115,以及站点120。根据本发明的实施例,清单110可以列出作为RIA 105的一部分的所有文件。在清单110中,RIA 105也可以列出 RIA 105可以访问的所有站点(例如,站点120)。清单110可以包含,例如,RIA 105所允许的主机名、协议,以及端口。如果RIA 105的进程中的任何事(脚本、网页所使用的控件、 攻击者放置到系统上的恶意代码,等)企图联系(即,请求)站点120,则在站点120没有列在清单110中的情况下,操作系统115可以阻止该请求。然而,如果RIA 105的进程中的任何事企图联系(即,请求)站点120,则在站点120列在清单110中的情况下,操作系统115 可以允许该请求。根据本发明的实施例,开发者可以通过,例如,站点名、协议,或端口(每一个都允许通配符),在清单110中声明可以被RIA 105访问的所有站点。到未在清单110中声明的任何其他主机或站点的网络连接无一可以在进程(例如,下载将帧指向不同URL的图像, ActiveX控件进行自定义功能,等)中被允许。清单110中的站点列表可以不被通过例如更新或卸载/重新安装进程来改变。本发明的实施例可以具有优于SOP的几个益处。例如,SOP不阻塞所有网络连接, 仅仅阻塞来自脚本的特定连接类型。因此,恶意代码能够使用非标准方式来联系其他服务器。根据本发明的实施例的已声明的起源策略可以阻塞到未声明主机的所有网络连接,而不管它们的源。SOP可以阻塞脚本联系web服务的正常方式,因此开发者被强制使用不可靠的或困难的方式来避免该保护。根据本发明的实施例的已声明的起源策略可以允许开发者联系他们所选择的任何web服务而不受限制。SOP可以被不同浏览器以不同方式实现,且并不总是清楚它如何工作。根据本发明的实施例的已声明的起源策略可以是简单和直接的。此外,本发明的实施例可以具有优于crossdomain.xml的几个益处。例如, Crossdomain. xml支持可以被局限在Adobe Flash,因此正常的web浏览场景可能被排除。 根据本发明的实施例的已声明的起源策略可以应用到在浏览器中使用的任何技术。此外, Crossdomain. xml文件可能在没有顾客交互的情况下在服务器上改变,因此,客户机可能不能够清楚领会日复一日什么可能被允许。根据本发明的实施例的已声明的起源策略可以在客户机上存储主机列表(例如清单110),因此设备管理员可以对客户机被允许连接到何处有清楚的概念。图2是阐述根据本发明的实施例的用于提供已声明的起源策略的方法200中所涉及的各概略阶段的流程图。方法200可使用如将在以下参考图3更详细地描述的计算设备 300来实现。以下将更详细地描述实现方法200的各阶段的方式。方法200可以在起始框 205开始,并进展到阶段210,在那里计算设备300可以接收包含RIA 105被允许访问的诸地址的多个记录。例如,开发者可以确定RIA 105仅需访问特定站点。随后,开发者可以提供包含RIA 105被允许访问的诸地址的多个记录。如果开发者允许访问站点120,则提供站点120的地址。如果开发者不允许访问站点120,则不提供站点120的地址。从阶段210,在那里计算设备300接收包含RIA 105被允许访问的诸地址的多个记录,方法200可以前进到阶段220,在那里计算设备300可以将所接收到的多个记录放置在清单110中。如以下更详细地描述的,清单110和RIA105两者可以驻留在计算设备300 上。RIA可以包括两个文件,清单110和在清单110中指定的主HTML文档。清单110 可以包括声明各RIA 105特性的XML文档,该特性包括,例如,启动时加载的主HTML文档的名称。主HTML文档可以存在于计算设备300上,并存在于和清单110相同的目录中。如果清单105或主HTML文档丢失或不可访问,RIA 105可能不能执行且可以向用户显示合适的
错误消息。一旦计算设备300在阶段220将所接收到的多个记录放置在清单110中,方法200 可以继续到阶段230,在那里计算设备300可以接收包含一地址的请求。例如,在RIA 105 执行期间,代码可以指向RIA 105应该连接的站点。这代码可以包括脚本、网页使用的控件或甚至恶意代码。本发明的实施例可以包括跨站点导航限制。例如,操作环境100可以针对特权提升状况进行保护,并且不应被滥用为web浏览器的一般目的。指向主HTML文档外的所有导航链接可以在相对于RIA 105的进程以外执行以达到这个目的。这可以意味着, 例如,启动hternet Explorer来处理这些导航请求。指向RIA 105内(可能是文档的不同部分)的导航链接可以如预料地运作,将用户带到主HTML文档的那个部分。
在计算设备300在阶段230接收到包含地址的请求之后,方法200可以进展到决策框对0,在那里计算设备300可以将所接收到的地址与在清单110中的多个记录进行比较。如以下更详细地描述的,“通配符”可以被用来代表多个记录的一部分。常规SOP状态,例如,运行在网页上的JavMcript代码可能不与不是起源于相同网站的任何源交互。存在这个安全策略的原因是阻止恶意web程序员创建盗窃web用户的信息或损害他们隐私的页面。这个常规策略也有使得web开发困难的副作用。由于RIA是从本地设备调用的,所以浏览器起源可能被缺省设置为“本地主机(localhost)”。尽管这对于未连接应用程序尚可,它可能对于需要访问网络资源的那些应用程序造成问题,因为那些请求可能使常规SOP失败。根据本发明的实施例,已声明的起源策略可以规定RIA 105 可以在清单110中声明所有起源站点。无论何时需要实施SOP策略都可以检查该列表,并且与该列表匹配的请求可以被允许通过。落在列表之外的请求可以如常规SOP情况中那样被阻止。例如,RIA 105可以联系gasbuddy. com web服务来检索给定城市的汽油价格。因此,RIA 105的开发者可以向清单110添加以下域gasbuddy. com在一个更复杂的示例中,RIA 105可以使用maps. live, com的API显示给定城市的地图。这些API联系跨maps. live, com和virtualearth. net的不同子域的几个地图小块(tile)服务器maps. live, comstl. maps. live, comst2. maps. live, comrO. ortho. tiles, virtualearth. netrl. ortho. tiles, virtualearth. net在此情况下,RIA 105的开发者可以向清单110添加以下域maps. live, comtile, virtualearth. net注意,星号(即,通配符)被用来使开发者省得把各个和每个域/子域列出。具体地,有效域条目可以是i)域名(即foo. com)或ii)单个星号后面跟随句点以及由至少两个非通配符令牌组成的有效域名/后缀。以下是一些有效条目的示例foo. com氺.foo. com氺· foo. bar. com氺· domain, co. uk以下是一些无效条目的示例*foo. com〔星号后没有句点〕*. com〔星号后只有一个令牌〕*〔星号后没有句点〕.〔不是有效域名〕. com〔不是有效域名〕
从决策框M0,如果计算设备300确定清单110中的多个记录之一与该地址匹配, 则方法200可以前进到阶段250,在那里计算设备300可以允许访问该地址。例如,如果RIA 105的进程中的任何事(脚本、网页所使用的控件、攻击者放置到系统上的恶意代码,等)企图联系(即,请求)站点120,则在站点120列在清单110中的情况下,操作系统115可以允许该请求。如前所述,当确定清单110中的多个记录之一与该地址匹配时,在清单110中的多个记录中的通配符可以被考虑。例如,通配符可以被用来代替网站名称、协议或端口。从决策框M0,如果计算设备300确定对清单110中的多个记录之一是否与该地址匹配遇到模糊性时,方法200可以前进到阶段沈0,在那里计算设备300可以允许访问该地址。例如,在模糊性的情况下,根据本发明的已声明的起源策略可能在因缺省导致的更多许可性的方面出错。例如,在接续上述示例的以下列表中,对live, com的任何子域的请求 (包括直接对live, com的请求)可以通过live, com氺· live, com从决策框M0,如果计算设备300确定清单110中的多个记录无一与该地址匹配, 则方法200可以前进到阶段270,在那里计算设备300可以拒绝访问该地址。例如,如果RIA 105的进程中的任何事(脚本、网页所使用的控件、攻击者放置到系统上的恶意代码,等)企图联系(即,请求)站点120,则在站点120未列在清单110中的情况下,操作系统115可以拒绝该请求。如前所述,当确定清单110中的多个记录之一与地址匹配时,在清单110中的多个记录中的通配符可以被考虑。例如,通配符可以被用来代替网站名称、协议或端口。从阶段250、阶段沈0,或阶段270,方法200可以前进到阶段观0,在那里计算设备 300可以拒绝改变清单110中的多个记录的任何一个的任何请求。例如,RIA 105可以被更新、卸载和重新安装。在这个情况下,作为已添加安全特征,当RIA 105被更新、卸载和重新安装时,可以拒绝改变清单110中的多个记录的任何一个的任何请求。一旦计算设备300 在阶段观0中拒绝了任何请求,方法200然后就可在阶段290处结束。根据本发明的实施例可包括用于提供已声明的起源策略的系统。该系统可包括存储器存储和耦合到该存储器存储的处理单元。该处理单元可用于接收包含一地址的请求, 并将所接收的地址和清单中的多个记录进行比较。接着,当清单中的多个记录之一与该地址匹配,该处理单元可以允许对该地址的访问,而当清单中的多个记录无一与该地址匹配, 该处理单元拒绝对该地址的访问。根据本发明的另一实施例可包括用于提供已声明的起源策略的系统。该系统可包括存储器存储和耦合到该存储器存储的处理单元。该处理单元可用于接收包括一应用程序被允许访问的诸地址的多个记录。该处理单元可以接着将所接收的多个记录放置在清单中。该清单和该应用程序可以驻留在同一计算设备中。该存储器可以接着接收包含一地址的请求,并将所接收的地址和清单中的多个记录进行比较。接着,该处理单元可以i)当清单中的多个记录之一与该地址匹配时允许访问该地址;ii)当清单中的多个记录之一是否与该地址匹配遇到模糊性时,允许访问该地址;iii)当清单中的多个记录无一与该地址匹配时,拒绝访问该地址。当该应用程序被更新、卸载或重新安装时,该处理单元还可以拒绝改变清单中的多个记录的任一个的任何请求。根据本发明的又一实施例可包括用于提供已声明的起源策略的系统。该系统可包括存储器存储和耦合到该存储器存储的处理单元。该处理单元可用于接收包括一应用程序被允许访问的诸地址的多个记录,并将所接收当多个记录放置在清单中。接着,该处理单元可以从请求访问该地址的应用程序接收包括一地址的请求。该应用程序可以包括,例如,脚本、网页使用的控件,或恶意代码。接着,该处理单元可以将所接收的地址和清单中的多个记录进行比较。当清单中的多个记录之一与该地址匹配时,该处理单元可以接着允许访问该地址。当确定清单中的多个记录之一与地址匹配时,在清单中的多个记录中的至少一个通配符可以被考虑。该至少一个通配符可以被用来代替网站名称、协议或端口。当清单中的多个记录之一是否与该地址匹配遇到模糊性时,该处理单元可以允许访问该地址,或当清单中的多个记录无一与该地址匹配时,拒绝访问该地址。当该应用程序被更新、卸载,或重新安装时,该处理单元可以拒绝改变清单中的多个记录的任一个的任何请求。图3是包括计算设备300的系统的框图。根据本发明的一个实施方式,上述存储器存储和处理单元可以在诸如图3的计算设备300等计算设备中实现。可以使用硬件、软件或固件的任何合适的组合来实现该存储器存储和处理单元。例如,存储器存储和处理单元可以用计算设备300或结合计算设备300的其他计算设备318中的任意一个来实现。站点120可以包括其他计算设备318之一。根据本发明的各实施方式,上述系统、设备和处理器是示例,而其他系统、设备和处理器可以包括上述存储器存储和处理单元。此外,计算设备300可包括用于上述环境100的操作环境。操作环境100可以在其他环境中操作并且不限于计算设备300。参考图3,根据本发明的一实施方式的系统可包括计算设备,诸如计算设备300。 在一基本配置中,计算设备300可以包括至少一个处理单元302和系统存储器304。取决于计算设备的配置和类型,系统存储器304可以包括,但不限于,易失性存储器(例如,随机存取存储器(RAM))、非易失性存储器(例如,只读存储器(ROM))、闪存或任何组合。系统存储器304可以包括操作系统115、一个或多个编程模块306,且可以包括程序数据307,并且可以包括清单110。操作系统115,例如,可适用于控制计算设备300的操作。在一个实施例中,编程模块306可包括例如,RIA 105。此外,本发明的各实施方式可以结合图形库、其他操作系统、或任何其他应用程序来实践,且不限于任何特定应用程序或系统。该基本配置在图3中由虚线308内的组件示出。计算设备300可具有附加特征或功能。例如,计算设备300还可包括附加数据存储设备(可移动和/或不可移动),诸如例如磁盘、光盘或磁带。这些附加存储在图3中由可移动存储309和不可移动存储310示出。计算机存储介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。系统存储器304、可移动存储309和不可移动存储310都是计算机存储介质的示例(即,存储器存储)。计算机存储介质可以包括,但不限于,RAM、ROM、 电可擦除只读存储器(EEPROM)、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光存储、磁带盒、磁带、磁盘存储或其它磁性存储设备、或可用于存储信息且可以由计算设备300访问的任何其它介质。任何这样的计算机存储介质都可以是设备300的一部分。 计算设备300还可以具有输入设备312,如键盘、鼠标、笔、声音输入设备、触摸输入设备等。 还可包括诸如显示器、扬声器、打印机等输出设备314。上述设备是示例且可以使用其他设备。
计算设备300还可包含可允许设备300诸如通过例如内联网或因特网等分布式计算环境中的网络来与其他计算设备318进行通信的通信连接316。通信连接316是通信介质的一个示例。通信介质通常由诸如载波或其他传输机制等已调制数据信号中的计算机可读指令、数据结构、程序模块或其他数据来体现,并包括任何信息传递介质。术语“已调制数据信号”可以描述以对该信号中的信息进行编码的方式设定或者改变其一个或多个特征的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接等有线介质,以及诸如声学、射频(RF)、红外线和其他无线介质等无线介质。如此处所使用的术语“计算机可读介质“可以包括存储介质和通信介质两者。如上所述,可以在系统存储器304中存储包括操作系统115在内的多个程序模块和数据文件。当在处理单元302上执行时,编程模块306(例如,RIA 105)可执行各过程,包括例如,如上所述的方法200的一个或多个阶段。前述过程是示例,且处理单元302可执行其他过程。根据本发明的各实施方式可以使用的其他编程模块可以包括电子邮件和联系人应用程序、文字处理应用程序、电子表格应用程序、数据库应用程序、幻灯片演示应用程序、 绘图或计算机辅助应用程序等。一般而言,根据本发明的各实施方式,程序模块可以包括可以执行特定任务或可以实现特定抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。此外,本发明的各实施方式可用其他计算机系统配置来实践,包括手持式设备、多处理器系统、基于微处理器的系统或可编程消费电子产品、小型机、大型计算机等。本发明的各实施方式也可以在其中任务由通过通信网络链接的远程处理设备执行的分布式计算环境中实现。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备中。此外,本发明的各实施方式可在包括分立电子元件的电路、包含逻辑门的封装或集成电子芯片、利用微处理器的电路、或在包含电子元件或微处理器的单个芯片上实现。本发明的各实施方式还可以使用能够执行诸如,例如,AND(与)、0R(或)和NOT(非)等逻辑运算的其他技术来实践,包括但不限于,机械、光学、流体和量子技术。另外,本发明的各实施方式可以在通用计算机或任何其他电路或系统中实现。例如,本发明的各实施方式可被实现为计算机进程(方法)、计算系统或诸如计算机程序产品或计算机可读介质等制品。计算机程序产品可以是计算机系统可读并编码了用于执行计算机过程的指令的计算机程序的计算机存储介质。计算机程序产品还可以是计算系统可读并编码了用于执行计算机过程的指令的计算机程序的载体上的传播信号。因此, 本发明能以硬件和/或软件(包括固件、常驻软件、微码等)来具体化。换言之,本发明的各实施方式可以采用其上包含有供指令执行系统使用或结合其使用的计算机可使用或计算机可读程序代码的计算机可使用或计算机可读存储介质上的计算机程序产品的形式。计算机可使用或计算机可读介质可以是可包含、存储、通信、传播、或传输程序以供指令执行系统、装置或设备使用或结合其使用的任何介质。计算机可使用或计算机可读介质可以是,例如,但不限于,电、磁、光、电磁、红外、 或半导体系统、装置、设备或传播介质。更具体的计算机可读介质示例(非穷尽列表),计算机可读介质可以包括以下具有一条或多条导线的电连接、便携式计算机盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPR0M或闪存)、光纤、和便携式压缩盘只读存储器(CD-ROM)。注意,计算机可使用或计算机可读介质甚至可以是其上打印有程序的纸张或另一合适的介质,因为程序可以经由例如对纸张或其他介质的光学扫描而电子地捕获,随后如有必要被编译、解释,或以其他合适的方式处理,并随后存储在计算机存储器中。以上参考例如根据本发明的各实施方式的方法、系统和计算机程序产品的框图和 /或操作图示描述了本发明的各实施方式。框中所注明的各功能/动作可以按不同于任何流程图所示的次序出现。例如,取决于所涉及的功能/动作,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以按相反的次序来执行。尽管已经描述了本发明的某些实施方式,但也可能存在其他实施方式。此外,虽然本发明的各实施方式被描述为与存储在存储器和其他存储介质中的数据相关联,但数据还可以被存储在或读取自其他类型的计算机可读介质,如辅助存储设备,像硬盘、软盘、或 CD-ROM ;来自因特网的载波;或其他形式的RAM或ROM。此外,所公开的各方法的各阶段可以按任何方式来修改,包括通过对各阶段重新排序和/或插入或删除阶段,而不背离本发明。包括此处所包括的代码中的版权在内的所有权利都归属于申请人并且是本申请人的财产。申请人保持并保留此处所包括的代码中的所有权利,并授予仅关于所授权的专利的再现且未出于其他目的再现该材料的许可。虽然本说明书包括各示例,但本发明的范围由所附权利要求书来指示。此外,尽管用对结构特征和/或方法动作专用的语言描述了本说明书,但权利要求书并不限于上述特征或动作。相反,上述具体特征和动作是作为本发明的各实施方式的示例来公开的。
权利要求
1.一种用于提供已声明的起源策略的方法,所述方法包括接收包含地址的请求;将所接收的地址与清单(110)中的多个记录进行比较;当所述清单(110)中的所述多个记录之一匹配所述地址时,允许访问所述地址;以及当所述清单(110)中的所述多个记录无一匹配所述地址时,拒绝访问所述地址。
2.如权利要求1所述的方法,其特征在于,接收包含所述地址的请求包括从请求访问所述地址的应用程序(10 接收包含所述地址的请求。
3.如权利要求1所述的方法,其特征在于,接收包含所述地址的请求包括从请求访问所述地址的应用程序(10 接收包含所述地址的请求,其中所述应用程序(10 包括以下至少一个脚本、网页(120)使用的控件,以及恶意代码。
4.如权利要求1所述的方法,其特征在于,将所接收的地址与所述清单(110)中的所述多个记录进行比较包括,将所接收的地址与所述清单(110)中的所述多个记录进行比较, 其中通配符被用于代表所述多个记录的一部分。
5.如权利要求1所述的方法,其特征在于,当所述清单(110)中的所述多个记录之一匹配所述地址时允许访问所述地址包括,在确定所述清单(110)中的所述多个记录之一匹配所述地址时,考虑所述清单(110)中的所述多个记录中的通配符。
6.如权利要求1所述的方法,其特征在于,当所述清单(110)中的所述多个记录之一匹配所述地址时允许访问所述地址包括,在确定所述清单(110)中的所述多个记录之一匹配所述地址时,考虑所述清单(110)中的所述多个记录中的至少一个通配符,所述至少一个通配符被来代替网站名称。
7.如权利要求1所述的方法,其特征在于,当所述清单(110)中的所述多个记录之一匹配所述地址时允许访问所述地址包括,在确定所述清单(110)中的所述多个记录之一匹配所述地址时,考虑所述清单(110)中的所述多个记录中的至少一个通配符,所述至少一个通配符被来代替协议。
8.如权利要求1所述的方法,其特征在于,当所述清单(110)中的所述多个记录之一匹配所述地址时允许访问所述地址包括,在确定所述清单(110)中的所述多个记录之一匹配所述地址时,考虑所述清单(110)中的所述多个记录中的至少一个通配符,所述至少一个通配符被来代替端口。
9.如权利要求1所述的方法,其特征在于,当所述清单(110)中的所述多个记录无一匹配所述地址时拒绝访问所述地址包括,在确定所述清单(110)中的所述多个记录无一匹配所述地址时,考虑所述清单(110)中的所述多个记录中的通配符。
10.如权利要求1所述的方法,其特征在于,当所述清单(110)中的所述多个记录无一匹配所述地址时拒绝访问所述地址包括,在确定所述清单(110)中的所述多个记录无一匹配所述地址时,考虑所述清单(110)中的所述多个记录中的至少一个通配符,所述至少一个通配符被来代替网站名称。
11.如权利要求1所述的方法,其特征在于,当所述清单(110)中的所述多个记录无一匹配所述地址时拒绝访问所述地址包括,在确定所述清单(110)中的所述多个记录无一匹配所述地址时,考虑所述清单(110)中的所述多个记录中的至少一个通配符,所述至少一个通配符被来代替协议。
12.如权利要求1所述的方法,其特征在于,当所述清单(110)中的所述多个记录无一匹配所述地址时拒绝访问所述地址包括,在确定所述清单(110)中的所述多个记录无一匹配所述地址时,考虑所述清单(110)中的所述多个记录中的至少一个通配符,所述至少一个通配符被来代替端口。
13.如权利要求1所述的方法,其特征在于,还包括,当应用程序(105)被进行更新、卸载,和重新安装之一时,拒绝对所述清单(110)中的所述多个记录进行改变的任何请求。
14.如权利要求1所述的方法,其特征在于,还包括当对所述清单(110)中的所述多个记录之一是否与所述地址匹配遇到模糊性时,允许访问所述地址。
15.如权利要求1所述的方法,其特征在于,还包括接收包含应用程序(10 被允许访问的诸地址的所述多个记录;将所接收的多个记录放置在所述清单(110)中。
16.如权利要求15所述的方法,其特征在于,将所接收的多个记录放置在所述清单 (110)中包括,将所接收的多个记录放置在所述清单(110)中,其中所述清单(110)和所述应用程序(10 驻留在同一计算设备上。
17.一种存储一组指令的计算机可读介质,所述一组指令在被执行时执行一种用于提供已声明的起源策略的方法,由所述一组指令执行的方法包括接收包含应用程序(10 被允许访问的诸地址的多个记录;将所接收的多个记录放置在清单(110)中,其中将所接收的多个记录放置在所述清单 (110)中包括,将所接收的多个记录放置在所述清单(110)中其中所述清单(110)和所述应用程序(10 驻留在同一计算设备上;接收包含地址的请求;将所接收的地址与所述清单(110)中的所述多个记录进行比较;当所述清单(110)中的所述多个记录之一匹配所述地址时,允许访问所述地址;以及当对所述清单(110)中的所述多个记录之一是否与所述地址匹配遇到模糊性时,允许访问所述地址;当所述清单(110)中的所述多个记录无一匹配所述地址时,拒绝访问所述地址;以及当所述应用程序(10 被进行更新、卸载,和重新安装之一时,拒绝对所述清单(110) 中的所述多个记录进行改变的任何请求。
18.如权利要求17所述的计算机可读介质,其特征在于,当所述清单(110)中的所述多个记录之一匹配所述地址时允许访问所述地址包括,在确定所述清单(110)中的所述多个记录之一匹配所述地址时,考虑所述清单(110)中的所述多个记录中的至少一个通配符, 所述至少一个通配符被来代替以下至少一个网站名称、协议,以及端口。
19.如权利要求17所述的计算机可读介质,其特征在于,当所述清单(110)中的所述多个记录无一匹配所述地址时拒绝访问所述地址包括,在确定所述清单(110)中的所述多个记录无一匹配所述地址时,考虑所述清单(110)中的所述多个记录中的至少一个通配符, 所述至少一个通配符被来代替以下至少一个网站名称、协议,以及端口。
20.一种用于提供已声明的起源策略的系统,所述系统包括存储器存储304 ;以及耦合到所述存储器存储(304)的处理单元(302),其中所述处理单元可用于接收包含应用程序(10 被允许访问的诸地址的多个记录; 将所接收的多个记录放置在所述清单(110)中;从请求访问一地址的所述应用程序(10 接收包含所述地址的请求,其中所述应用程序(10 包括以下至少一个脚本、网页(120)使用的控件,以及恶意代码; 将所接收的地址与所述清单(110)中的所述多个记录进行比较; 当所述清单(110)中的所述多个记录之一匹配所述地址时允许访问所述地址,其中所述处理单元(302)被操作用于允许访问包括所述处理单元被操作用于在确定所述清单 (110)中的所述多个记录之一匹配所述地址时,考虑所述清单(110)中的所述多个记录中的至少一个通配符,所述至少一个通配符被来代替以下至少之一网站名称、协议,以及端 Π ;当对所述清单(110)中的所述多个记录之一是否与所述地址匹配遇到模糊性时,允许访问所述地址;当所述清单(110)中的所述多个记录无一匹配所述地址时,拒绝访问所述地址;以及当所述应用程序(10 被进行更新、卸载,和重新安装之一时,拒绝对所述清单(110) 中的所述多个记录进行改变的任何请求。
全文摘要
提供了已声明的起源策略。首先,可以接收包括一应用程序被允许访问的诸地址的多个记录。可以将所接收的多个记录放在一清单中。接着,可以接收包含一地址的请求,并将其与清单中的多个记录进行比较。当清单中的多个记录之一与该地址匹配时,或当对清单中的多个记录之一是否与该地址匹配遇到模糊性时,可以允许访问该地址。当清单中的多个记录无一与该地址匹配时,可以拒绝访问该地址。此外,当该应用程序被更新、卸载,或重新安装时,可以拒绝任何对清单中的多个记录的任一个进行改变的请求。
文档编号G06F7/04GK102216936SQ200980134285
公开日2011年10月12日 申请日期2009年6月25日 优先权日2008年6月27日
发明者A·哈万, M·G·莱昂斯, R·J·拉米基 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1