Auth interface

Firebase Auth サービスを表すインターフェース。

Firebase Auth サービスの使用方法の詳細については、Firebase Authentication をご覧ください。

署名:

export interface Auth 

プロパティ

プロパティ タイプ 説明
アプリ FirebaseApp Auth サービス インスタンスに関連付けられている FirebaseApp
config 構成 このインスタンスの初期化に使用される構成
currentUser ユーザー | null 現在ログインしているユーザー(または null)。
emulatorConfig EmulatorConfig | null 現在のエミュレータ構成(または null)。
languageCode 文字列 | null Auth インスタンスの言語コード。
name string Auth サービス インスタンスに関連付けられているアプリの名前。
設定 AuthSettings Auth インスタンスの設定。
tenantId 文字列 | null Auth インスタンスのテナント ID。

Methods

メソッド 説明
authStateReady() は、最初の認証状態が解決されるとすぐに解決される Promise を返します。Promise が解決されると、現在のユーザーは有効なユーザーか、ユーザーがログアウトした場合は null になります。
beforeAuthStateChanged(callback, onAbort) 認証状態の変更によって新規ユーザーが設定される前に実行されるブロック コールバックを追加しました。
onAuthStateChanged(nextOrObserver, error, completed) ユーザーのログイン状態の変化を通知するオブザーバーを追加します。
onIdTokenChanged(nextOrObserver, error, completed) ログインしたユーザーの ID トークンに対する変更のオブザーバーを追加します。
setPersistence(persistence) Auth インスタンスの永続性のタイプを変更します。
signOut() 現在のユーザーをログアウトします。これによって、ユーザーの ID トークンが自動的に取り消されることはありません。
updateCurrentUser(user) 指定されたユーザーを Auth インスタンスで Auth.currentUser として非同期的に設定します。
useDeviceLanguage() 現在の言語をデバイスやブラウザのデフォルトの設定に設定します。

Auth.app

Auth サービス インスタンスに関連付けられている FirebaseApp

署名:

readonly app: FirebaseApp;

Auth.config

このインスタンスの初期化に使用される構成

署名:

readonly config: Config;

Auth.currentUser

現在ログインしているユーザー(または null)。

署名:

readonly currentUser: User | null;

Auth.emulatorConfig

現在のエミュレータ構成(または null)。

署名:

readonly emulatorConfig: EmulatorConfig | null;

Auth.languageCode

Auth インスタンスの言語コード。

これは読み取り/書き込み可能なプロパティです。null に設定すると、Firebase コンソールのデフォルトの言語設定が適用されます。言語コードは、メール アクション テンプレート(パスワードのリセット、メール確認、メールアドレス変更取り消し)、電話認証用の SMS テンプレート、reCAPTCHA 検証ツール、OAuth ポップアップ/リダイレクト オペレーションに反映されます(指定されたプロバイダが、指定された言語コードを使用したローカライズをサポートしている場合)。

署名:

languageCode: string | null;

Auth.name

Auth サービス インスタンスに関連付けられているアプリの名前。

署名:

readonly name: string;

Auth.settings

Auth インスタンスの設定。

電話認証のアプリ確認モードなど、構成関連のオプションの編集や読み取りに使用されます。

署名:

readonly settings: AuthSettings;

Auth.tenantId

Auth インスタンスのテナント ID。

これは読み取り/書き込み可能なプロパティです。Auth インスタンスのテナント ID を設定すると、以降のすべてのログイン/登録操作でこのテナント ID が渡され、指定されたテナント プロジェクトにユーザーのログインまたは登録が行われるようになります。null に設定すると、ユーザーは親プロジェクトにログインします。

署名:

tenantId: string | null;

// Set the tenant ID on Auth instance.
auth.tenantId = 'TENANT_PROJECT_ID';

// All future sign-in request now include tenant ID.
const result = await signInWithEmailAndPassword(auth, email, password);
// result.user.tenantId should be 'TENANT_PROJECT_ID'.

Auth.authStateReady()

は、最初の認証状態が解決されるとすぐに解決される Promise を返します。Promise が解決されると、現在のユーザーは有効なユーザーか、ユーザーがログアウトした場合は null になります。

署名:

authStateReady(): Promise<void>;

