1. ホーム
  2. git

[解決済み] Google-services.json (from Firebase) をリポジトリに追加する必要がありますか?

2022-07-05 02:20:38

質問

Firebaseにサインアップしたばかりで、新しいプロジェクトを作成しました。Firebase は私のアプリのドメインと SHA1 デバッグ キーを要求しました。これらの詳細を入力すると、アプリ モジュールのルートに追加するための google-services.json ファイルが生成されました。

私の質問は、この .json ファイルを公開 (オープン ソース) リポに追加する必要があるかということです。API キーのように秘密にしておくべきものでしょうか。

どのように解決するのですか?

A google-services.json ファイルは Firebase のドキュメントより :

Firebaseは、単一の設定ファイルを通して、すべてのAPI設定とクレデンシャルを管理します。

このファイルの名前は google-services.json という名前で、Android では GoogleService-Info.plist を iOS で使用します。

に追加するのは理にかなっているように思います。 .gitignore に追加し、公開レポには含めないのが筋のようです。

これについては 問題 26 で、より詳細な google-services.json が含まれています。

のようなプロジェクトは googlesamples/google-services は、それがある の中に .gitignore のように、例えば

としていますが がコメントした によって ステップ・ホー は、この スレッドでは

ライブラリやオープンソースのサンプルでは、JSON ファイルを含めません。なぜなら、ユーザーが独自のコードを挿入して、独自のバックエンドを指定することを意図しているからです。

そのため、GitHub の Firebase レポのほとんどで JSON ファイルを目にすることはありません。

もし "database URL, Android API key, and storage bucket" があなたにとって秘密でないなら、そのファイルをあなたのレポに追加することを検討してみてはいかがでしょうか。

で述べたように、" google-services.json はハッカーから安全ですか? とあるように、そんなに簡単な話ではないようです。

バウリック で尋ねる コメント :

<ブロッククオート

その投稿の中で彼はこう言っています。

<ブロッククオート

JSON ファイルには超機密情報 (サーバーの API キーなど) は含まれていません。

しかし google-services.json というエントリーがあります。 api_key .

というのは、"とは別のapiキーなのでしょうか? server api key "とは違うのでしょうか?

ウィリー・チャルマーズ三世 は、"を指します。 google-services.jsonはハッカーから安全ですか? "と追加しています。

そう、このAPIキーは決して公開されるべきでないサーバーAPIキーではないので、もしあなたの google-services.json が他の人から見えても大丈夫です。

いずれにせよ、Google Cloud コンソールでクライアント API キーがどのように使用されるかを制限する必要があることに変わりはありません。