Electron と NW.js の違いについて
読了まで:約2分
昨日と
そもそも [Electron や [[NW.js]] とは何か]
基本的には、
の
既存の
Web 技術を 使って Cross-Platform な Desktop App が 作れる
と
なので、
ただし、
- Electron node.js に
WebView + α を 加えた モノ - NW.js WebView に
node.js + α を 加えた モノ
と
Electron と NW.js でのセキュリティの違い
これも
Web での
脆弱性対策 + デスクトップアプリと しての 脆弱性対策
が
- Untrusted な
Remote Contents を 表示する
と
Electron より
NW.js を 選んだ方が 良いのではないか
と
と
- Electron は
Desktop UI と して WebView を 使う
と
Electron の
UI 上で Untrusted な Remote Contents を 表示する
と
- Untrusted な
Remote Contents を 確実に 安全に 表示する 方法
は、
Electron 本体に
手を 入れる 他ない
と
その反面、
Electron は _ node.js_ が主体となって WebView がくっ付いてる
NW.js は _ WebView_ が主体となって node.js Integration がくっ付いている
と
Electron と NW.js のどちらを使えば良いか
基本的には、
- Electron は
Web 技術を 使って Desktop App を 作りたい 時に 使う - NW.js は
Web App に Standalone な Desktop UI を 付けたい 時に 使う
と
ただ、
DOM-based XSS に
代表される Web UI の 脆弱性対策
や
デスクトップアプリと
しての 脆弱性対策
は、
そのアプリを
使った 人や 組織に、 致命的な ダメージが 行って あばばばばば
と
以上
ちなみに、
実装上の
注意点やら 脆弱性を 作り込まない 方法やら
ってのは
と