3

FirebaseとAndroidプログラミングが初めてのため、Firebaseカスタム認証に関するいくつかの質問があります。AndroidアプリのリクエストFirebaseのカスタム認証

私は、自動認証のための最も簡単な解決策が必要なソーシャルレポートのAndroidアプリケーションを構築しています。これは、ソーシャルレポートアプリであるため、ユーザーはあらゆる種類のデータを入力して登録プロセスに煩わされるべきではありません。だから私は電子メール/ユーザー名/ etcの代わりにユーザーの識別子としてAndroidのuuidを使用することに決めました。私は緩やかにユーザーの認証と登録を実装します。それは登録/認証(パスワードを必要としない)のためにのみ、Androidデバイスuuidが必要です。しかし、私はfirebaseのセキュリティルールで十分にユーザーデータを保護していると思います。

私は正常に自動化された認証/登録サーバーをGo言語で作成し、Firebase自体のデータを作成して保存しました。現在のワークフローは次のとおりです。

  1. Androidクライアントから自動的に認証サーバーに要求が送信されます。リクエストデータには、Androidのuuidと他のいくつかのデータが含まれています。私はonCreateアクティビティに入れるつもりです。したがって、ユーザーがアプリケーションを開くたびに、トークンを要求します。
  2. 認証サーバーは、その特定のuuidがFirebaseに格納されているかどうかをチェックします。そうであれば、JWTを生成します。そうでない場合、私のサーバーはFirebaseに新しいユーザーデータエントリを自動的に作成し、新しいJWTを送り返します。
  3. いつかクライアントアプリケーション内でJWTを保存し、それを使用してfirebaseでデータトランザクションを実行します。

私はAndroid用のFirebaseライブラリを学ぶことができました。とても素晴らしく、とても簡単です。私はAndroidのhttpリクエストライブラリ(2つは改造とボレー)をたくさん見つけました。それでも、Androidクライアントからの認証リクエストを送信する最善の方法はまだ不明です。

私が上記で指定した要件とワークフローに基づいて、クライアントアプリケーションでカスタム認証要求を送信するのが好ましい/最も簡単な方法は何ですか?コードを単純化するためにhttpリクエストライブラリを使用する必要がありますか?サンプル/コードスニペットは非常に役に立ちます。 JWTをクライアントアプリケーションに保存して使用する最善の方法は何ですか?現在のワークフローは十分ですか?評価は非常に高く評価されています。


補足として、これは私の学校の最終プロジェクトであり、運用アプリケーションではありません。だから私は、ユーザーが複数の電話を持っているかどうか、前の所有者と同じuuidを持っているはずの2番目の電話を買っているかどうかなど、丁寧なケースは気にしない。また、私の奇妙な文法/ネイティブスピーカーではありません。

+0

他の多くのライブラリと同様に、どちらのライブラリでも動作します。それはオフィシャルテッドの答えにつながるので、サンクオーバーフローに関する話題は推奨されていません。あなたが好きなものを選んで使ってください。問題が発生した場合は、その問題に戻ってください。 –

答えて

2

Androidで最も簡単な方法は、Firebase認証オブジェクト(FirebaseAuth)でsignInWithCustomToken()を使用することです。 https://firebase.google.com/docs/auth/android/custom-auth

プロジェクトで頑張ってください:ここで

は、サンプルの実装コードを含むドキュメント内の参照です。

関連する問題