写点什么

让人五味杂陈的 Mozilla 插件机制变化

  • 2015-08-30
  • 本文字数:1720 字

    阅读完需:约 6 分钟

Mozilla 宣布,Firefox 插件开发将迎来重要的变革。

在博文 Firefox 插件开发的未来中,Mozilla 产品经理 Kev Needham 说,插件生态圈“在过去的这些年里获得了长足的有机的增长”,但 Firefox 需做出根本性的变革以“实现其现代化”。

其中一项大的变化就是 WebExtensions API。Needham 称,Mozilla 希望插件开发能够更多地借鉴 Web 开发,“在标准定义的行为集下,同样的代码应当能够运行在多个不同的浏览器上”。

为此,Needham 说,WebExtensions 使得人们在多个浏览器上开发扩展程序变得更容易了,他说:

为 Chrome、Opera、甚至可能在将来还包括 Microsoft Edge 等浏览器遍写的扩展代码能在略作修改之后,以 WebExtension 的形式运行在 Firefox 上。采用这种现代的且以 JavaScript 为中心的 API 有许多的优势,包括默认支持多进程浏览器以及降低了来自不良插件和恶意软件所带来的风险。

WebExtensions 运行起来与其他的 Firefox 插件相似,它将先由 Mozilla 进行认证,然后通过 addons.mozilla.org (AMO) 或者开发者的网页发布出去。使用该 API,扩展开发者只需做少许修改以适配每个平台,并进行重打包,就能获得运行在 Firefox 和 Chrome 上的同样功能的扩展程序。

此次新变化还包括,要求插件在部署安装之前必须通过 Mozilla 的审核和认证。早在四月份的时候,Mozilla 的安全负责人 Daniel Veditz 发表了一篇文章,扩展程序需要签名认证的理由,回应了许多来自开发社区的反馈意见,此前Mozilla 的声明在开发社区中引发了大量的讨论。Veditz 提到,成千上万的用户的互联网浏览器体验受到了来自“那些用户并没有选择的第三方插件”的影响,并且“获利的是第三方,不是用户”。

Veditz 还说,那些最不受欢迎的插件“在一定程度上都是与广告相关的”,这些插件会“破坏浏览器的安全基础”且违反了“ Mozilla 的基本准则:保护个人在网络上的安全与隐私是一项原则立场,不容放弃。”

尽管在 Firefox 42 之前,签名认证将不会强制执行,但 Firefox 40 的用户现在已经能够查看安装的扩展程序是否经过了验证。

开发社区对 Mozilla 的声明反应不一。在 Needham 文章的评论区,用户 DMcCunney 说,他们对声明怀有“深切的复杂情感”,留言里说

我能理解 Mozilla 出于安全担忧提出了签名认证要求,但安全问题究竟有多严重?现在有多少经证实的用户报告他们受到了恶意扩展程序的侵袭?我去查了,但并未看到有这样的情况,当然也可能是我没找对地方吧。难道这个解决方案是针对一个实际上并不存在的问题而设置的吗?如果有证据能表明这确实是一个问题,请给出线索指示。

我现在最大的担忧是,迟早,我将不能运行未认证过的扩展程序。

在 Reddit 上展开的关于开发Firefox 插件的未来的讨论中,用户 iamncla 表示对声明感到很开心,“我有相当多的Chrome 扩展程序,它们都有巨大的用户基数(300K+ 用户),但却没法把它们也添加到Firefox 上,因为Firefox 和Chrome 用的扩展程序的API 不一样。新的变化对想拥有一份Firefox 版本的插件的开发者或者用户来说,简直是太棒了。”

其他人的留言就没有这么委婉了。插件 downthemall 的开发者 Nils Maier ,在博文后留言评论道,

我在考虑暂时放弃插件开发,主要原因是,围墙花园式的签名认证方法又来了,这种做法是我过去一直强烈反对的,并且现在仍然强烈反对它……

但对基于 XUL 的以 XPCOM 访问的插件感到“不以为然”可真是让人忍无可忍了。如果真这样了,我肯定会撤走。因为接下来我根本就不能开发大部分我的插件,这些插件不适配或者不能适配“WebExtensions”API。基于 XUL 的插件所拥有的灵活性本是 Firefox 插件生态圈的一大卖点,因此它也是最后剩下的能表明 Firefox 自身尚未完全偏执化的卖点之一

