auth package

Firebase認証

機能

関数説明
関数(アプリ、...)
getAuth(アプリ)提供されたFirebaseAppに関連付けられた Auth インスタンスを返します。インスタンスが存在しない場合は、プラットフォーム固有のデフォルトの依存関係を使用して Auth インスタンスを初期化します。
初期化認証(app、deps)依存関係をきめ細かく制御してAuthインスタンスを初期化します。
機能(ストレージ、...)
getReactNativePersistence(ストレージ) react-nativeまたは@react-native-community/async-storageからインポートされたAsyncStorageをラップする永続オブジェクトを返します。このオブジェクトは、 initializeAuth()の永続依存関係フィールドで使用できます。
関数(認証, ...)
applyActionCode(auth, oobCode)電子メールまたはその他の帯域外メカニズムによってユーザーに送信された確認コードを適用します。
beforeAuthStateChanged(認証、コールバック、onAbort)認証状態の変更によって新しいユーザーが設定される前に実行されるブロッキング コールバックを追加します。
checkActionCode(auth, oobCode)電子メールまたはその他の帯域外メカニズムによってユーザーに送信された確認コードを確認します。
confirmPasswordReset(auth, oobCode, newPassword)確認コードと新しいパスワードを入力して、パスワードのリセット プロセスを完了します。
connectAuthEmulator(認証、URL、オプション)本番環境の Firebase Auth サービスではなく、Firebase Auth エミュレータと通信するようにAuthインスタンスを変更します。
createUserWithEmailAndPassword(認証、電子メール、パスワード)指定された電子メール アドレスとパスワードに関連付けられた新しいユーザー アカウントを作成します。
fetchSignInMethodsForEmail(認証, 電子メール)指定された電子メール アドレスで使用できるサインイン方法のリストを取得します。このメソッドは、[電子メール列挙保護](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) が有効になっている場合、メールで使用できる認証方法の数に関係なく、空のリストを返します。与えられたメール。
getMultiFactorResolver(認証、エラー)多要素フローの完了に適したMultiFactorResolverを提供します。
getRedirectResult(認証、リゾルバー)リダイレクトベースのサインイン フローからUserCredentialを返します。
初期化RecaptchaConfig(認証) reCAPTCHA 設定をAuthインスタンスにロードします。
isSignInWithEmailLink(auth, emailLink)受信リンクが、 signInWithEmailLink()に適した電子メールによるサインイン リンクであるかどうかを確認します。
onAuthStateChanged(認証、nextOrObserver、エラー、完了)ユーザーのサインイン状態の変更に対するオブザーバーを追加します。
onIdTokenChanged(認証、nextOrObserver、エラー、完了)サインインしているユーザーの ID トークンへの変更を監視するオブザーバーを追加します。
revokeAccessToken(認証, トークン)指定されたアクセス トークンを取り消します。現在、Apple OAuth アクセス トークンのみをサポートしています。
sendPasswordResetEmail(認証、電子メール、actionCodeSettings)指定された電子メール アドレスにパスワード リセット電子メールを送信します。指定されたメール アドレスを持つユーザー アカウントがなく、[メール列挙保護](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) が有効になっている場合、このメソッドはエラーをスローしません。 。
sendSignInLinkToEmail(認証、電子メール、actionCodeSettings)指定された電子メールを使用して、サインイン電子メール リンクをユーザーに送信します。
setPersistence(認証, 永続性)現在保存されているAuthセッションの認証インスタンスの永続性のタイプを変更し、リダイレクト要求によるサインインを含む今後のサインイン要求にこのタイプの永続性を適用します。
匿名でサインイン(認証)匿名ユーザーとして非同期にサインインします。
SignInWithCredential(認証, 資格情報)指定された資格情報を使用して非同期的にサインインします。
SignInWithCustomToken(auth, カスタムトークン)カスタム トークンを使用して非同期にサインインします。
SignInWithEmailAndPassword(認証、電子メール、パスワード)電子メールとパスワードを使用して非同期にサインインします。
SignInWithEmailLink(認証、電子メール、電子メールリンク)電子メールとサインイン電子メール リンクを使用して非同期にサインインします。
SignInWithPhoneNumber(認証、電話番号、appVerifier)電話番号を使用して非同期にサインインします。
SignInWithPopup(認証、プロバイダー、リゾルバー)ポップアップベースの OAuth 認証フローを使用して Firebase クライアントを認証します。
SignInWithRedirect(認証、プロバイダー、リゾルバー)フルページ リダイレクト フローを使用して Firebase クライアントを認証します。
サインアウト(認証)現在のユーザーをサインアウトします。
updateCurrentUser(認証, ユーザー)提供されたユーザーをAuthインスタンスのAuth.currentUserとして非同期的に設定します。
useDeviceLanguage(認証)現在の言語をデフォルトのデバイス/ブラウザ設定に設定します。
validatePassword(認証, パスワード)プロジェクトまたはテナントに構成されたパスワード ポリシーに照らしてパスワードを検証します。
verifyPasswordResetCode(認証, コード)電子メールまたはその他の帯域外メカニズムによってユーザーに送信されたパスワード リセット コードを確認します。
関数(リンク, ...)
parseActionCodeURL(リンク)電子メール アクション リンク文字列を解析し、リンクが有効な場合はActionCodeURLを返し、それ以外の場合は null を返します。
関数(ユーザー, ...)
deleteUser(ユーザー)ユーザーを削除してサインアウトします。
getIdToken(ユーザー、forceRefresh) Firebase サービスに対してユーザーを識別するために使用される JSON Web Token (JWT) を返します。
getIdTokenResult(ユーザー、forceRefresh) Firebase サービスに対してユーザーを識別するために使用される逆シリアル化された JSON Web Token (JWT) を返します。
linkWithCredential(ユーザー, 資格情報)ユーザー アカウントを指定された資格情報にリンクします。
linkWithPhoneNumber(ユーザー、電話番号、appVerifier)ユーザー アカウントを指定された電話番号にリンクします。
linkWithPopup(ユーザー、プロバイダー、リゾルバー)ポップアップ ベースの OAuth フローを使用して、認証されたプロバイダーをユーザー アカウントにリンクします。
linkWithRedirect(ユーザー、プロバイダー、リゾルバー)フルページ リダイレクト フローを使用して、 OAuthProviderをユーザー アカウントにリンクします。
マルチファクター(ユーザー)ユーザーに対応するMultiFactorUser
reauthenticateWithCredential(ユーザー, 資格情報)新しい資格情報を使用してユーザーを再認証します。
reauthenticateWithPhoneNumber(ユーザー、電話番号、appVerifier)新しい電話資格情報を使用してユーザーを再認証します。
reauthenticateWithPopup(ユーザー、プロバイダー、リゾルバー)ポップアップ ベースの OAuth フローを使用して、指定されたOAuthProviderで現在のユーザーを再認証します。
reauthenticateWithRedirect(ユーザー、プロバイダー、リゾルバー)フルページ リダイレクト フローを使用して、指定されたOAuthProviderで現在のユーザーを再認証します。
リロード(ユーザー)サインインしている場合は、ユーザー アカウント データをリロードします。
sendEmailVerification(user, actionCodeSettings)ユーザーに確認メールを送信します。
unlink(ユーザー、プロバイダーID)ユーザーアカウントからプロバイダーのリンクを解除します。
updateEmail(user, newEmail)ユーザーの電子メール アドレスを更新します。
updatePassword(ユーザー, 新しいパスワード)ユーザーのパスワードを更新します。
updatePhoneNumber(ユーザー、資格情報)ユーザーの電話番号を更新します。
updateProfile(ユーザー, { 表示名, 写真 URL: 写真 URL })ユーザーのプロフィール データを更新します。
verifyBeforeUpdateEmail(user, newEmail, actionCodeSettings)新しい電子メール アドレスに確認電子メールを送信します。
関数(userCredential, ...)
getAdditionalUserInfo(userCredential)指定された資格情報のプロバイダー固有のAdditionalUserInfoを抽出します。

クラス

