本发明专利技术公开了一种用于浏览器的插件调用方法和插件管理器。其中插件管理器包括输入/输出器,其包括第一输入/输出操作模块,所述第一输入/输出操作模块适于根据所述输入/输出器维护的操作权限列表,判定所述插件是否具有执行所述输入/输出操作的权限;若判定出所述插件具有执行所述输入/输出操作的权限,则执行所述输入/输出操作;若判定出所述插件不具有执行所述输入/输出操作的权限,禁止执行所述输入/输出操作;所述插件管理器拦截所调用的插件中涉及输入/输出操作的行为,将所述行为导入到所述输入/输出器中。本发明专利技术能够防止插件带来的安全隐患,而且,还不会影响插件其它功能的运行速度,提高了插件的执行效率。
【技术实现步骤摘要】
本专利技术涉及计算机网络
,具体涉及一种用于浏览器的插件调用方法和插件管理器。
技术介绍
插件是一种遵循一定规范的应用程序接口编写出来的程序。很多软件都有插件, 插件有无数种。例如在IE浏览器中,安装相关的插件后,浏览器能够直接调用插件程序,用于处理特定类型的文件。插件是会随着IE浏览器的启动而自动执行的程序。IE浏览器常见的插件有Flash插件、RealPlayer插件、MMS插件、MIDI五线谱插件、ActiveX插件等等。 再比如Winamp的DFX,也是插件。图I示出了现有技术中一种浏览器与插件交互工作的示意图。如图I所示,浏览器包含插件管理器,该插件管理器用于在主程序和插件之间提供各种接口,使得插件和浏览器之间得以交互工作。进而,插件根据自身的需求可以调用本地资源,例如进行文件的读 /写、文件的上传/下载、配置文件的操作等等。在该技术方案中,插件直接对本地资源进行操作,由此会带来不安全的隐患。具体来说,有些插件能够帮助用户更方便浏览互联网或调用上网辅助功能,这类插件属于正常程序;但也有部分插件被人称为广告软件(Adware)或间谍软件(Spyware),这类插件为恶意插件,它监视用户的上网行为,并把所记录的数据报告给插件的创建者,以达到投放广告、盗取游戏或银行帐号密码等非法目的。因为插件由不同的发行商发行,其技术水平也良莠不齐,插件程序很可能与其它运行中的程序发生冲突, 从而导致诸如各种页面错误,运行时间错误等等现象,阻塞了正常浏览。另一方面,读/写、 上传/下载文件的执行速度较慢,会使线程出现卡、慢等现象,降低整个插件运行速度和效率。专利
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的用于浏览器的插件调用方法和相应的插件管理器、浏览器。根据本专利技术的一个方面,提供了一种用于浏览器的插件调用方法,包括导入步骤,在浏览器调用插件时,拦截插件中涉及输入/输出操作的行为,将所述行为导入到输入/输出器中,所述输入/输出器维护有操作权限列表;第一输入/输出操作步骤,所述输入/输出器根据所述操作权限列表,判定所述插件是否具有执行所述输入/输出操作的权限;若判定出所述插件具有执行所述输入/输出操作的权限,则由所述输入/输出器执行所述输入/输出操作;若判定出所述插件不具有执行所述输入/输出操作的权限,禁止执行所述输入/输出操作。根据本专利技术的另一方面,提供了一种插件管理器,适于调用插件,并将涉及输入/ 输出操作的行为导入到输入/输出器中;并且所述插件管理器包括输入/输出器,所述输入/输出器包括第一输入/输出操作模块,所述第一输入/输出操作模块适于根据所述输入/输出器维护的操作权限列表,判定所述插件是否具有执行所述输入/输出操作的权限;若判定出所述插件具有执行所述输入 /输出操作的权限,则执行所述输入/输出操作;若判定出所述插件不具有执行所述输入/ 输出操作的权限,禁止执行所述输入/输出操作;所述插件管理器拦截所调用的插件中涉及输入/输出操作的行为,将所述行为导入到所述输入/输出器中。根据本专利技术提供的技术方案,在浏览器调用插件时,将插件中的i/o操作的行为导入到单独的I/o器中,I/O器根据其维护的操作权限列表,判定插件是否具有执行该I/O 操作的权限,在具有该权限的情况下由I/o器执行I/O操作,否则禁止执行该I/O操作。本专利技术利用I/o器对插件对本地资源的I/O操作进行控制,防止插件带来的安全隐患。而且, 本专利技术将速度较慢的I/o操作从其它线程中独立出来由I/O器执行,不会影响插件其它功能的运行速度,提闻了插件的执行效率。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段, 而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明 通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中图I示出了现有技术中一种浏览器与插件交互工作的示意图2示出了另一种浏览器与插件交互工作的示意图3示出了根据本专利技术一个实施例的用于浏览器的插件调用方法的流程图4示出了根据本专利技术另一个实施例的用于浏览器的插件调用方法的流程图5示出了根据本专利技术一个实施例的插件管理器的结构示意图6示出了根据本专利技术一个实施例的浏览器的结构示意图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。图2示出了另一种浏览器与插件交互工作的示意图。如图2所示,将插件分为可信任插件和不可信任插件。具体来说,可信任插件是经过浏览器安全认证的插件,例如浏览器厂商自己开发的插件;而不可信任插件是未经过浏览器安全认证的插件,例如第三方开发的插件等。插件管理器可以分别对这两种插件进行管理,并且不同类型的插件在不同的线程中运行。具体来说,可信任插件在主线程中运行,而不可信任插件在子线程中执行。在这种技术方案中,对于插件的安全性进行了区分,但是仍然不能防范不可信任插件的安全隐患以及由于读/写、上传/下载文件的速度慢导致插件运行速度慢的问题。图3示出了根据本专利技术一个实施例的用于浏览器的插件调用方法100的流程图。 如图3所示,方法100始于步骤S101,该步骤SlOl为导入步骤,其中在浏览器调用插件时, 将插件中涉及输入/输出(以下简称1/0)操作的行为导入到I/O器中,该I/O器维护有操作权限列表。在本方法中,浏览器的插件管理器提供对于插件的接口,在浏览器调用插件时,插件管理器将插件中涉及I/o操作的行为导入到I/O器中来统一处理。I/O器是插件管理器中一个独立的功能模块,它对插件对本地资源的操作进行控制,防止插件带来的安全隐患。可选地,插件管理器对插件中涉及I/o操作的行为进行拦截,将该行为导入到I/O器中来处理。在I/o器中维护有操作权限列表,可选地,操作权限列表记录了危险函数与可调用该危险函数的插件的对应关系,其中危险函数是与I/o操作有关的函数。随后,方法100进入步骤S102,其中I/O器根据操作权限列表,判定插件是否具有执行I/o操作的权限,若是,执行步骤S103 ;否则执行步骤S104。I/O器获取与导入的I/O 操作有关的危险函数,查询操作权限列表,获得可调用该危险函数的插件,I/O器判断插件是否属于可调用该危险函数的插件的范围,若属于,表明插件具有执行I/O操作的权限;若不属于,表明插件不具有执行I/O操作的权限。应当理解的是,本专利技术的操作权限列表不仅限于记录危险函数与可调用该危险函数的插件的对应关系,也可以是记录其它形式的操作权限,例如直接记录插件与允许该插件所执行的I/o操作,或者记录危险函数与不可调用该危险函数的插件的对应关系。对应的,步骤S102的具体执行方式也随之调整,本专利技术对此不做限制。 在步骤S103中,I/O器执行I/O操作。I本文档来自技高网...
【技术保护点】
一种用于浏览器的插件调用方法,包括:导入步骤,在浏览器调用插件时,拦截插件中涉及输入/输出操作的行为,将所述行为导入到输入/输出器中,所述输入/输出器维护有操作权限列表;第一输入/输出操作步骤,所述输入/输出器根据所述操作权限列表,判定所述插件是否具有执行所述输入/输出操作的权限;若判定出所述插件具有执行所述输入/输出操作的权限,则由所述输入/输出器执行所述输入/输出操作;若判定出所述插件不具有执行所述输入/输出操作的权限,禁止执行所述输入/输出操作。
【技术特征摘要】
【专利技术属性】
技术研发人员:段培堃,杭程,任寰,
申请(专利权)人:北京奇虎科技有限公司,奇智软件北京有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。