JetpackとGreasemonkeyが似ていると言われる件
たしかに両者は似ているところもあるのだが...
正直、僕はそんなに似ていると言いたくない。何か誤解を与えそうで怖いからだ。
いろいろと書く前に言葉の定義
- Jetpack
- 拡張本体
- Greasemonkey
- 拡張本体
- JetpackScript
- Jetpackのエンジンで動作するスクリプト
- UserScript(ユーザスクリプト)
- Greasemonkeyのエンジンで動作するスクリプト
似ているところ
JetpackScript, UserScript
- インストール/アンインストールにFirefox自体の再起動が必要ない
- JavaScriptで記述
- 制限を緩和するためのAPIがある
- 値を保持するためのAPI
- クロスサイトなXMLHttpRequest
似てないところ
JetpackScript, UserScript
- 目的
- 実行環境
特に最後のJetpackScriptはChrome特権を使用でき、やりたい放題
というのはセキュリティにも関わる部分。UserScriptと同じように気軽にインストールできてて障壁が低い分、慎重さが必要。
この部分を見落としてUserScriptと同じ感覚で配布/インストールされると、いつか痛い目に遭うじゃないかと不安が募る。
余談
なんでこんな事を書いているかというと、
Jetpack lets you extend your browser using JavaScript, much like Greasemonkey. We are happy to announce support for the platform on userscripts.org!
Introducing Jetpack Support Userscripts.org
なんて事が書かれていて、UserScriptの配布所として有名なuserscripts.orgがJetpackScriptのホスティングを始めてしまったから。
セキュリティ上の不安を d:id:teramako:20090522:p1, d:id:teramako:20090526:p2 でも記述したけど、httpsで接続するとhttpにリダイレクトされ、かつ、コードレビューもなく載せることが出来てしまう userscripts.org でホスティングされるのはとても不安。インストールしようとすると出される警告画面を無視しろと言われているかのようだ。
正直、MozillaはJetpackの公開を早まったんじゃないかと思う。AMOなどでSSL付きの通信かつコードレビューできるインフラが整ってから公開すべきだったんじゃないか。
GoogleChromeに対抗したいのは分かるけど、Mozillaがセキュア性を謳うのであれば、危険性にもう少し気を使うべきだったのではなかろうか。
とりあえず、僕としては今のところ他人のJetpackScriptをインストールすることをお勧めしない。Ubiquityも同様(安全な配布場があるなら別だけど)
*1:JetpackScriptの環境内ではグローバルなところにwindowオブジェクトもdocumentオブジェクトも無い
*2:d:id:teramako:20090522:p1, d:id:teramako:20090526:p2 で記述済