戻り値:

Promise<void>

Auth.beforeAuthStateChanged()

認証状態の変更によって新規ユーザーが設定される前に実行されるブロック コールバックを追加しました。

署名:

beforeAuthStateChanged(callback: (user: User | null) => void | Promise<void>, onAbort?: () => void): Unsubscribe;

パラメータ

パラメータ タイプ 説明
callback (user: User | null) => void | Promise<void> 新しいユーザー値が設定される前にトリガーされるコールバック。スローされた場合、ユーザーは設定できなくなります。
onAbort () => void 型 後続の beforeAuthStateChanged() コールバックがスローされたときにトリガーされるコールバック。これにより、あらゆる副作用を元に戻すことができます。

戻り値:

登録解除

Auth.onAuthStateChanged()

ユーザーのログイン状態の変化を通知するオブザーバーを追加します。

以前の動作を維持するには、Auth.onIdTokenChanged() をご覧ください。

署名:

onAuthStateChanged(nextOrObserver: NextOrObserver<User | null>, error?: ErrorFn, completed?: CompleteFn): Unsubscribe;

パラメータ

パラメータ タイプ 説明
nextOrObserver NextOrObserver<User | null> 変更時にトリガーされるコールバック。
error ErrorFn 非推奨です。このコールバックはトリガーされません。ログイン/ログアウト時のエラーは、ログイン/ログアウト関数から返される Promise でキャッチできます。
完了 CompleteFn 非推奨です。このコールバックはトリガーされません。

戻り値:

登録解除

Auth.onIdTokenChanged()

ログインしたユーザーの ID トークンに対する変更のオブザーバーを追加します。

これには、ログイン、ログアウト、トークンの更新イベントが含まれます。

署名:

onIdTokenChanged(nextOrObserver: NextOrObserver<User | null>, error?: ErrorFn, completed?: CompleteFn): Unsubscribe;

パラメータ

パラメータ タイプ 説明
nextOrObserver NextOrObserver<User | null> 変更時にトリガーされるコールバック。
error ErrorFn 非推奨です。このコールバックはトリガーされません。ログイン/ログアウト時のエラーは、ログイン/ログアウト関数から返される Promise でキャッチできます。
完了 CompleteFn 非推奨です。このコールバックはトリガーされません。

戻り値:

登録解除

Auth.setPersistence()

Auth インスタンスの永続性のタイプを変更します。

これは、現在保存されている Auth セッションに影響し、今後のログイン リクエスト(リダイレクト リクエストによるログインを含む)にこのタイプの永続性を適用します。

これにより、ログインするユーザーは、セッションを記憶するかどうかを簡単に指定できます。また、他のユーザーによって共有されているアプリケーションやセンシティブ データを持つアプリケーションの認証状態が維持されにくくなります。

このメソッドは、Node.js 環境では機能しません。

署名:

setPersistence(persistence: Persistence): Promise<void>;

パラメータ

パラメータ タイプ 説明
永続化 永続性 使用する Persistence

戻り値:

Promise<void>

auth.setPersistence(browserSessionPersistence);

Auth.signOut()

現在のユーザーをログアウトします。これによって、ユーザーの ID トークンが自動的に取り消されることはありません。

このメソッドは、FirebaseServerApp で作成された Auth インスタンスではサポートされていません。

署名:

signOut(): Promise<void>;

戻り値:

Promise<void>

Auth.updateCurrentUser()

指定されたユーザーを Auth インスタンスで Auth.currentUser として非同期的に設定します。

指定されたユーザーの新しいインスタンスのコピーが作成され、currentUser として設定されます。

これにより、他のログイン メソッドと同様に、Auth.onAuthStateChanged()Auth.onIdTokenChanged() のリスナーがトリガーされます。

更新するユーザーが別の Firebase プロジェクトに属している場合、オペレーションはエラーで失敗します。

署名:

updateCurrentUser(user: User | null): Promise<void>;

パラメータ

パラメータ タイプ 説明
ユーザー ユーザー | null 新しいユーザー

戻り値:

Promise<void>

Auth.useDeviceLanguage()

現在の言語をデバイスやブラウザのデフォルトの設定に設定します。

署名:

useDeviceLanguage(): void;

戻り値:

void