発端
Gmailにこんなメールが・・・。
外部公開するアプリではない個人利用アプリなので放置していたが、通知が来るようになってしまった。
ルールの状態
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write
}
}
}
どんな利用方法をしていたか
firebase SDK JavaScript v9.0をNode.jsで利用していた。
nodeモジュールとしては、firebase
を使っており、firebase-admin
ではない。
一般的には、firebase-admin
で良い。
アプリ要件として
- firestoreをクライアント、バックエンドで利用
- すべて個人利用
- firebase周りの処理の書き方を統一したかった(故に
firebase-admin
を選択しづらかった)
firebase
自体はNode.jsも制限はあるが、サポートされている
一般的な解決方法
- read,writeルールを定義
- セキュリティの元、アクセスコントロールが可能になる
- バックエンドは
firebase-admin
に置き換え-
firebase-admin
は認証方式が異なり、firestoreのセキュリティルールのスコープ外。
-
結局
CONFIG情報は外に出していないので、このままでも良いが、ふとした拍子に公開アプリにしてしまうと事故る。
やはり、firestoreにセキュリティルールを設けて、バックエンドは、firebase-admin
に置き換える、が良さそうではある・・・。