Needham 宽慰那些对新变化感到担忧的开发者们,说 Mozilla 重申了它对插件开发社区的“承诺”,将继续与开发者们一道“在插件移植、新 API 的设计以及创造出让 Firefox 变得更棒的创新性的新插件上”保持协作。

Needham 还谈到,在接下来的几周到几个月时间里,Mozilla 将持续放出额外的资源,用于更深入地阐述这些新的变化,同时也将通过 Mozilla 开发网, IRC (in #extdev) 和扩展程序开发组提供支持。

查看英文原文: Mixed Feelings Greet Mozilla’s Add-ons Overhaul

2015-08-30 19:024213
用户头像

发布了 30 篇内容, 共 94907 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

以 Kubernetes 的方式来安装运行极狐GitLab Runner

极狐GitLab

Kubernetes runner 极狐GitLab

io_uring vs epoll ,谁在网络编程领域更胜一筹?

OpenAnolis小助手

网络编程

Android技术分享| 【自习室】自定义View代替通知动画(完)

anyRTC开发者

android 音视频 WebRTC 视频通话 自定义view

尚硅谷微信支付实战教程发布!

@零度

微信支付

结构化思维 - 感悟

搬砖的周狮傅

感悟 结构化思维

iOS开发:dSYM文件分析

三掌柜

28天写作 28 12月日更 12月

通过淘宝数据学习爬虫,python scrapy requests与response对象

梦想橡皮擦

12月日更

0 基础实现简单的Kotlin ListView

阿策小和尚

28天写作 Android 小菜鸟 12月日更

面试官:StringBuilder与TextWriter有什么区别

喵叔

28天写作 12月日更

从0开始学VUE - 踩坑记录

恒生LIGHT云社区

JavaScript Vue 前端

实用机器学习笔记十五:卷积神经网络

打工人!

深度学习 算法 学习笔记 卷积神经网络 12月日更

高性能云网关,打通云内外业务互通的任督二脉

华为云开发者联盟

网关 云平台 华为云Stack 云网关 L2BR/L3G

Go 语言快速入门指南:第六篇 与数据为舞之映射

宇宙之一粟

哈希表 字典 映射 签约计划第二季 12月日更

让数据大白于天下:GCC插件实现代码分析和安全审计

华为云开发者联盟

数据结构 安全审计 GCC 代码分析 安全分析

每一天

Nydia

[Pulsar] Acknowledgement原理

Zike Yang

Apache Pulsar 12月日更

架构实战营第二周作业

Jude

「架构实战营」

面向WEB开发的Docker(三):安装Docker

devpoint

Docker 12月日更

聊天与学习

将军-技术演讲力教练

常见序列化算法学习笔记二

风翱

序列化 12月日更

Prometheus Exporter (二十八)RabbitMQ Exporter

耳东@Erdong

RabbitMQ Prometheus 28天写作 exporter 12月日更

React进阶(六):组件生命周期

No Silver Bullet

React 生命周期管理 12月日更

【LeetCode】把二叉搜索树转换为累加树Java题解

Albert

算法 LeetCode 12月日更

带你了解几种二进制代码相似度比较技术

华为云开发者联盟

二进制 源代码 二进制代码 二进制代码比较 安全审计

一文带你从零认识什么是XLA

华为云开发者联盟

深度学习 tensorflow PyTorch 深度学习编译器 XLA

Java并发编程实战系列(15)-原子遍历与非阻塞同步机制

JavaEdge

12月日更

常用邮箱申请渠道【小程序专题2】

坚果

小程序 28天写作 12月日更 邮箱

一本用户体验时代的产品生存指南!

博文视点Broadview

给弟弟的信第14封|人到年纪,自己就是屋檐

大菠萝

28天写作

架构实战营模块二学习总结

Evan

Linux学习教程从入门到精通:条件判断和流程控制语句If

侠盗安全

Linux 运维 运维工程师 云计算架构师

让人五味杂陈的Mozilla插件机制变化_JavaScript_James Chesters_InfoQ精选文章