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