行ってきました。
Electron アプリの作り方
Electron とはなにか?という非常に基本的な知識や、これから Electron を始める上で有用な資料の紹介など。
特に、Electron の中身の部分(Main プロセスと Renderer プロセスがあって〜という話)は
実際に Electron 開発を経験した後、改めて確認したいなあと思いました。
スライド中で紹介されていた、最初に参考にすると良いサイトはこのあたりです。
- https://github.com/sotayamashita/electron/tree/japanese-localization/docs-translations/jp
- awesome-electron
- Electron の豊富なサンプル集
- Photonkit
- Electronica
- yosuke_furukawa さん作のチュートリアル
- 参考:electron を学べる workshopper である electronica を作ってみました。 - from scratch
npm install -g electronica
でインストール、起動すると以下の画面が表示されてコンソールでチュートリアルを開始することができる
Electron の倒し方
スライド:http://utf-8.jp/public/2016/0307/electron.pdf
セキュリティの観点から、Electron の脆弱性についての非常に詳しい説明。
Electron はXSSの問題が解決できてなくて気をつけないといけない、みたいな話はどっかで聞いたことあったんですが
具体的にどうやったら攻撃できるのかとか、なぜ Electron だとそこまで気にしないといけないのかといった話が理解できてよかったです。
Electron は通常のブラウザ上で動く Web アプリと違ってローカルのファイル操作とかまでできてしまうので、XSS を受けた時の被害も大きい。
また、ファイル名など従来の web アプリでは気にしなくてよかった部分も脆弱性が生まれてしまうポイントになります。
このスライドの「ソース」と「シンク」という言葉、初めて聞きました区別するための言葉があるんですね。
ソース:脆弱性が生まれてしまう場所
シンク:ソースから入り込んだ悪意のある文字列が JS で実行される箇所
と理解しました。
エレクトロン 対 エンタープライズ
@SakamakiM さん
エンタープライズの視点で見た Electron の魅力と、Electron 実際にエンプラで使えるの?を色々検証してみたという話。
テスト自動化しようとしたらどんなツール使うことになるの?それってほんとにコストに見合ってる?というところをこれでもかというぐらいに検証されていて、web のゆるい空気に慣れてしまった自分にはため息しかありませんでした。
感想
Electron の倒しかた、というタイトルから Electron 開発における攻略法みたいな話が聞けるのかなと思ってたんですが
「Electron ってこんなに危険があるんやで〜
相当気合い入れてやらないと簡単に倒されてまうで〜(ゲス顔」
(注:イメージ)
という予想に反したプレゼンを聞くことができ、逆に個人で開発してたらそもそも気にすることもないような観点だなーっと勉強になりました。
帰り際に話してたけど electron はやっぱりまだ v0.36 とかなのでセキュリティを担保するよりも機能を増やして便利にしているフェーズなんだと思うんだよね。すごく安定しているフレームワークっていう訳じゃないし、どうしてもセキュリティは後手に回る。 #html5jplat
— Yosuke FURUKAWA (@yosuke_furukawa) 2016年3月7日
バージョンを意識したことなかったんですが、Electron もまだまだ発展途上なんですね。
とりあえず Electronica から始めてみたいと思います。