浏览器调用插件的方法以及插件管理器、浏览器的制作方法

上传人:ting****789 文档编号:310007147 上传时间:2022-06-14 格式:DOCX 页数:6 大小:23.21KB
返回 下载 相关 举报
浏览器调用插件的方法以及插件管理器、浏览器的制作方法_第1页
第1页 / 共6页
亲,该文档总共6页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《浏览器调用插件的方法以及插件管理器、浏览器的制作方法》由会员分享,可在线阅读,更多相关《浏览器调用插件的方法以及插件管理器、浏览器的制作方法(6页珍藏版)》请在金锄头文库上搜索。

1、浏览器调用插件的方法以及插件管理器、浏览器的制作方法专利名称:浏览器调用插件的方法以及插件管理器、浏览器的制作方法技术领域:本发明涉及计算机网络技术领域,具体涉及一种浏览器调用插件的方法以及插件 管理器、浏览器。背景技术:插件是一种遵循一定规范的应用程序接口编写出来的程序。很多软件都有插件, 插件有无数种。例如在IE浏览器中,安装相关的插件后,浏览器能够直接调用插件程序,用 于处理特定类型的文件。插件是会随着IE浏览器的启动而自动执行的程序。IE浏览器常 见的插件有Flash插件、RealPlayer插件、MMS插件、MIDI五线谱插件、ActiveX插件等等。 再比如Winamp的DFX,也

2、是插件。图1示出了现有技术中一种浏览器与插件交互工作的示意图。如图1所示,浏览 器包含插件管理器,该插件管理器用于在主程序和插件之间提供各种接口,使得插件和浏 览器之间得以交互工作。进而,插件根据自身的需求可以调用本地资源,例如进行文件的读 /写、文件的上传/下载、配置文件的操作等等。在该技术方案中,插件直接对本地资源进行 操作,由此会带来不安全的隐患。具体来说,有些插件能够帮助用户更方便浏览互联网或调 用上网辅助功能,这类插件属于正常程序;但也有部分插件被人称为广告软件(Adware)或 间谍软件(Spyware),这类插件为恶意插件,它监视用户的上网行为,并把所记录的数据报 告给插件的创建

3、者,以达到投放广告、盗取游戏或银行帐号密码等非法目的。因为插件由不 同的发行商发行,其技术水平也良莠不齐,插件程序很可能与其它运行中的程序发生冲突, 从而导致诸如各种页面错误,运行时间错误等等现象,阻塞了正常浏览。另一方面,读/写、 上传/下载文件的执行速度较慢,会使线程出现卡、慢等现象,降低整个插件运行速度和效 率。发明内容鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上 述问题的浏览器调用插件的方法和相应的插件管理器、浏览器。根据本发明的一个方面,提供了一种浏览器调用插件的方法,包括导入步骤,在浏览器调用插件时,将所述插件中涉及输入/输出操作的行为导入 到输入/输出器

4、中,所述输入/输出器维护有操作权限列表;第一输入/输出操作步骤,所述输入/输出器根据所述操作权限列表,判定所述插 件是否具有执行所述输入/输出操作的权限;若判定出所述插件具有执行所述输入/输出 操作的权限,则由所述输入/输出器执行所述输入/输出操作;若判定出所述插件不具有执 行所述输入/输出操作的权限,禁止执行所述输入/输出操作。根据本发明的另一方面,提供了一种插件管理器,适于调用插件,并将涉及输入/ 输出操作的行为导入到输入/输出器中;并且所述插件管理器包括输入/输出器,所述输入/输出器包括第一输入/输出操作模块,所述第一输入/输出操作模块适于根据所述输入/输出器维护的操作权限列表,判定 所

5、述插件是否具有执行所述输入/输出操作的权限;若判定出所述插件具有执行所述输入 /输出操作的权限,则执行所述输入/输出操作;若判定出所述插件不具有执行所述输入/ 输出操作的权限,禁止执行所述输入/输出操作。根据本发明的另一方面,提供了一种浏览器,包括上述插件管理器。根据本发明提供的技术方案,在浏览器调用插件时,将插件中的i/o操作的行为 导入到单独的I/o器中,I/O器根据其维护的操作权限列表,判定插件是否具有执行该I/O 操作的权限,在具有该权限的情况下由I/o器执行I/O操作,否则禁止执行该I/O操作。本 发明利用I/o器对插件对本地资源的I/O操作进行控制,防止插件带来的安全隐患。而且,

