pco2699’s blog

学んだコード・技術について、保存しておく場所

Vue.js + Firebaseだけでアプリを作るときにクライアント側にFirebase API Keyをおいてしまって問題ないのか?

背景

Vue.js + Firebase だけWebサービス作れるやーん!っていう言説が非常に多い気がする昨今(私も同意です)
ちょっと前までは、「APIキーはサーバサイドにおいておくのがセキュリティの鉄則!」だった気がします。

で、Vue.js + Firebaseでサーバレスでアプリをつくるとなると、APIキーはクライアントに置かれることになります。
そこらへんって本当に大丈夫なの、って疑問に思ってたので調べてみました。

結論

結論から先に述べると、「問題なし」
Realtime Databaseとかの権限設定が適切に設定されている前提ならば 特に問題ない

調べたもの

やはりあるよねStackOverFlow

stackoverflow.com

内容

質問(意訳)

Firebaseのキーって見てる人全員にさらされちゃってるけど、それでいいんかい?  
このキーの目的ってなんなんだよ?公開されちゃってていいんかいー!

回答(意訳)

APIキーはただ、Firebaseプロジェクトの居場所を特定するだけのもので、知ったところで
別にリスクは無いよ。
データベースのURLみたいなもんさ...?

↓のディスカッションも見てみるとよいとのことです。
(Realtime Databaseの権限設定などのディスカッションがされてます。) stackoverflow.com