クラス説明
アクションコードURLパスワード リセット、電子メール検証、電子メール リンク サインインなどの電子メール アクション URL を解析するユーティリティ クラス。
認証資格情報AuthProviderによって返される資格情報を表すインターフェイス
電子メール認証資格情報ProviderIdEmailAuthProviderによって返される資格情報を表すインターフェイス。パスワード
電子メール認証プロバイダーEmailAuthCredentialを生成するプロバイダー
Facebook認証プロバイダーProviderIdOAuthCredentialを生成するプロバイダー。フェイスブック。
Github認証プロバイダーProviderIdOAuthCredentialを生成するプロバイダー.GITHUB。
Google認証プロバイダーProviderIdOAuthCredentialを生成するプロバイダー。グーグル。
OAuth認証情報OAuthProviderによって返された OAuth 資格情報を表します。
OAuthプロバイダー汎用OAuthCredentialを生成するプロバイダー
電話認証資格情報PhoneAuthProviderによって返された資格情報を表します
電話認証プロバイダーPhoneAuthCredentialを生成するプロバイダー
PhoneMultiFactorGenerator PhoneMultiFactorAssertionを生成するためのプロバイダー
RecaptchaVerifier reCAPTCHAベースのアプリケーション検証ツール。
SAMLAuthプロバイダーSAML 用のAuthProvider
TotpMultiFactorGenerator TotpMultiFactorAssertionを生成するためのプロバイダー
トットプシークレットTotpMultiFactorAssertionを生成するためのプロバイダー時間ベースの OTP を生成するための共有秘密キーとその他のパラメーターを保存します。共有秘密キーを取得し、QR コード URL を生成するメソッドを実装します。
Twitter認証プロバイダーProviderIdOAuthCredentialを生成するプロバイダー。ツイッター。

インターフェース