6、本发明将速度较慢的I/o操作从其它线程中独立出来由I/O器执行,不会影响插件其它功 能的运行速度,提闻了插件的执行效率。上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段, 而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够 更明显易懂,以下特举本发明的具体实施方式。通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通 技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明 的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中图1示出了现有技术中一种浏览器与插件交互工作的示意图2示出了另一种浏

7、览器与插件交互工作的示意图3示出了根据本发明一个实施例的浏览器调用插件的方法的流程图4示出了根据本发明另一个实施例的浏览器调用插件的方法的流程图5示出了根据本发明一个实施例的插件管理器的结构示意图6示出了根据本发明一个实施例的浏览器的结构示意图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开 的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例 所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围 完整的传达给本领域的技术人员。图2示出了另一种浏览器与插件交互工作的示意图。如图2所示,将插件分为可 信任插

8、件和不可信任插件。具体来说,可信任插件是经过浏览器安全认证的插件,例如浏览 器厂商自己开发的插件;而不可信任插件是未经过浏览器安全认证的插件,例如第三方开 发的插件等。插件管理器可以分别对这两种插件进行管理,并且不同类型的插件在不同的 线程中运行。具体来说,可信任插件在主线程中运行,而不可信任插件在子线程中执行。在 这种技术方案中,对于插件的安全性进行了区分,但是仍然不能防范不可信任插件的安全 隐患以及由于读/写、上传/下载文件的速度慢导致插件运行速度慢的问题。图3示出了根据本发明一个实施例的浏览器调用插件的方法100的流程图。如图3所示,方法100始于步骤SlOl,该步骤SlOl为导入步骤,

9、其中在浏览器调用插件时,将插 件中涉及输入/输出(以下简称1/0)操作的行为导入到I/O器中,该I/O器维护有操作权 限列表。在本方法中,浏览器的插件管理器提供对于插件的接口,在浏览器调用插件时,插 件管理器将插件中涉及I/o操作的行为导入到I/O器中来统一处理。I/O器是插件管理器 中一个独立的功能模块,它对插件对本地资源的操作进行控制,防止插件带来的安全隐患。 可选地,插件管理器对插件中涉及I/o操作的行为进行拦截,将该行为导入到I/O器中来处 理。在I/o器中维护有操作权限列表,可选地,操作权限列表记录了危险函数与可调用该危 险函数的插件的对应关系,其中危险函数是与I/o操作有关的函数。

10、随后,方法100进入步骤S102,其中I/O器根据操作权限列表,判定插件是否具有 执行I/o操作的权限,若是,执行步骤S103 ;否则执行步骤S104。I/O器获取与导入的I/O 操作有关的危险函数,查询操作权限列表,获得可调用该危险函数的插件,I/o器判断插件 是否属于可调用该危险函数的插件的范围,若属于,表明插件具有执行I/o操作的权限;若 不属于,表明插件不具有执行I/o操作的权限。应当理解的是,本发明的操作权限列表不仅 限于记录危险函数与可调用该危险函数的插件的对应关系,也可以是记录其它形式的操作 权限,例如直接记录插件与允许该插件所执行的I/o操作,或者记录危险函数与不可调用 该危险

11、函数的插件的对应关系。对应的,步骤S 102的具体执行方式也随之调整,本发明对 此不做限制。在步骤S103中,I/O器执行I/O操作。I/O器判定插件具有执行I/O操作的权限, 由I/o器进行对本地资源的读/写操作或上传/下载操作。在步骤S104中,I/O器禁止执行I/O操作。I/O器判定插件不具有执行I/O操作 的权限,禁止执行I/o操作。在本文中,上述步骤S102、步骤S103和步骤S104被称为第一 I/O操作步骤。根据本实施例提供的浏览器调用插件的方法,在浏览器调用插件时,将插件中的 I/O操作的行为导入到单独的I/O器中,I/O器根据其维护的操作权限列表,判定插件是否 具有执行该I/

