https://gcpug-tokyo.connpass.com/event/53787/
#雑なメモですね!
#あじぇんだ
1回のGoogleログインで、モバイルアプリ・自社サーバー・Googleサービス・Firebaseを連携させる by eaglesakura
Container EngineでFirebase Realtime DBをWatchしつつ、ゲームのNPCを動かす by sinmetal
ゼロから始めるCloud Functions for Firebase by k2wanko
Firebase Function with Cloud Function by soundTricker318
Firebase by あんどうやすし
#1回のGoogleログインで、モバイルアプリ・自社サーバー・Googleサービス・Firebaseを連携させる
by eaglesakura
https://docs.google.com/presentation/d/1X4lADaZP642Gr97SWJVAH-DTS5bD_DGy24zxpKFdS8w/edit#slide=id.g1d3cc86dbc_3_0
一般的な認証だといろいろ大変だよね
データの整合性,暗号化,ハッシュ化,パス再発行など
認証は他所にまかせよう!
##firebaseの認証の流れ
ぐぐるとかついったにトークンもらう
↓
それをFirebaseに送り,Json Web Tokenもらう
↓
それ使ってFirebase機能にアクセス
##Json Web Token自社さばでもつかえる!
JWTはOSS!
URLにそのまま使える
暗号化はされない(読まれるのが前提と考えないと.正しいかどうかがわかるもの)
jwt.ioに入れると丸見え
GCPプロジェクトIDとかFirebase UIDとか
##検証の実際
JWTの署名・発行者の正しさ,期限切れでないことを確認
kid
公開鍵で署名チェック
iss
aud
GCPプロジェクト名チェックっぽい?
exp
期限確認(突破されてるかもしれないから
firebase の get token は新鮮なものもらえるよ
##Custom Authだと,
セキュリティルールのカスタマイズも Key-Value追加してやる
(claim以下に入力 Firebaseが勝手にトップレベルに持ってくる
UIDを任意なものにもできる mailのハッシュとか
標準認証だとサーバのアクセスコードもらえない…
Firebaseなら事前設定してくれる
ユーザにとって,さばくらどっちも一度に
##GAE/Fire
もろもろやってくれるライブラリ作った
GAEのキャッシュにしか依存してないとおもう
#Container EngineでFirebase Realtime DBをWatchしつつ、ゲームのNPCを動かす
by sinmetal
http://sinmetal-slide.appspot.com/20170426-metal-tile/slide.slide#1
つかったもん | 目的 | 補足 |
---|---|---|
Realtime DB | マップ,プレイヤー,NPCの共有 | 座標もDB細かく書き換えてる →download costがw 100MB/1h/1キャラ |
tmlib(deprecated) | Canvasに描画 | |
GKE | NPCの位置書き換えとか | vm2台で安く 片方死んでもpodもう片方に #17 水色がごるーちん |
TensorFlow | NPCのAI |
MBAだと重いw
##この構成以外にしなかった理由
GAEだと状態保持とか繋ぎっぱ得意じゃない
CloudMLはお値段ががが
#ゼロから始めるCloud Functions for Firebase
by k2wanko
http://qiita.com/koki_cheese/items/458d3822a2850b22b230
https://github.com/k2wanko/gae-gcf-vue-ssr-example
##Functions for firebase
Realtime dbとかイベントをトリガにできる
生のFunctionsより使いやすいよ
GAEでサーバサイドレンダリングできる!
###以前やったSSR
Vue.jsのSSRをGAE/Goで
いろいろつらみ
###今回のSSR
Functions for firebase,GAEにキャッシュ
webpack.comfig.jsはやっぱりきもい
FunctionsのHTTP Triggerはエッジキャッシュに乗るよ!
ここらから眠くて全然聞いてない
#Firebase Function with Cloud Function
by soundTricker318
https://docs.google.com/presentation/d/1yl8bjMyOe2q1KEM0PrOcvDOopaPx49orx_Pedn_qJ-4/edit#slide=id.p
##具体的な使い方
丁寧です.スライド参照←
##Functions for firebaseとは
「何か起きたら何かやる」
クライアントとサーバを完全に分離できうる(リクエストも不要)
リアルタイムには向かない,分単位まではないけど
ほぼ確実に捌いてはくれる,取りこぼしたことなし
#Firebase
by あんどうやすし
ボクスケ web版firebaseでやった
ポチポチつくって3Dプリンタ印刷できる
高さは積めないようにしている(時間がかかる)
山の形にしかできないのでサポート材もいらん
OpenSCAD コーディングで3Dモデリングしてるしゅごい
クラッシュアカデミーさん動画マダー?