インターフェース説明
アクションコード情報checkActionCode()からの応答
アクションコード設定オプションの Android および iOS バンドル識別子を使用して、必要な続行/状態 URL を定義するインターフェイス。
追加のユーザー情報フェデレーション ID プロバイダーからの追加のユーザー情報を含む構造。
アプリケーション検証者ドメインの検証と悪用防止のための検証ツール。
認証Firebase Auth サービスを表すインターフェース。
認証エラーAuthエラーのインターフェイス。
認証エラーマップエラー コードとエラー メッセージのマッピング。
認証プロバイダー認証プロバイダーを表すインターフェイス。AuthCredentialの作成を容易にするために使用されます。
認証設定Authインスタンスの設定を表すインターフェイス。
構成Auth構成を表すインターフェイス。
確認結果電話番号によるサインイン、リンク、または再認証呼び出しの結果。
依存関係Authインスタンスの初期化に使用できる依存関係。
エミュレータ構成Firebase Authentication エミュレータの構成。
IdTokenResult User.getIdTokenResult()で取得したIDトークンの結果を表すインターフェース
多要素アサーション2 番目の要素の所有権を主張するための基本クラス。
多要素エラーユーザーが正常にサインインするために 2 番目の要素を指定する必要がある場合にスローされるエラー。
マルチファクター情報第 2 要素エンティティの情報を含む構造体。
MultiFactorResolverユーザーがサインインするために 2 番目の要素を指定する必要がある場合に、 MultiFactorErrorからの回復を容易にするために使用されるクラス。
マルチファクターセッションユーザーに 2 番目の要素を登録したり、登録されたユーザーを 2 番目の要素でサインインするのに使用される多要素セッション オブジェクトを定義するインターフェイス。
MultiFactorUserユーザーに関係する多要素関連のプロパティと操作を定義するインターフェイス
OAuthCredentialオプションOAuthCredentialを初期化するためのオプションを定義します
解析されたトークン解析された ID トークンを表すインターフェイス。
パスワードポリシーパスワードポリシー要件を指定する構造。
パスワード検証ステータスどのパスワード ポリシー要件が満たされたか、違反したか、およびその要件が何であるかを示す構造。
持続性考えられる永続化メカニズムのタイプをカバーするインターフェース。
PhoneMultiFactorAssertion電話機の 2 番目の要素の所有権を主張するためのクラス。 PhoneMultiFactorGenerator.assertion()によって提供されます。
電話MultiFactorEnrollInfoオプション2 番目の要素を登録するために使用されるオプション。
電話多要素情報電話番号の第 2 要素のMultiFactorInfoインターフェイスのサブクラス。この 2 番目の要素のfactorIdFactorIdです。 。電話。
電話多要素サインイン情報オプション2 番目の要素でサインインするために使用されるオプション。
電話単一要素情報オプション単一要素サインインに使用されるオプション。
PopupRedirectResolver SignInWithPopup()SignInWithRedirect()などの DOM 固有の操作を処理するために使用されるリゾルバー
ReactNative非同期ストレージ提供されたAsyncStorageのインターフェイス。
RecaptchaパラメータreCAPTCHA パラメータを表すインターフェイス。受け入れられるパラメータのリストについては、[reCAPTCHA ドキュメント](https://developers.google.com/recaptcha/docs/display#render_param) を参照してください。 sitekeyを除くすべてのパラメータが受け入れられます。Firebase Auth はプロジェクトごとに reCAPTCHA をプロビジョニングし、レンダリング時にサイト キーを構成します。非表示の reCAPTCHA の場合は、 sizeキーをinvisibleに設定します。
TotpMultiFactorAssertion TOTP の 2 番目の要素の所有権を主張するためのクラス。 TotpMultiFactorGenerator.assertionForEnrollment()およびTotpMultiFactorGenerator.assertionForSignIn()によって提供されます。
TotpMultiFactorInfo TOTP の第 2 要素のMultiFactorInfoインターフェイスのサブクラス。この 2 番目の要素のfactorIdFactorIdです。 .TOTP。
ユーザーユーザーアカウント。
ユーザー資格情報ユーザーを含む構造体OperationType 、およびプロバイダー ID。
ユーザー情報ユーザー プロフィール情報。Firebase プロジェクトのアプリにのみ表示されます。
ユーザーメタデータユーザーのメタデータを表すインターフェイス。

変数

変数説明
アクションコード操作可能な電子メール アクション タイプの列挙。
認証エラーコードSDK によってスローされたエラーとの比較を容易にするための、潜在的なAuthエラー コードのマップ。
ブラウザローカル永続性基礎となるストレージにlocalStorageを使用するLOCALタイプのPersistenceの実装。
ブラウザポップアップリダイレクトリゾルバブラウザベースのアプリケーションに適したPopupRedirectResolverの実装。
ブラウザセッション永続性基礎となるストレージにsessionStorageを使用したSESSION永続化の実装。
CordovaPopupRedirectResolver Cordova ベースのアプリケーションに適したPopupRedirectResolverの実装。
デバッグエラーマップほとんどのエラー コードの詳細な説明を含む詳細なエラー マップ。 AuthErrorMapでのディスカッションを参照してください
因子ID多要素認証に使用できる要素の列挙。
IndexedDBLocalPersistence基盤となるストレージにindexedDBを使用するLOCALタイプの永続性の実装。
inMemory永続性タイプ「NONE」の永続性の実装。
操作タイプサポートされている操作タイプの列挙。
prodErrorMapすべての詳細なエラー メッセージが削除された最小限のエラー マップ。 AuthErrorMapでのディスカッションを参照してください
プロバイダーIDサポートされているプロバイダーの列挙。
サインイン方法サポートされているサインイン方法の列挙。

タイプエイリアス

タイプエイリアス説明
カスタムパラメータOAuth カスタム パラメーターのマップ。
NextOrObserverイベント コールバックの型定義。
電話情報オプション電話番号の所有権を確認するために必要な情報。
ユーザープロフィールAdditionalUserInfoで使用されるユーザー プロファイル

関数(アプリ、...)

getAuth(アプリ)

提供されたFirebaseAppに関連付けられた Auth インスタンスを返します。インスタンスが存在しない場合は、プラットフォーム固有のデフォルトの依存関係を使用して Auth インスタンスを初期化します。

サイン:

export declare function getAuth(app?: FirebaseApp): Auth;

パラメーター

パラメータタイプ説明
アプリFirebaseApp Firebase アプリ。

戻り値:

認証

初期化認証(app、deps)

依存関係をきめ細かく制御してAuthインスタンスを初期化します。

この関数を使用すると、 getAuth()よりもAuthインスタンスをより詳細に制御できます。getAuthプラットフォーム固有のデフォルトを使用して依存関係を提供します。一般に、 getAuth認証を初期化する最も簡単な方法であり、ほとんどのユースケースで機能します。どの永続層を使用するかを制御する必要がある場合、またはsignInWithPopupまたはsignInWithRedirectを使用していない場合にバンドルサイズを最小化する必要がある場合は、 initializeAuth使用します。

たとえば、アプリが匿名アカウントのみを使用し、現在のセッションに対してのみアカウントを保存したい場合は、 Authのように認証を初期化します。

const auth = initializeAuth(app, {
  persistence: browserSessionPersistence,
  popupRedirectResolver: undefined,
});

サイン:

export declare function initializeAuth(app: FirebaseApp, deps?: Dependencies): Auth;

パラメーター

パラメータタイプ説明
アプリFirebaseApp
デプス依存関係

戻り値:

認証

機能(ストレージ、...)

getReactNativePersistence(ストレージ)

react-nativeまたは@react-native-community/async-storageからインポートされたAsyncStorageをラップする永続オブジェクトを返しますinitializeAuth()の永続依存関係フィールドで使用できます。

サイン:

export declare function getReactNativePersistence(storage: ReactNativeAsyncStorage): Persistence;

パラメーター

パラメータタイプ説明
ストレージReactNative非同期ストレージ

戻り値:

持続性

関数(認証, ...)

applyActionCode(auth, oobCode)

電子メールまたはその他の帯域外メカニズムによってユーザーに送信された確認コードを適用します。

サイン:

export declare function applyActionCode(auth: Auth, oobCode: string): Promise<void>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
oobコードユーザーに送信される確認コード。

戻り値:

約束<無効>

beforeAuthStateChanged(認証、コールバック、onAbort)

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

サイン:

export declare function beforeAuthStateChanged(auth: Auth, callback: (user: User | null) => void | Promise<void>, onAbort?: () => void): Unsubscribe;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
折り返し電話(ユーザー:ユーザー| null) => void |約束<無効>新しいユーザー値が設定される前にコールバックがトリガーされます。これがスローされると、ユーザーの設定がブロックされます。
on中止() => 無効後のbeforeAuthStateChanged()コールバックがスローされた場合にコールバックがトリガーされ、副作用を元に戻すことができます。

戻り値:

購読を解除する

checkActionCode(auth, oobCode)

電子メールまたはその他の帯域外メカニズムによってユーザーに送信された確認コードを確認します。

サイン:

export declare function checkActionCode(auth: Auth, oobCode: string): Promise<ActionCodeInfo>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
oobコードユーザーに送信される確認コード。

戻り値:

Promise< ActionCodeInfo >

コードに関するメタデータ。

confirmPasswordReset(auth, oobCode, newPassword)

確認コードと新しいパスワードを入力して、パスワードのリセット プロセスを完了します。

サイン:

export declare function confirmPasswordReset(auth: Auth, oobCode: string, newPassword: string): Promise<void>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
oobコードユーザーに送信される確認コード。
新しいパスワード新しいパスワード。

戻り値:

約束<無効>

connectAuthEmulator(認証、URL、オプション)

本番環境の Firebase Auth サービスではなく、Firebase Auth エミュレータと通信するようにAuthインスタンスを変更します。

これは、 initializeAuth()の最初の呼び出しの直後に同期的に呼び出す必要があります。 。エミュレータのトラフィックは暗号化されないため、運用環境の認証情報では使用しないでください。

サイン:

export declare function connectAuthEmulator(auth: Auth, url: string, options?: {
    disableWarnings: boolean;
}): void;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
URLエミュレータが実行されている URL (例: 「http://localhost:9099」)。
オプション{無効化警告: ブール値; }オプション。 options.disableWarningsのデフォルトはfalseです。 DOM に添付された警告バナーを無効にするには、これをtrueに設定します。

戻り値:

空所

connectAuthEmulator(auth, 'http://127.0.0.1:9099', { disableWarnings: true });

createUserWithEmailAndPassword(認証、電子メール、パスワード)

指定された電子メール アドレスとパスワードに関連付けられた新しいユーザー アカウントを作成します。

ユーザー アカウントが正常に作成されると、このユーザーもアプリケーションにサインインします。

アカウントがすでに存在する場合、またはパスワードが無効な場合、ユーザー アカウントの作成は失敗することがあります。

サイン:

export declare function createUserWithEmailAndPassword(auth: Auth, email: string, password: string): Promise<UserCredential>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
Eメールユーザーの電子メール アドレス。
パスワードユーザーが選択したパスワード。

戻り値:

Promise< UserCredential >

fetchSignInMethodsForEmail(認証, 電子メール)

指定された電子メール アドレスで使用できるサインイン方法のリストを取得します。このメソッドは、[電子メール列挙保護](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) が有効になっている場合、メールで使用できる認証方法の数に関係なく、空のリストを返します。与えられたメール。

これは、同じプロバイダーのサインイン方法を区別するのに役立ちます。 SignInMethod という2 つのサインイン方法を持つEmailAuthProvider .EMAIL_PASSWORD とSignInMethod .EMAIL_LINK。

サイン:

export declare function fetchSignInMethodsForEmail(auth: Auth, email: string): Promise<string[]>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
Eメールユーザーの電子メール アドレス。廃止されました。セキュリティのベスト プラクティスとして、この方法から移行することをお勧めします。詳細については、[電子メール列挙保護] に関する Identity Platform のドキュメント (https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) をご覧ください。

戻り値:

約束<文字列[]>

getMultiFactorResolver(認証、エラー)

多要素フローの完了に適したMultiFactorResolverを提供します。

サイン:

export declare function getMultiFactorResolver(auth: Auth, error: MultiFactorError): MultiFactorResolver;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
エラー多要素エラーサインインまたは再認証操作中に発生したMultiFactorError

戻り値:

MultiFactorResolver

getRedirectResult(認証、リゾルバー)

リダイレクトベースのサインイン フローからUserCredentialを返します。

サインインが成功した場合は、サインインしたユーザーを返します。サインインが失敗した場合は、エラーで失敗します。リダイレクト操作が呼び出されなかった場合は、 nullを返します。

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

サイン:

export declare function getRedirectResult(auth: Auth, resolver?: PopupRedirectResolver): Promise<UserCredential | null>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
リゾルバPopupRedirectResolver PopupRedirectResolverのインスタンス、すでにinitializeAuth()に提供されている場合、またはgetAuth()によって提供されている場合はオプションです。

戻り値:

Promise< UserCredential | null>

// Sign in using a redirect.
const provider = new FacebookAuthProvider();
// You can add additional scopes to the provider:
provider.addScope('user_birthday');
// Start a sign in process for an unauthenticated user.
await signInWithRedirect(auth, provider);
// This will trigger a full page redirect away from your app

// After returning from the redirect when your app initializes you can obtain the result
const result = await getRedirectResult(auth);
if (result) {
  // This is the signed-in user
  const user = result.user;
  // This gives you a Facebook Access Token.
  const credential = provider.credentialFromResult(auth, result);
  const token = credential.accessToken;
}
// As this API can be used for sign-in, linking and reauthentication,
// check the operationType to determine what triggered this redirect
// operation.
const operationType = result.operationType;

初期化RecaptchaConfig(認証)

reCAPTCHA 設定をAuthインスタンスにロードします。

これにより、各認証プロバイダーに対して reCAPTCHA 検証フローをトリガーする必要があるかどうかを示す reCAPTCHA 構成が現在の認証セッションにロードされます。

InitializeRecaptchaConfig() が呼び出されない場合、認証フローは常に reCAPTCHA 検証なしで開始されます。プロバイダーが reCAPTCHA 検証を必要とするように構成されている場合、SDK は透過的に reCAPTCHA 構成をロードし、認証フローを再開します。

したがって、このオプションのメソッドを呼び出すことで、今後の認証フローの待ち時間が短縮されます。 reCAPTCHA 構成を早めにロードすると、reCAPTCHA によって収集される信号も強化されます。

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

サイン:

export declare function initializeRecaptchaConfig(auth: Auth): Promise<void>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。

戻り値:

約束<無効>

initializeRecaptchaConfig(auth);

受信リンクが、 signInWithEmailLink()に適した電子メールによるサインイン リンクであるかどうかを確認します。

サイン:

export declare function isSignInWithEmailLink(auth: Auth, emailLink: string): boolean;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
メールリンクユーザーの電子メール アドレスに送信されるリンク。

戻り値:

ブール値

onAuthStateChanged(認証、nextOrObserver、エラー、完了)

ユーザーのサインイン状態の変更に対するオブザーバーを追加します。

古い動作を維持するには、 onIdTokenChanged()を参照してください。

サイン:

export declare function onAuthStateChanged(auth: Auth, nextOrObserver: NextOrObserver<User>, error?: ErrorFn, completed?: CompleteFn): Unsubscribe;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
次またはオブザーバーNextOrObserver <ユーザー>変更時にコールバックがトリガーされます。
エラーエラーFn廃止されました。このコールバックは決してトリガーされません。サインイン/サインアウト時のエラーは、サインイン/サインアウト関数から返される Promise で検出される可能性があります。
完成したコンプリートFn廃止されました。このコールバックは決してトリガーされません。

戻り値:

購読を解除する

onIdTokenChanged(認証、nextOrObserver、エラー、完了)

サインインしているユーザーの ID トークンへの変更を監視するオブザーバーを追加します。

これには、サインイン、サインアウト、トークン更新イベントが含まれます。これは、ID トークンの有効期限が切れても自動的にはトリガーされません。 User.getIdToken()を使用して ID トークンを更新します。

サイン:

export declare function onIdTokenChanged(auth: Auth, nextOrObserver: NextOrObserver<User>, error?: ErrorFn, completed?: CompleteFn): Unsubscribe;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
次またはオブザーバーNextOrObserver <ユーザー>変更時にコールバックがトリガーされます。
エラーエラーFn廃止されました。このコールバックは決してトリガーされません。サインイン/サインアウト時のエラーは、サインイン/サインアウト関数から返される Promise で検出される可能性があります。
完成したコンプリートFn廃止されました。このコールバックは決してトリガーされません。

戻り値:

購読を解除する

revokeAccessToken(認証, トークン)

指定されたアクセス トークンを取り消します。現在、Apple OAuth アクセス トークンのみをサポートしています。

サイン:

export declare function revokeAccessToken(auth: Auth, token: string): Promise<void>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
トークンApple OAuth アクセス トークン。

戻り値:

約束<無効>

sendPasswordResetEmail(認証、電子メール、actionCodeSettings)

指定された電子メール アドレスにパスワード リセット電子メールを送信します。指定されたメール アドレスを持つユーザー アカウントがなく、[メール列挙保護](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) が有効になっている場合、このメソッドはエラーをスローしません。 。

パスワードのリセットを完了するには、ユーザーに送信された電子メールに含まれているコードと、ユーザーが指定した新しいパスワードを使用して、 confirmPasswordReset()を呼び出します。

サイン:

export declare function sendPasswordResetEmail(auth: Auth, email: string, actionCodeSettings?: ActionCodeSettings): Promise<void>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
Eメールユーザーの電子メール アドレス。
アクションコード設定アクションコード設定ActionCodeSettings

戻り値:

約束<無効>

const actionCodeSettings = {
  url: 'https://www.example.com/?email=user@example.com',
  iOS: {
     bundleId: 'com.example.ios'
  },
  android: {
    packageName: 'com.example.android',
    installApp: true,
    minimumVersion: '12'
  },
  handleCodeInApp: true
};
await sendPasswordResetEmail(auth, 'user@example.com', actionCodeSettings);
// Obtain code from user.
await confirmPasswordReset('user@example.com', code);

sendSignInLinkToEmail(認証、電子メール、actionCodeSettings)

指定された電子メールを使用して、サインイン電子メール リンクをユーザーに送信します。

他の帯域外電子メール アクション (パスワード リセットや電子メール検証) とは異なり、サインイン操作は常にアプリ内で完了する必要があります。これは、フローの最後にユーザーがサインインし、その認証状態がアプリ内に保持されることが期待されるためです。

電子メール リンクを使用してサインインを完了するには、ユーザーに送信された電子メールに含まれている電子メール アドレスと電子メール リンクを使用して、 signInWithEmailLink()を呼び出します。

サイン:

export declare function sendSignInLinkToEmail(auth: Auth, email: string, actionCodeSettings: ActionCodeSettings): Promise<void>;

パラメーター

パラメータタイプ説明
認証認証
Eメールユーザーの電子メール アドレス。
アクションコード設定アクションコード設定ActionCodeSettings

戻り値:

約束<無効>

const actionCodeSettings = {
  url: 'https://www.example.com/?email=user@example.com',
  iOS: {
     bundleId: 'com.example.ios'
  },
  android: {
    packageName: 'com.example.android',
    installApp: true,
    minimumVersion: '12'
  },
  handleCodeInApp: true
};
await sendSignInLinkToEmail(auth, 'user@example.com', actionCodeSettings);
// Obtain emailLink from the user.
if(isSignInWithEmailLink(auth, emailLink)) {
  await signInWithEmailLink(auth, 'user@example.com', emailLink);
}

setPersistence(認証, 永続性)

現在保存されているAuthセッションの認証インスタンスの永続性のタイプを変更し、リダイレクト要求によるサインインを含む今後のサインイン要求にこのタイプの永続性を適用します。

これにより、サインインしているユーザーは、自分のセッションを記憶するかどうかを簡単に指定できます。また、他のユーザーが共有しているアプリケーションや機密データを含むアプリケーションのAuth状態を永続化しないことも簡単になります。

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

サイン:

export declare function setPersistence(auth: Auth, persistence: Persistence): Promise<void>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
持続性持続性使用する永続性

戻り値:

約束<無効>

永続化の変更が完了すると解決されるPromise

setPersistence(auth, browserSessionPersistence);

匿名でサインイン(認証)

匿名ユーザーとして非同期にサインインします。

すでに匿名ユーザーがサインインしている場合は、そのユーザーが返されます。それ以外の場合は、新しい匿名ユーザー ID が作成されて返されます。

サイン:

export declare function signInAnonymously(auth: Auth): Promise<UserCredential>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。

戻り値:

Promise< UserCredential >

SignInWithCredential(認証, 資格情報)

指定された資格情報を使用して非同期的にサインインします。

AuthProvider を使用して資格情報を生成できます。

サイン:

export declare function signInWithCredential(auth: Auth, credential: AuthCredential): Promise<UserCredential>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
資格情報認証資格情報認証資格情報。

戻り値:

Promise< UserCredential >

SignInWithCustomToken(auth, カスタムトークン)

カスタム トークンを使用して非同期にサインインします。

カスタム トークンは、Firebase Auth を既存の認証システムと統合するために使用され、 Admin SDKcreateCustomTokenメソッドを使用して認証バックエンドによって生成される必要があります。

トークンが無効であるか、期限切れであるか、Firebase Auth サービスによって受け入れられない場合、エラーが発生して失敗します。

サイン:

export declare function signInWithCustomToken(auth: Auth, customToken: string): Promise<UserCredential>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
カスタムトークンサインインに使用するカスタム トークン。

戻り値:

Promise< UserCredential >

SignInWithEmailAndPassword(認証、電子メール、パスワード)

電子メールとパスワードを使用して非同期にサインインします。

メールアドレスとパスワードが一致しない場合はエラーで失敗します。 [電子メール列挙保護](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) が有効になっている場合、無効な場合、このメソッドは「auth/invalid-credential」で失敗します。メールのパスワード。

サイン:

export declare function signInWithEmailAndPassword(auth: Auth, email: string, password: string): Promise<UserCredential>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
Eメールユーザーの電子メール アドレス。
パスワードユーザーのパスワード。

戻り値:

Promise< UserCredential >

電子メールとサインイン電子メール リンクを使用して非同期的にサインインします。

リンクが渡されない場合、リンクは現在の URL から推測されます。

電子メール アドレスが無効であるか、電子メール リンクの OTP の有効期限が切れている場合、エラーが発生して失敗します。

サイン:

export declare function signInWithEmailLink(auth: Auth, email: string, emailLink?: string): Promise<UserCredential>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
Eメールユーザーの電子メール アドレス。
メールリンクユーザーの電子メール アドレスに送信されるリンク。

戻り値:

Promise< UserCredential >

const actionCodeSettings = {
  url: 'https://www.example.com/?email=user@example.com',
  iOS: {
     bundleId: 'com.example.ios'
  },
  android: {
    packageName: 'com.example.android',
    installApp: true,
    minimumVersion: '12'
  },
  handleCodeInApp: true
};
await sendSignInLinkToEmail(auth, 'user@example.com', actionCodeSettings);
// Obtain emailLink from the user.
if(isSignInWithEmailLink(auth, emailLink)) {
  await signInWithEmailLink(auth, 'user@example.com', emailLink);
}

SignInWithPhoneNumber(認証、電話番号、appVerifier)

電話番号を使用して非同期にサインインします。

このメソッドは、指定された電話番号に SMS 経由でコードを送信し、 confirmResultを返します。 。ユーザーが自分の電話に送信されたコードを指定した後、そのコードを使用してconfirmationResult.confirm()を呼び出して、ユーザーをサインインさせます。

悪用防止のため、このメソッドにはApplicationVerifierも必要です。この SDK には、reCAPTCHA ベースの実装であるRecaptchaVerifier が含まれています。この関数は、 RecaptchaVerifierをサポートしていない他のプラットフォーム (React Native など) でも動作しますが、サードパーティのApplicationVerifier実装を使用する必要があります。

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

サイン:

export declare function signInWithPhoneNumber(auth: Auth, phoneNumber: string, appVerifier: ApplicationVerifier): Promise<ConfirmationResult>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
電話番号E.164 形式のユーザーの電話番号 (例: +16505550101)。
アプリ検証者アプリケーション検証者ApplicationVerifier

戻り値:

約束<確認結果>

// 'recaptcha-container' is the ID of an element in the DOM.
const applicationVerifier = new firebase.auth.RecaptchaVerifier('recaptcha-container');
const confirmationResult = await signInWithPhoneNumber(auth, phoneNumber, applicationVerifier);
// Obtain a verificationCode from the user.
const credential = await confirmationResult.confirm(verificationCode);

SignInWithPopup(認証、プロバイダー、リゾルバー)

ポップアップベースの OAuth 認証フローを使用して Firebase クライアントを認証します。

成功すると、サインインしたユーザーとプロバイダーの資格情報が返されます。サインインが失敗した場合は、エラーに関する追加情報を含むエラー オブジェクトを返します。

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

サイン:

export declare function signInWithPopup(auth: Auth, provider: AuthProvider, resolver?: PopupRedirectResolver): Promise<UserCredential>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
プロバイダー認証プロバイダー認証するプロバイダー。プロバイダーはOAuthProviderである必要がありますEmailAuthProviderなどの非 OAuth プロバイダーはエラーをスローします。
リゾルバPopupRedirectResolver PopupRedirectResolverのインスタンス、すでにinitializeAuth()に提供されている場合、またはgetAuth()によって提供されている場合はオプションです。

戻り値:

Promise< UserCredential >

// Sign in using a popup.
const provider = new FacebookAuthProvider();
const result = await signInWithPopup(auth, provider);

// The signed-in user info.
const user = result.user;
// This gives you a Facebook Access Token.
const credential = provider.credentialFromResult(auth, result);
const token = credential.accessToken;

SignInWithRedirect(認証、プロバイダー、リゾルバー)

フルページ リダイレクト フローを使用して Firebase クライアントを認証します。

この操作の結果とエラーを処理するには、 getRedirectResult()を参照してください。SignInWithRedirect()を使用する場合はベスト プラクティスに従ってください。

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

サイン:

export declare function signInWithRedirect(auth: Auth, provider: AuthProvider, resolver?: PopupRedirectResolver): Promise<never>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
プロバイダー認証プロバイダー認証するプロバイダー。プロバイダーはOAuthProviderである必要がありますEmailAuthProviderなどの非 OAuth プロバイダーはエラーをスローします。
リゾルバPopupRedirectResolver PopupRedirectResolverのインスタンス、すでにinitializeAuth()に指定されている場合、またはgetAuth()によって指定されている場合はオプションです。

戻り値:

約束<決して>しない

// Sign in using a redirect.
const provider = new FacebookAuthProvider();
// You can add additional scopes to the provider:
provider.addScope('user_birthday');
// Start a sign in process for an unauthenticated user.
await signInWithRedirect(auth, provider);
// This will trigger a full page redirect away from your app

// After returning from the redirect when your app initializes you can obtain the result
const result = await getRedirectResult(auth);
if (result) {
  // This is the signed-in user
  const user = result.user;
  // This gives you a Facebook Access Token.
  const credential = provider.credentialFromResult(auth, result);
  const token = credential.accessToken;
}
// As this API can be used for sign-in, linking and reauthentication,
// check the operationType to determine what triggered this redirect
// operation.
const operationType = result.operationType;

サインアウト(認証)

現在のユーザーをサインアウトします。

サイン:

export declare function signOut(auth: Auth): Promise<void>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。

戻り値:

約束<無効>

updateCurrentUser(認証, ユーザー)

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

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

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

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

サイン:

export declare function updateCurrentUser(auth: Auth, user: User | null): Promise<void>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
ユーザーユーザー|ヌル新しいユーザー

戻り値:

約束<無効>

useDeviceLanguage(認証)

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

サイン:

export declare function useDeviceLanguage(auth: Auth): void;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。

戻り値:

空所

validatePassword(認証, パスワード)

プロジェクトまたはテナントに構成されたパスワード ポリシーに照らしてパスワードを検証します。

Authインスタンスにテナント ID が設定されていない場合、このメソッドはプロジェクトに構成されたパスワード ポリシーを使用します。それ以外の場合、この方法ではテナントに構成されたポリシーが使用されます。パスワード ポリシーが設定されていない場合は、すべてのプロジェクトに設定されているデフォルト ポリシーが使用されます。

送信されたパスワードがパスワード ポリシー要件を満たしておらず、このメソッドが以前に呼び出されたことが原因で認証フローが失敗した場合、このメソッドは再度呼び出されたときに利用可能な最新のポリシーを使用します。

サイン:

export declare function validatePassword(auth: Auth, password: string): Promise<PasswordValidationStatus>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
パスワード検証するパスワード。

戻り値:

Promise< PasswordValidationStatus >

validatePassword(auth, 'some-password');

verifyPasswordResetCode(認証, コード)

電子メールまたはその他の帯域外メカニズムによってユーザーに送信されたパスワード リセット コードを確認します。

サイン:

export declare function verifyPasswordResetCode(auth: Auth, code: string): Promise<string>;

パラメーター

パラメータタイプ説明
認証認証認証インスタンス。
コードユーザーに送信される確認コード。

戻り値:

約束<文字列>

ユーザーの電子メール アドレス (有効な場合)。

parseActionCodeURL(リンク)

電子メール アクション リンク文字列を解析し、リンクが有効な場合はActionCodeURLを返し、それ以外の場合は null を返します。

サイン:

export declare function parseActionCodeURL(link: string): ActionCodeURL | null;

パラメーター

パラメータタイプ説明
リンク

戻り値:

アクションコードURL |ヌル

関数(ユーザー, ...)

deleteUser(ユーザー)

ユーザーを削除してサインアウトします。

サイン:

export declare function deleteUser(user: User): Promise<void>;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。

戻り値:

約束<無効>

getIdToken(ユーザー、forceRefresh)

Firebase サービスに対してユーザーを識別するために使用される JSON Web Token (JWT) を返します。

現在のトークンの有効期限が切れていない場合、または今後 5 分以内に期限切れにならない場合は、現在のトークンを返します。それ以外の場合は、トークンが更新され、新しいトークンが返されます。

サイン:

export declare function getIdToken(user: User, forceRefresh?: boolean): Promise<string>;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。
強制リフレッシュブール値トークンの有効期限に関係なく強制的にリフレッシュします。

戻り値:

約束<文字列>

getIdTokenResult(ユーザー、forceRefresh)

Firebase サービスに対してユーザーを識別するために使用される逆シリアル化された JSON Web Token (JWT) を返します。

現在のトークンの有効期限が切れていない場合、または今後 5 分以内に期限切れにならない場合は、現在のトークンを返します。それ以外の場合は、トークンが更新され、新しいトークンが返されます。

サイン:

export declare function getIdTokenResult(user: User, forceRefresh?: boolean): Promise<IdTokenResult>;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。
強制リフレッシュブール値トークンの有効期限に関係なく強制的にリフレッシュします。

戻り値:

Promise< IdTokenResult >

linkWithCredential(ユーザー, 資格情報)

ユーザー アカウントを指定された資格情報にリンクします。

AuthProvider を使用して資格情報を生成できます。

サイン:

export declare function linkWithCredential(user: User, credential: AuthCredential): Promise<UserCredential>;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。
資格情報認証資格情報認証資格情報。

戻り値:

Promise< UserCredential >

linkWithPhoneNumber(ユーザー、電話番号、appVerifier)

ユーザー アカウントを指定された電話番号にリンクします。

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

サイン:

export declare function linkWithPhoneNumber(user: User, phoneNumber: string, appVerifier: ApplicationVerifier): Promise<ConfirmationResult>;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。
電話番号E.164 形式のユーザーの電話番号 (例: +16505550101)。
アプリ検証者アプリケーション検証者ApplicationVerifier

戻り値:

約束<確認結果>

linkWithPopup(ユーザー、プロバイダー、リゾルバー)

ポップアップ ベースの OAuth フローを使用して、認証されたプロバイダーをユーザー アカウントにリンクします。

リンクが成功すると、返される結果にはユーザーとプロバイダーの資格情報が含まれます。

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

サイン:

export declare function linkWithPopup(user: User, provider: AuthProvider, resolver?: PopupRedirectResolver): Promise<UserCredential>;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。
プロバイダー認証プロバイダー認証するプロバイダー。プロバイダーはOAuthProviderである必要がありますEmailAuthProviderなどの非 OAuth プロバイダーはエラーをスローします。
リゾルバPopupRedirectResolver PopupRedirectResolverのインスタンス、すでにinitializeAuth()に提供されている場合、またはgetAuth()によって提供されている場合はオプションです。

戻り値:

Promise< UserCredential >

// Sign in using some other provider.
const result = await signInWithEmailAndPassword(auth, email, password);
// Link using a popup.
const provider = new FacebookAuthProvider();
await linkWithPopup(result.user, provider);

linkWithRedirect(ユーザー、プロバイダー、リゾルバー)

フルページ リダイレクト フローを使用して、 OAuthProviderをユーザー アカウントにリンクします。

この操作の結果とエラーを処理するには、 getRedirectResult()を参照してください。linkWithRedirect()を使用するときはベスト プラクティスに従ってください。

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

サイン:

export declare function linkWithRedirect(user: User, provider: AuthProvider, resolver?: PopupRedirectResolver): Promise<never>;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。
プロバイダー認証プロバイダー認証するプロバイダー。プロバイダーはOAuthProviderである必要がありますEmailAuthProviderなどの非 OAuth プロバイダーはエラーをスローします。
リゾルバPopupRedirectResolver PopupRedirectResolverのインスタンス、すでにinitializeAuth()に指定されている場合、またはgetAuth()によって指定されている場合はオプションです。

戻り値:

約束<ネバー>

// Sign in using some other provider.
const result = await signInWithEmailAndPassword(auth, email, password);
// Link using a redirect.
const provider = new FacebookAuthProvider();
await linkWithRedirect(result.user, provider);
// This will trigger a full page redirect away from your app

// After returning from the redirect when your app initializes you can obtain the result
const result = await getRedirectResult(auth);

マルチファクター(ユーザー)

ユーザーに対応するマルチファクトルザー

これは、ユーザーに関連するすべての多要素プロパティと操作にアクセスするために使用されます。

サイン:

export declare function multiFactor(user: User): MultiFactorUser;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。

戻り値:

Multifactoruser

ReuthenticateWithcreDential(ユーザー、資格情報)

新鮮な資格情報を使用してユーザーを再認証します。

最近のサインイン試行からのトークンが必要なupdatePassword()などの操作の前に使用します。この方法は、 CREDENTIAL_TOO_OLD_LOGIN_AGAINエラーまたはTOKEN_EXPIREDエラーから回復するために使用できます。

サイン:

export declare function reauthenticateWithCredential(user: User, credential: AuthCredential): Promise<UserCredential>;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。
資格情報AuthRedential認証資格情報。

戻り値:

約束< usercredential >

reauthenticate withphoneNumber(ユーザー、電話、鑑定剤)

新鮮な電話資格情報を使用してユーザーを再認証します。

最近のサインイン試行からのトークンが必要なupdatePassword()などの操作の前に使用します。

この方法は、node.js環境では機能しません。

サイン:

export declare function reauthenticateWithPhoneNumber(user: User, phoneNumber: string, appVerifier: ApplicationVerifier): Promise<ConfirmationResult>;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。
電話番号E.164形式のユーザーの電話番号(例えば+16505550101)。
Appverifier ApplicationVerifier ApplicationVerifier

戻り値:

約束< commidationresult >

ReuthenticateWithPopup(ユーザー、プロバイダー、リゾルバー)

ポップアップベースのOAuthフローを使用して、指定されたOAuthProviderで現在のユーザーを再認定します。

再認証が成功した場合、返された結果にはユーザーとプロバイダーの資格情報が含まれます。

この方法は、node.js環境では機能しません。

サイン:

export declare function reauthenticateWithPopup(user: User, provider: AuthProvider, resolver?: PopupRedirectResolver): Promise<UserCredential>;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。
プロバイダーAuthProvider認証するプロバイダー。プロバイダーはOAuthProviderでなければなりませんEmailAuthProviderのような非OAuthプロバイダーはエラーをスローします。
リゾルバpopupredirectresolver PopupredirectResolverのインスタンス、オプションinitializeauth()に既に供給されている場合、またはgetauth()によって提供されている場合

戻り値:

約束< usercredential >

// Sign in using a popup.
const provider = new FacebookAuthProvider();
const result = await signInWithPopup(auth, provider);
// Reauthenticate using a popup.
await reauthenticateWithPopup(result.user, provider);

ReuthenticateWithredirect(ユーザー、プロバイダー、リゾルバー)

フルページのリダイレクトフローを使用して、指定されたOAuthProviderで現在のユーザーを再認定します。

この操作の結果とエラーを処理するには、 getRedirectResult()を参照してくださいReuthenticateWithRedirect()を使用するときは、ベストプラクティスに従ってください

この方法は、node.js環境では機能しません。

サイン:

export declare function reauthenticateWithRedirect(user: User, provider: AuthProvider, resolver?: PopupRedirectResolver): Promise<never>;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。
プロバイダーAuthProvider認証するプロバイダー。プロバイダーはOAuthProviderでなければなりませんEmailAuthProviderのような非OAuthプロバイダーはエラーをスローします。
リゾルバpopupredirectresolver PopupredirectResolverのインスタンス、オプションinitializeauth()に既に供給されている場合、またはgetauth()によって提供されている場合

戻り値:

約束<ネバー>

// Sign in using a redirect.
const provider = new FacebookAuthProvider();
const result = await signInWithRedirect(auth, provider);
// This will trigger a full page redirect away from your app

// After returning from the redirect when your app initializes you can obtain the result
const result = await getRedirectResult(auth);
// Reauthenticate using a redirect.
await reauthenticateWithRedirect(result.user, provider);
// This will again trigger a full page redirect away from your app

// After returning from the redirect when your app initializes you can obtain the result
const result = await getRedirectResult(auth);

リロード(ユーザー)

サインインした場合、ユーザーアカウントデータをリロードします。

サイン:

export declare function reload(user: User): Promise<void>;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。

戻り値:

約束<void>

sendemailverification(user、actioncodesettings)

検証メールをユーザーに送信します。

検証プロセスは、 applyactionCode()を呼び出すことにより完了します

サイン:

export declare function sendEmailVerification(user: User, actionCodeSettings?: ActionCodeSettings | null): Promise<void>;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。
ActionCodesettings ActionCodesettings |ヌルActionCodesettings

戻り値:

約束<void>

const actionCodeSettings = {
  url: 'https://www.example.com/?email=user@example.com',
  iOS: {
     bundleId: 'com.example.ios'
  },
  android: {
    packageName: 'com.example.android',
    installApp: true,
    minimumVersion: '12'
  },
  handleCodeInApp: true
};
await sendEmailVerification(user, actionCodeSettings);
// Obtain code from the user.
await applyActionCode(auth, code);

ユーザーアカウントからプロバイダーをリンクします。

サイン:

export declare function unlink(user: User, providerId: string): Promise<User>;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。
ProviderIdリンクするプロバイダー。

戻り値:

約束<ユーザー>

updateEmail(ユーザー、newEmail)

ユーザーのメールアドレスを更新します。

アカウントのハイジャックから保護するために、メールアドレスの変更を取り消すことができる元のメールアドレス(設定されている場合)にメールが送信されます。

サイン:

export declare function updateEmail(user: User, newEmail: string): Promise<void>;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。
新しいメール新しいメールアドレス。 [auth/operation-olowed]エラーは、[enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection)が有効になったときにスローします。 DepRECATED -BERIFYFOREUPDATEEMAIL()を代わりに使用します。

戻り値:

約束<void>

updatePassWord(ユーザー、newPassword)

ユーザーのパスワードを更新します。

サイン:

export declare function updatePassword(user: User, newPassword: string): Promise<void>;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。
新しいパスワード新しいパスワード。

戻り値:

約束<void>

UpdatePhoneNumber(ユーザー、資格情報)

ユーザーの電話番号を更新します。

この方法は、node.js環境では機能しません。

サイン:

export declare function updatePhoneNumber(user: User, credential: PhoneAuthCredential): Promise<void>;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。
資格情報フォンアースクレデンシャル新しい電話番号を認証する資格情報。

戻り値:

約束<void>

// 'recaptcha-container' is the ID of an element in the DOM.
const applicationVerifier = new RecaptchaVerifier('recaptcha-container');
const provider = new PhoneAuthProvider(auth);
const verificationId = await provider.verifyPhoneNumber('+16505550101', applicationVerifier);
// Obtain the verificationCode from the user.
const phoneCredential = PhoneAuthProvider.credential(verificationId, verificationCode);
await updatePhoneNumber(user, phoneCredential);

updateProfile(user、{displayname、photourl:photourl})

ユーザーのプロフィールデータを更新します。

サイン:

export declare function updateProfile(user: User, { displayName, photoURL: photoUrl }: {
    displayName?: string | null;
    photoURL?: string | null;
}): Promise<void>;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。
{displayname、photourl:photourl} {displayname?:string |ヌル; Photourl?:string |ヌル; }

戻り値:

約束<void>

foreforepdateemail(user、newemail、actioncodesettings)を確認する

新しいメールアドレスに確認メールを送信します。

ユーザーのメールは、検証された後に新しいメールに更新されます。

カスタムメールアクションハンドラーがある場合は、 ApplyActionCode()を呼び出すことで確認プロセスを完了できます。

サイン:

export declare function verifyBeforeUpdateEmail(user: User, newEmail: string, actionCodeSettings?: ActionCodeSettings | null): Promise<void>;

パラメーター

パラメータタイプ説明
ユーザーユーザーユーザー。
新しいメール更新前に検証される新しいメールアドレス。
ActionCodesettings ActionCodesettings |ヌルActionCodesettings

戻り値:

約束<void>

const actionCodeSettings = {
  url: 'https://www.example.com/?email=user@example.com',
  iOS: {
     bundleId: 'com.example.ios'
  },
  android: {
    packageName: 'com.example.android',
    installApp: true,
    minimumVersion: '12'
  },
  handleCodeInApp: true
};
await verifyBeforeUpdateEmail(user, 'newemail@example.com', actionCodeSettings);
// Obtain code from the user.
await applyActionCode(auth, code);

function(usercredential、...)

getadtionaluserinfo(usercredential)

指定された資格情報のために、プロバイダー固有の追加のaddationUserInfoを抽出します。

サイン:

export declare function getAdditionalUserInfo(userCredential: UserCredential): AdditionalUserInfo | null;

パラメーター

パラメータタイプ説明
userredential userredentialユーザー資格情報。

戻り値:

AdditionalUserInfo |ヌル

ActionCodeoperation

可能な電子メールアクションタイプの列挙。

サイン:

ActionCodeOperation: {
    readonly EMAIL_SIGNIN: "EMAIL_SIGNIN";
    readonly PASSWORD_RESET: "PASSWORD_RESET";
    readonly RECOVER_EMAIL: "RECOVER_EMAIL";
    readonly REVERT_SECOND_FACTOR_ADDITION: "REVERT_SECOND_FACTOR_ADDITION";
    readonly VERIFY_AND_CHANGE_EMAIL: "VERIFY_AND_CHANGE_EMAIL";
    readonly VERIFY_EMAIL: "VERIFY_EMAIL";
}

オートヒアコード

潜在的なAuthエラーコードのマップ。SDKによってスローされたエラーとの比較を容易にします。

マップ内で個々のキーを見渡すことができないため、マップを使用することでバンドルサイズを大幅に増やす可能性があることに注意してください。

サイン:

AUTH_ERROR_CODES_MAP_DO_NOT_USE_INTERNALLY: {
    readonly ADMIN_ONLY_OPERATION: "auth/admin-restricted-operation";
    readonly ARGUMENT_ERROR: "auth/argument-error";
    readonly APP_NOT_AUTHORIZED: "auth/app-not-authorized";
    readonly APP_NOT_INSTALLED: "auth/app-not-installed";
    readonly CAPTCHA_CHECK_FAILED: "auth/captcha-check-failed";
    readonly CODE_EXPIRED: "auth/code-expired";
    readonly CORDOVA_NOT_READY: "auth/cordova-not-ready";
    readonly CORS_UNSUPPORTED: "auth/cors-unsupported";
    readonly CREDENTIAL_ALREADY_IN_USE: "auth/credential-already-in-use";
    readonly CREDENTIAL_MISMATCH: "auth/custom-token-mismatch";
    readonly CREDENTIAL_TOO_OLD_LOGIN_AGAIN: "auth/requires-recent-login";
    readonly DEPENDENT_SDK_INIT_BEFORE_AUTH: "auth/dependent-sdk-initialized-before-auth";
    readonly DYNAMIC_LINK_NOT_ACTIVATED: "auth/dynamic-link-not-activated";
    readonly EMAIL_CHANGE_NEEDS_VERIFICATION: "auth/email-change-needs-verification";
    readonly EMAIL_EXISTS: "auth/email-already-in-use";
    readonly EMULATOR_CONFIG_FAILED: "auth/emulator-config-failed";
    readonly EXPIRED_OOB_CODE: "auth/expired-action-code";
    readonly EXPIRED_POPUP_REQUEST: "auth/cancelled-popup-request";
    readonly INTERNAL_ERROR: "auth/internal-error";
    readonly INVALID_API_KEY: "auth/invalid-api-key";
    readonly INVALID_APP_CREDENTIAL: "auth/invalid-app-credential";
    readonly INVALID_APP_ID: "auth/invalid-app-id";
    readonly INVALID_AUTH: "auth/invalid-user-token";
    readonly INVALID_AUTH_EVENT: "auth/invalid-auth-event";
    readonly INVALID_CERT_HASH: "auth/invalid-cert-hash";
    readonly INVALID_CODE: "auth/invalid-verification-code";
    readonly INVALID_CONTINUE_URI: "auth/invalid-continue-uri";
    readonly INVALID_CORDOVA_CONFIGURATION: "auth/invalid-cordova-configuration";
    readonly INVALID_CUSTOM_TOKEN: "auth/invalid-custom-token";
    readonly INVALID_DYNAMIC_LINK_DOMAIN: "auth/invalid-dynamic-link-domain";
    readonly INVALID_EMAIL: "auth/invalid-email";
    readonly INVALID_EMULATOR_SCHEME: "auth/invalid-emulator-scheme";
    readonly INVALID_IDP_RESPONSE: "auth/invalid-credential";
    readonly INVALID_LOGIN_CREDENTIALS: "auth/invalid-credential";
    readonly INVALID_MESSAGE_PAYLOAD: "auth/invalid-message-payload";
    readonly INVALID_MFA_SESSION: "auth/invalid-multi-factor-session";
    readonly INVALID_OAUTH_CLIENT_ID: "auth/invalid-oauth-client-id";
    readonly INVALID_OAUTH_PROVIDER: "auth/invalid-oauth-provider";
    readonly INVALID_OOB_CODE: "auth/invalid-action-code";
    readonly INVALID_ORIGIN: "auth/unauthorized-domain";
    readonly INVALID_PASSWORD: "auth/wrong-password";
    readonly INVALID_PERSISTENCE: "auth/invalid-persistence-type";
    readonly INVALID_PHONE_NUMBER: "auth/invalid-phone-number";
    readonly INVALID_PROVIDER_ID: "auth/invalid-provider-id";
    readonly INVALID_RECIPIENT_EMAIL: "auth/invalid-recipient-email";
    readonly INVALID_SENDER: "auth/invalid-sender";
    readonly INVALID_SESSION_INFO: "auth/invalid-verification-id";
    readonly INVALID_TENANT_ID: "auth/invalid-tenant-id";
    readonly MFA_INFO_NOT_FOUND: "auth/multi-factor-info-not-found";
    readonly MFA_REQUIRED: "auth/multi-factor-auth-required";
    readonly MISSING_ANDROID_PACKAGE_NAME: "auth/missing-android-pkg-name";
    readonly MISSING_APP_CREDENTIAL: "auth/missing-app-credential";
    readonly MISSING_AUTH_DOMAIN: "auth/auth-domain-config-required";
    readonly MISSING_CODE: "auth/missing-verification-code";
    readonly MISSING_CONTINUE_URI: "auth/missing-continue-uri";
    readonly MISSING_IFRAME_START: "auth/missing-iframe-start";
    readonly MISSING_IOS_BUNDLE_ID: "auth/missing-ios-bundle-id";
    readonly MISSING_OR_INVALID_NONCE: "auth/missing-or-invalid-nonce";
    readonly MISSING_MFA_INFO: "auth/missing-multi-factor-info";
    readonly MISSING_MFA_SESSION: "auth/missing-multi-factor-session";
    readonly MISSING_PHONE_NUMBER: "auth/missing-phone-number";
    readonly MISSING_SESSION_INFO: "auth/missing-verification-id";
    readonly MODULE_DESTROYED: "auth/app-deleted";
    readonly NEED_CONFIRMATION: "auth/account-exists-with-different-credential";
    readonly NETWORK_REQUEST_FAILED: "auth/network-request-failed";
    readonly NULL_USER: "auth/null-user";
    readonly NO_AUTH_EVENT: "auth/no-auth-event";
    readonly NO_SUCH_PROVIDER: "auth/no-such-provider";
    readonly OPERATION_NOT_ALLOWED: "auth/operation-not-allowed";
    readonly OPERATION_NOT_SUPPORTED: "auth/operation-not-supported-in-this-environment";
    readonly POPUP_BLOCKED: "auth/popup-blocked";
    readonly POPUP_CLOSED_BY_USER: "auth/popup-closed-by-user";
    readonly PROVIDER_ALREADY_LINKED: "auth/provider-already-linked";
    readonly QUOTA_EXCEEDED: "auth/quota-exceeded";
    readonly REDIRECT_CANCELLED_BY_USER: "auth/redirect-cancelled-by-user";
    readonly REDIRECT_OPERATION_PENDING: "auth/redirect-operation-pending";
    readonly REJECTED_CREDENTIAL: "auth/rejected-credential";
    readonly SECOND_FACTOR_ALREADY_ENROLLED: "auth/second-factor-already-in-use";
    readonly SECOND_FACTOR_LIMIT_EXCEEDED: "auth/maximum-second-factor-count-exceeded";
    readonly TENANT_ID_MISMATCH: "auth/tenant-id-mismatch";
    readonly TIMEOUT: "auth/timeout";
    readonly TOKEN_EXPIRED: "auth/user-token-expired";
    readonly TOO_MANY_ATTEMPTS_TRY_LATER: "auth/too-many-requests";
    readonly UNAUTHORIZED_DOMAIN: "auth/unauthorized-continue-uri";
    readonly UNSUPPORTED_FIRST_FACTOR: "auth/unsupported-first-factor";
    readonly UNSUPPORTED_PERSISTENCE: "auth/unsupported-persistence-type";
    readonly UNSUPPORTED_TENANT_OPERATION: "auth/unsupported-tenant-operation";
    readonly UNVERIFIED_EMAIL: "auth/unverified-email";
    readonly USER_CANCELLED: "auth/user-cancelled";
    readonly USER_DELETED: "auth/user-not-found";
    readonly USER_DISABLED: "auth/user-disabled";
    readonly USER_MISMATCH: "auth/user-mismatch";
    readonly USER_SIGNED_OUT: "auth/user-signed-out";
    readonly WEAK_PASSWORD: "auth/weak-password";
    readonly WEB_STORAGE_UNSUPPORTED: "auth/web-storage-unsupported";
    readonly ALREADY_INITIALIZED: "auth/already-initialized";
    readonly RECAPTCHA_NOT_ENABLED: "auth/recaptcha-not-enabled";
    readonly MISSING_RECAPTCHA_TOKEN: "auth/missing-recaptcha-token";
    readonly INVALID_RECAPTCHA_TOKEN: "auth/invalid-recaptcha-token";
    readonly INVALID_RECAPTCHA_ACTION: "auth/invalid-recaptcha-action";
    readonly MISSING_CLIENT_TYPE: "auth/missing-client-type";
    readonly MISSING_RECAPTCHA_VERSION: "auth/missing-recaptcha-version";
    readonly INVALID_RECAPTCHA_VERSION: "auth/invalid-recaptcha-version";
    readonly INVALID_REQ_TYPE: "auth/invalid-req-type";
}

browserlocalpersistence

基礎となるストレージにlocalStorageを使用したLOCALの型の永続性の実装。

サイン:

browserLocalPersistence: Persistence

BROWSERPOPUPREDIRECTRESOLVER

ブラウザベースのアプリケーションに適したPopupRedirectResolverの実装。

この方法は、node.js環境では機能しません。

サイン:

browserPopupRedirectResolver: PopupRedirectResolver

browsersessionpersistence

基礎となるストレージのためにsessionStorageを使用したSESSION永続性の実装。

サイン:

browserSessionPersistence: Persistence

cordovapopupRedirectResolver

Cordovaベースのアプリケーションに適したPopupredirectResolverの実装。

サイン:

cordovaPopupRedirectResolver: PopupRedirectResolver

Debugerrormap

ほとんどのエラーコードの詳細な説明を備えた冗長エラーマップ。

AutherRormapでのディスカッションを参照してください

サイン:

debugErrorMap: AuthErrorMap

FACTORID

マルチファクター認証に使用できる要因の列挙。

サイン:

FactorId: {
    readonly PHONE: "phone";
    readonly TOTP: "totp";
}

indexedDblocalPerSistence

基礎となるストレージにindexedDBを使用した型LOCAL永続性の実装。

サイン:

indexedDBLocalPersistence: Persistence

インメモリペル化

タイプ「なし」の永続性の実装。

サイン:

inMemoryPersistence: Persistence

OperationType

サポートされている操作タイプの列挙。

サイン:

OperationType: {
    readonly LINK: "link";
    readonly REAUTHENTICATE: "reauthenticate";
    readonly SIGN_IN: "signIn";
}

Proderrormap

すべての言語エラーメッセージが削除された最小限のエラーマップ。

AutherRormapでのディスカッションを参照してください

サイン:

prodErrorMap: AuthErrorMap

ProviderId

サポートされているプロバイダーの列挙。

サイン:

ProviderId: {
    readonly FACEBOOK: "facebook.com";
    readonly GITHUB: "github.com";
    readonly GOOGLE: "google.com";
    readonly PASSWORD: "password";
    readonly PHONE: "phone";
    readonly TWITTER: "twitter.com";
}

SigninMethod

サポートされているサインインメソッドの列挙。

サイン:

SignInMethod: {
    readonly EMAIL_LINK: "emailLink";
    readonly EMAIL_PASSWORD: "password";
    readonly FACEBOOK: "facebook.com";
    readonly GITHUB: "github.com";
    readonly GOOGLE: "google.com";
    readonly PHONE: "phone";
    readonly TWITTER: "twitter.com";
}

CustomParameters

OAUTHカスタムパラメーターのマップ。

サイン:

export declare type CustomParameters = Record<string, string>;

nextorobserver

イベントコールバックの定義を入力します。

サイン:

export declare type NextOrObserver<T> = NextFn<T | null> | Observer<T | null>;

PhoneInFooptions

電話番号の所有権を確認するために必要な情報。

必要な情報は、単一因子サインイン、多要因登録、または多要素サインインを行っているかどうかによって異なります。

サイン:

export declare type PhoneInfoOptions = PhoneSingleFactorInfoOptions | PhoneMultiFactorEnrollInfoOptions | PhoneMultiFactorSignInInfoOptions;

userprofile

AdditionalUserinfoで使用されるユーザープロファイル

サイン:

export declare type UserProfile = Record<string, unknown>;