12、O操作的权限,在具有该权限的情况下由I/O器执行I/O操作,否则禁止执行 该I/o操作。本方法利用I/O器对插件对本地资源的I/O操作进行控制,防止插件带来的 安全隐患。而且,本方法将速度较慢的I/o操作从其它线程中独立出来由I/O器执行,不会 影响插件其它功能的运行速度,提高了插件的执行效率。图4示出了根据本发明另一个实施例的浏览器调用插件的方法200的流程图。在 方法200中将插件分为可信任插件和不可信任插件做不同的处理。如图4所示,方法200 始于步骤S201,该步骤S201为判定步骤,其中浏览器的插件管理器判定插件是否为不可信 任插件,若是,执行步骤S203 ;否则,执行步骤S202。

13、在本方法中,浏览器的插件管理器提供 对于可信任插件和不可信任插件的接口,该插件管理器中维护有可信任插件的列表和/或 不可信任插件的列表。在浏览器调用插件时,插件管理器根据可信任插件的列表和/或不 可信任插件的列表判定插件是可信任插件或不可信任插件,如果是可信任插件,则执行步 骤S202 ;如果是不可信任插件,则执行步骤S203。在步骤S202中,在主线程中运行可信任插件。在步骤S203中,在子线程中运行不可信任插件。在步骤S202和步骤S203的执行过程中,方法200进入步骤S204,其中插件管理器将可信任插件和/或不可信任插件的涉及I/o操作的行为导入到I/O器中。I/O器是插件 管理器中一

14、个独立的功能模块,具体地,I/o器在单独的I/O线程中运行。可选地,插件管 理器对可信任插件和/或不可信任插件中涉及I/o操作的行为进行拦截,将该行为导入到 I/o器中来处理。可选地,I/O器向所有插件的I/O操作提供统一的I/O接口。在开发插件时,开发人 员就要注意插件要进行的I/o操作必须调用该统一 I/O接口。如果I/O器拦截到插件未调 用该统一 I/o接口而进行的I/O操作,则禁止执行I/O操作,具体执行过程参见步骤S205。 应当理解的是,步骤S205为可选步骤,当没有要求插件的I/O操作必须调用统一 I/O接口 时,本方法不包括步骤S205。在步骤S204之后,方法200进入步骤S

15、205,I/O器判断插件的I/O操作调用的是 否为统一的I/o接口,若是,执行步骤S206,否则,执行步骤S208。在步骤S206中,I/O器查询插件管理器进行判断得到的插件是可信任插件或不可 信任插件的结果,若插件为不可信任插件,执行步骤S207 ;若插件为可信任插件,执行步骤 S209。在步骤S207中,I/O器根据操作权限列表,判定不可信任插件是否具有执行I/O操 作的权限,若是,执行步骤209 ;否则执行步骤208。在I/O器中维护有操作权限列表,该操 作权限列表可以是以数据文件的形式在浏览器进行安装时被拷贝在指定的安装目录下。例 如,操作权限列表可以为.dat格式,经过加密后被分发给

16、浏览器。可选地,操作权限列表记录了危险函数与可调用该危险函数的插件的对应关系, 其中危险函数是与I/o操作有关的函数。表I示出了操作权限列表的一种示例。表1.操作权限列表危险函数I可调用的插件RegOpenKeyFlash. ocx;Unity. ocxRegOpenKeyExFlash, ocx;Unity, ocxRegCreateKeyFlash, ocx;Unity, ocxRegCreateKeyExFlash, ocx;Unity, ocxRegSetValueFlash, ocx;Unity, ocxRegSetKeyValueFlash, ocx;Unity, ocxCreateFileFlash, ocx;reader. ocx;music. ocxDeleteFileFlash, ocx;reader. ocx;music. ocxMoveFileFlash, ocx;reader. ocx;music. ocx

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号