開発者がクライアント側のコードに集中できるように、Firebaseはデータベースバックエンドを提供します。
だから誰かが私のファイアベースuri(たとえば、https://firebaseinstance.firebaseio.com
)を取得したら、それを開発しますローカル。
次に、Firebaseインスタンスから別のアプリを作成し、サインアップして認証し、Firebaseアプリのすべてのデータを読み取ることができますか?
この議論についてお二人に感謝します。ただし、詳細を追加したかった。
@フランク・ファン・パフェレン、
フィッシング攻撃について言及しました。実際にそれを保護する方法があります。
GoogleAPIs API Managerコンソールにログインする場合、アプリがリクエストを受け入れるHTTPリファラーをロックダウンするオプションがあります。
これにより、ホワイトリストに登録されたドメインのみがアプリを使用できるようになります。
これは、firebaseの起動チェックリストにも記載されています。 https://firebase.google.com/support/guides/launch-checklist
おそらく、Firebaseのドキュメントでは、これをより見やすくしたり、デフォルトでドメインを自動的にロックダウンしたり、ユーザーにアクセスを許可したりする必要がありますか?
繰り返しますが、どうもありがとう!
誰かがあなたのURLを知っているという事実は、セキュリティ上のリスクではありません。
例:私の銀行がbankofamerica.comでWebサイトをホストしており、そこでHTTPプロトコルを使用していると言っても問題ありません。私がそのサイトにアクセスするために使用する資格情報も知っていない限り、URLを知っていても役に立たない。
データを保護するには、データベースを次の方法で保護する必要があります。
これはすべて Firebaseのセキュリティとルールに関するドキュメント で説明されていますが、これを強くお勧めします。
これらのセキュリティルールが適切に設定されている場合、他の誰かのアプリがデータベース内のデータにアクセスできる唯一の方法は、アプリケーションの機能をコピーし、ユーザーにtheirアプリの代わりに、データベースにサインイン/読み書きします;本質的にフィッシング攻撃。その場合、データベースにセキュリティの問題はありませんが、おそらくいくつかの当局が関与する時間です。
ドメイン名が適用されないモバイルアプリの認証ホワイトリストに関して、Firebaseは
1)SHA1 fingerprint
forAndroidアプリおよび
2)App Store ID and Bundle ID and Team ID (if necessary)
for youriOSアプリ
firebaseコンソールで設定する必要があります。
この保護により、検証は誰かが有効なAPIキー、認証ドメインなどを持っているかどうかだけでなく、承認済みアプリとdomain name/HTTP referrer in case
ofWeb。
つまり、これらのAPIキーと他の接続パラメーターが他のユーザーに公開されているかどうかを心配する必要はありません。
詳細については、 https://firebase.google.com/support/guides/launch-checklist