Firebase Authenticationplat_iosplat_androidplat_webplat_cppplat_unity

ほとんどのアプリでは、ユーザー ID を識別する必要があります。アプリでユーザー ID を識別することにより、ユーザーデータをクラウドに安全に保存したり、ユーザーのすべての端末で、カスタマイズされた同じ体験を提供したりできるようになります。

Firebase Authentication には、バックエンド サービス、使いやすい SDK、アプリでのユーザー認証に使用できる UI ライブラリが用意されています。Firebase Authentication では、パスワード、電話番号、一般的なフェデレーション ID プロバイダ(Google、Facebook、Twitter)などを使用した認証を行うことができます。

Firebase Authentication は他の Firebase サービスと緊密に統合されており、OAuth 2.0 や OpenID Connect などの業界標準を使用しているため、カスタム バックエンドと簡単に統合できます。

主な機能

完全なドロップイン認証ソリューションとして FirebaseUI を使用するか、Firebase Authentication SDK を使って 1 つまたは複数のログイン方法を手動でアプリに統合することにより、ユーザーを Firebase アプリにログインさせることができます。

FirebaseUI Auth
ドロップイン認証ソリューション

完全なログイン システムをアプリに追加する推奨される方法。

FirebaseUI に備わっているドロップイン認証ソリューションは、メールアドレスとパスワード、電話番号を使用したり、Google ログインや Facebook ログインなどの一般的なフェデレーション ID プロバイダを使用してユーザーをログインさせるための UI フローを処理します。

FirebaseUI Auth コンポーネントには、モバイル端末やウェブサイトで、アプリのログインや登録のコンバージョンを最大限に高めるために使用できる、おすすめの方法が導入されています。また、アカウント復旧やアカウントのリンクといった、セキュリティの侵害や処理でのミスが起こりやすいエッジケースにも対応しています。

FirebaseUI は、アプリの他の部分の表示スタイルに合うように簡単にカスタマイズできます。また、オープンソースであるため、目的のユーザー エクスペリエンスを自由に実現できます。

FirebaseUI

Firebase SDK Authentication
メールとパスワードに基づく認証

メールアドレスとパスワードを使用してユーザーを認証します。Firebase Authentication SDK には、メールアドレスとパスワードを使用してログインするユーザーを作成して管理するための方法が用意されています。Firebase Authentication では、パスワードの再設定メールを送信することもできます。

iOS Android ウェブ C++ Unity

フェデレーション ID プロバイダとの統合

フェデレーション ID プロバイダと統合することで、ユーザーを認証します。Firebase Authentication SDK には、ユーザーが Google、Facebook、Twitter、GitHub アカウントを使用してログインできるようにする方法が用意されています。

Google iOS Android ウェブ C++ Unity
Facebook iOS Android ウェブ C++ Unity
Twitter iOS Android ウェブ C++ Unity
GitHub iOS Android ウェブ C++ Unity
電話番号認証

スマートフォンに SMS メッセージを送信してユーザーを認証します。

iOS Android ウェブ

カスタム認証システムとの統合

アプリの既存のログイン システムを Firebase Authentication SDK に接続して、Firebase Realtime Database などの Firebase サービスにアクセスできるようにします。

iOS Android ウェブ C++ Unity

匿名認証

一時的な匿名アカウントを作成することで、ユーザーにログインを要求することなく認証できる Firebase 機能を使用します。ユーザーが後から登録することにした場合は、匿名アカウントを通常のアカウントにアップグレードして、ユーザーが前回終了したところから操作を続行できるようにすることができます。

iOS Android ウェブ C++ Unity

仕組み

プラットフォームに適した手順を示すリンク

アプリへのユーザーのログインを行うには、まずユーザーから認証情報を取得します。認証情報には、ユーザーのメールアドレスとパスワードや、フェデレーション ID プロバイダの OAuth トークンなどがあります。次に、取得した認証情報を Firebase Authentication SDK に渡します。Google のバックエンド サービスによって認証情報が検証され、クライアントに応答が返されます。

ログインが成功すると、ユーザーの基本的なプロフィール情報にアクセスしたり、他の Firebase サービスに保存されているデータへのユーザーのアクセスを制御したりできます。提供された認証トークンを使用して、独自のバックエンド サービスでユーザーの ID を検証することもできます。

実装のプロセス

FirebaseUI Auth の使用
ログイン方法を設定する Firebase コンソールで、メールアドレスとパスワードまたは電話番号によるログインや、サポートする任意のフェデレーション ID プロバイダを有効にし、ID プロバイダ側で必要な設定(OAuth リダイレクト URL の設定など)を完了します。
ログイン UI をカスタマイズする FirebaseUI オプションを設定してログイン UI をカスタマイズしたり、GitHub でコードをフォークしてログイン エクスペリエンスをさらにカスタマイズしたりすることができます。
FirebaseUI を使用してログインフローを行う FirebaseUI ライブラリをインポートし、サポートするログイン方法を指定して、FirebaseUI ログインフローを開始します。
Firebase Authentication SDK の使用
ログイン方法を設定する Firebase コンソールで、メールアドレスとパスワードまたは電話番号によるログインや、サポートする任意のフェデレーション ID プロバイダを有効にし、ID プロバイダ側で必要な設定(OAuth リダイレクト URL の設定など)を完了します。
ログイン方法の UI フローを実装する メールアドレスとパスワードによるログインの場合は、ユーザーにメールアドレスとパスワードの入力を求めるフローを実装します。電話番号によるログインの場合は、ユーザーに電話番号と、SMS メッセージで受信したコードの入力を求めるフローを作成します。フェデレーション ログインの場合は、各プロバイダで必要なフローを実装します。
ユーザーの認証情報を Firebase Authentication SDK に渡す ユーザーのメールアドレスとパスワードまたはフェデレーション ID プロバイダから取得した OAuth トークンを Firebase Authentication SDK に渡します。

次のステップ

Firebase プロジェクトのユーザーの詳細と、サポートするログイン プロバイダの統合ガイドを確認します。

iOS Android ウェブ C++ Unity Admin

フィードバックを送信...

ご不明な点がありましたら、Google のサポートページをご覧ください。