Firebase Summit で発表されたすべての情報をご覧ください。Firebase を使用してアプリ開発を加速し、自信を持ってアプリを実行する方法を紹介しています。詳細

Firebase 認証

ほとんどのアプリは、ユーザーの ID を知る必要があります。ユーザーの ID を知ることで、アプリはユーザー データをクラウドに安全に保存し、ユーザーのすべてのデバイスで同じパーソナライズされたエクスペリエンスを提供できます。

Firebase Authentication は、アプリに対してユーザーを認証するためのバックエンド サービス、使いやすい SDK、既製の UI ライブラリを提供します。パスワード、電話番号、Google、Facebook、Twitter などの一般的なフェデレーション ID プロバイダーを使用した認証をサポートしています。

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

Firebase Authentication with Identity Platformにアップグレードすると、多要素認証、ブロック機能、ユーザー アクティビティと監査ログ、SAML と一般的な OpenID Connect のサポート、マルチテナンシー、エンタープライズ レベルのサポートなどの追加機能のロックが解除されます。

始める方法を学ぶ

主な機能

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

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

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

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

FirebaseUI Auth コンポーネントは、モバイル デバイスとウェブサイトでの認証のベスト プラクティスを実装しており、アプリのサインインとサインアップのコンバージョンを最大化できます。また、アカウントの回復やアカウントのリンクなど、セキュリティに敏感でエラーが発生しやすいエッジケースも正しく処理します.

FirebaseUI は、アプリの他のビジュアル スタイルに合わせて簡単にカスタマイズできます。また、オープン ソースであるため、必要なユーザー エクスペリエンスを実現する上で制約を受けることはありません。

iOS Androidウェブ

Firebase SDK 認証
メールとパスワードによる認証

メールアドレスとパスワードでユーザーを認証します。 Firebase Authentication SDK は、メール アドレスとパスワードを使用してサインインするユーザーを作成および管理する方法を提供します。Firebase Authentication は、パスワード リセット メールの送信も処理します。

iOS AndroidウェブC++ Unity

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

フェデレーション ID プロバイダーと統合してユーザーを認証します。 Firebase Authentication SDK は、ユーザーが Google、Facebook、Twitter、および GitHub アカウントでサインインできるようにするメソッドを提供します。

グーグルiOS AndroidウェブC++ Unity
Apple でサインインiOS AndroidウェブC++ Unity
フェイスブックiOS AndroidウェブC++ Unity
ツイッターiOS AndroidウェブC++ Unity
GitHub iOS AndroidウェブC++ Unity
電話番号認証

SMS メッセージを電話に送信してユーザーを認証します。

iOS AndroidウェブC++ Unity

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

アプリの既存のサインイン システムを Firebase Authentication SDK に接続し、Firebase Realtime Database やその他の Firebase サービスにアクセスします。

iOS AndroidウェブC++ Unity

匿名認証

一時的な匿名アカウントを作成して、ユーザーが最初にサインインする必要なく、認証を必要とする機能を使用します。ユーザーが後でサインアップすることを選択した場合、匿名アカウントを通常のアカウントにアップグレードできるため、ユーザーは中断したところから続行できます。

iOS AndroidウェブC++ Unity

ID プラットフォームを使用した Firebase Authentication

Firebase Authentication with Identity Platform は、Firebase Authentication にいくつかの新機能を追加するオプションのアップグレードです。

このアップグレードでは、移行は必要ありません。既存のクライアント SDK と管理者 SDK コードは引き続き以前と同様に機能し、強化されたログ、エンタープライズ レベルのサポート、SLA などの機能にすぐにアクセスできます。コードを追加すると、多要素認証、ブロック機能、SAML および OpenID Connect プロバイダーのサポートを追加できます。

Identity Platform を使用した Firebase Authentication は、ベース プロダクトとは異なる料金体系になっています。アップグレードすると、無料 (Spark) プラン プロジェクトは 1 日のアクティブ ユーザー数が 3,000 に制限され、従量制 (Blaze) プラン プロジェクトは、50,000 の月間アクティブ ユーザーの無料利用枠を超える使用に対して課金されます。アップグレードする前に、課金への影響を理解しておいてください。

新機能、価格、制限については、以下をご覧ください。

特徴

多要素認証

SMS による多要素認証は、アプリに 2 層目のセキュリティを追加することで、ユーザーのデータを保護します。

AppleAndroid 、およびWebアプリに MFA を追加する方法を学びます。

ブロッキング機能

ブロック関数を使用すると、ユーザーがアプリに登録またはサインインした結果を変更するカスタム コードを実行できます。

ブロッキング関数を使用して Firebase Authentication を拡張する方法を学びます。

SAML および OpenID Connect プロバイダー

Firebase でネイティブにサポートされていない SAML (ウェブのみ) と OpenID Connect プロバイダーを使用したサインインをサポートします。

SAML サインインを Web アプリに追加する方法と、OpenID Connect サインインをAppleAndroid 、およびWebアプリに追加する方法を学びます。

ユーザー アクティビティと監査ログ

管理アクセスとエンドユーザーのアクティビティを監視してログに記録します。

プロジェクトをアップグレードすると、Cloud Logging で管理アクティビティ監査ログが自動的に有効になります。 Firebase コンソールの[認証設定]ページでユーザー アクティビティ ログを有効にすることもできます。

ログを表示して分析する方法については、 Cloud Logging のドキュメントをご覧ください。

マルチテナンシー

テナントを使用すると、1 つのプロジェクト内にユーザーと構成の複数の固有のサイロを作成できます。

Cloud Identity Platform ドキュメントのマルチテナンシーの概要を参照してください。

エンタープライズ サポートと SLA

アップグレードされたプロジェクトは、 Identity Platform サービス レベル アグリーメント (SLA)に従って認証サービスのアップタイムが保証され、エンタープライズ レベルのサポートにアクセスできます。

匿名ユーザーの自動クリーンアップ

30 日以上経過した匿名アカウントを自動的に削除するオプションが表示されます。匿名アカウントも、請求と使用量の割り当てにカウントされなくなります。

使用制限

アップグレードすると、Identity Platform を使用した Firebase Authentication で、Firebase Authentication の使用に新しい制限が導入されます。

無料(スパーク)

無料 (Spark) プランのプロジェクトには、ほとんどのサインイン プロバイダーに対して、1 日のアクティブ ユーザー (DAU) が 3,000 という新しい制限があります。 1 日あたりのアクティブな使用状況は、24 時間にサインインしたユニーク ユーザー数に基づいて計算されます。

プロバイダ新しい制限古い制限
メール、ソーシャル、匿名、カスタム3,000 DAU無制限
SAML、OpenID コネクト2 DAUなし

Pay as you go (ブレイズ)

Blaze プランのプロジェクトの価格は、月間アクティブ ユーザー (MAU) に基づいており、50,000 ユーザーの無料レベルが含まれています。アクティブ ユーザーとは、請求期間内にアカウントを使用するユーザーです。

プロバイダー無料層無料レベルを超える MAU あたりのコスト ($)
メール、ソーシャル、匿名、カスタム0 ~ 49,999 MAU MAUあたり0.0025~0.0055
SAML、OpenID コネクト0 ~ 49 MAU MAUあたり0.015

プロジェクトをアップグレードする

プロジェクトを Firebase Authentication with Identity Platform にアップグレードするには、Firebase コンソールの[認証設定]ページを開きます。

それはどのように機能しますか?

リンクはプラットフォームにとって正しいことをします

ユーザーをアプリにサインインさせるには、まずユーザーから認証資格情報を取得します。これらの資格情報は、ユーザーの電子メール アドレスとパスワード、またはフェデレーション ID プロバイダーからの OAuth トークンにすることができます。次に、これらの資格情報を Firebase Authentication SDK に渡します。次に、バックエンド サービスがそれらの資格情報を確認し、クライアントに応答を返します。

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

実装パス

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

次は何ですか

Firebase プロジェクトのユーザーの詳細を確認してから、サポートするサインイン プロバイダの統合ガイドを参照してください。

iOS Android Web C++ Unity管理者

どこから始めればよいかわからない場合

始める方法を学ぶ