Auth
API と TenantAwareAuth
API の両方の共通の親インターフェース。
署名:
export declare abstract class BaseAuth
メソッド
メソッド | 修飾キー | 説明 |
---|---|---|
createCustomToken(uid, developerClaims) | クライアント SDK でのログインに使用するためにクライアント デバイスに返送できる新しい Firebase カスタム トークン(JWT)を作成します。signInWithCustomToken() メソッド。(テナント対応インスタンスでは、テナント ID もトークンに埋め込まれます)。コードサンプルと詳細なドキュメントについては、カスタム トークンの作成をご覧ください。 |
|
createProviderConfig(config) | 新しいプロバイダ構成が作成されたときに、新しく作成された AuthProviderConfig で解決される Promise を返します。SAML と OIDC プロバイダのサポートには Google Cloud の Identity Platform(GCIP)が必要です。料金や機能など、GCIP の詳細については、GCIP のドキュメントをご覧ください。 |
|
createSessionCookie(idToken, sessionCookieOptions) | 指定されたオプションで新しい Firebase セッション Cookie を作成します。作成された JWT 文字列は、カスタム Cookie ポリシーを使用してサーバーサイドのセッション Cookie として設定し、セッション管理に使用できます。セッション Cookie の JWT には、提供された ID トークンと同じペイロード クレームが含まれます。コードサンプルと詳細なドキュメントについては、セッション Cookie の管理をご覧ください。 | |
createUser(properties) | 新しいユーザーを作成します。コードサンプルと詳細なドキュメントについては、ユーザーを作成するをご覧ください。 | |
deleteProviderConfig(providerId) | 渡されたプロバイダ ID に対応するプロバイダ構成を削除します。指定された ID が存在しない場合は、auth/configuration-not-found エラーがスローされます。SAML と OIDC プロバイダのサポートには、Google Cloud の Identity Platform(GCIP)が必要です。料金や機能など、GCIP の詳細については、GCIP のドキュメントをご覧ください。 |
|
deleteUser(uid) | 既存のユーザーを削除します。コードサンプルと詳細なドキュメントについては、ユーザーを削除するをご覧ください。 | |
deleteUsers(uids) | 指定した uid で指定されたユーザーを削除します。存在しないユーザーを削除してもエラーは生成されません(このメソッドはべき等です)。存在しないユーザーは正常に削除されたと見なされるため、DeleteUsersResult.successCount の値にカウントされます。指定できる識別子は最大 1, 000 個です。1, 000 個を超える ID が指定されている場合、このメソッドは FirebaseAuthError をスローします。この API は現在、サーバーでは 1 QPS にレート制限されています。これを超えると、割り当て超過エラーが表示されることがあります。そのため、1,000 人を超えるユーザーを削除する場合は、この制限を超えないようにするために、遅延の設定が必要になる場合があります。 |
|
generateEmailVerificationLink(email, actionCodeSettings) | 帯域外のメールのアクション リンクを生成し、指定されたメールに対するユーザーの所有権を確認します。このメソッドの引数として指定される ActionCodeSettings オブジェクトは、ディープリンクで渡される追加の状態情報などとともに、リンクをモバイルアプリとブラウザのどちらで処理するかを定義します。 | |
generatePasswordResetLink(メール, actionCodeSettings) | ユーザーのパスワードを再設定するための帯域外のメールのアクション リンクを生成します。指定したメールアドレスを持つユーザーにリンクが生成されます。オプションの ActionCodeSettings オブジェクトでは、リンクをモバイルアプリとブラウザのどちらで処理するか、ディープリンクで渡される追加の状態情報などを定義します。 | |
generateSignInWithEmailLink(email, actionCodeSettings) | 帯域外のメールのアクション リンクを生成し、指定されたメールに対するユーザーの所有権を確認します。このメソッドの引数として指定される ActionCodeSettings オブジェクトは、ディープリンクで渡される追加の状態情報などとともに、リンクをモバイルアプリとブラウザのどちらで処理するかを定義します。 | |
generateVerifyAndChangeEmailLink(email, newEmail, actionCodeSettings) | 指定されたメールに対するユーザーの所有権を確認するための帯域外メールのアクション リンクを生成します。このメソッドの引数として指定される ActionCodeSettings オブジェクトは、ディープリンクで渡される追加の状態情報などとともに、リンクをモバイルアプリとブラウザのどちらで処理するかを定義します。 | |
getProviderConfig(providerId) | 指定された ID で認証プロバイダ構成を検索します。指定されたプロバイダ ID に対応するプロバイダ構成で解決される Promise を返します。指定された ID が存在しない場合は、auth/configuration-not-found エラーがスローされます。SAML と OIDC プロバイダのサポートには、Google Cloud の Identity Platform(GCIP)が必要です。料金や機能など、GCIP の詳細については、GCIP のドキュメントをご覧ください。 |
|
getUser(uid) | 指定された uid に対応するユーザーのユーザーデータを取得します。コードサンプルと詳細なドキュメントについては、ユーザーデータを取得するをご覧ください。 |
|
getUserByEmail(email) | 指定されたメールに対応するユーザーのユーザーデータを取得します。コードサンプルと詳細なドキュメントについては、ユーザーデータを取得するをご覧ください。 | |
getUserByPhoneNumber(phoneNumber) | 指定された電話番号に対応するユーザーのユーザーデータを取得します。電話番号は E.164 仕様に準拠している必要があります。コードサンプルと詳細なドキュメントについては、ユーザーデータの取得をご覧ください。 | |
getUserByProviderUid(providerId, uid) | 指定されたプロバイダ ID に対応するユーザーのユーザーデータを取得します。コードサンプルと詳細なドキュメントについては、ユーザーデータを取得するをご覧ください。 | |
getUsers(識別子) | 指定された ID に対応するユーザーデータを取得します。順序は保証されません。特に、結果リストの n 番目のエントリは、入力パラメータ リストの n 番目のエントリに対応するとは限りません。最大 100 個の識別子のみを指定できます。100 個を超える識別子を指定すると、このメソッドは FirebaseAuthError をスローします。 | |
importUsers(users, options) | 指定されたユーザーリストを Firebase Auth にインポートします。一度にインポートできるユーザー数は最大 1,000 人です。パスワードのあるユーザーをインポートする場合は、UserImportOptions を指定する必要があります。このオペレーションは一括インポート用に最適化されており、重複につながる可能性がある uid 、email などの識別子の一意性のチェックが無視されます。 |
|
listProviderConfigs(options) | 指定されたフィルタに一致する既存のプロバイダ構成のリストを返します。一度に一覧表示できるプロバイダ構成は最大 100 個です。SAML と OIDC プロバイダのサポートには、Google Cloud の Identity Platform(GCIP)が必要です。料金や機能など、GCIP の詳細については、GCIP のドキュメントをご覧ください。 | |
listUsers(maxResults, pageToken) | pageToken で指定されたオフセットから始まる、サイズが maxResults のユーザーのリスト(単一バッチのみ)を取得します。これは、指定したプロジェクトのすべてのユーザーを一括で取得するために使用されます。コードサンプルと詳細なドキュメントについては、すべてのユーザーの一覧表示をご覧ください。 |
|
revokeRefreshTokens(uid) | 既存のユーザーのすべての更新トークンを取り消します。この API は、ユーザーの UserRecord.tokensValidAfterTime を現在の UTC に更新します。この呼び出しを行うサーバーのクロックが正しく設定され、同期されていることが重要です。これにより、指定されたユーザーのすべてのセッションが取り消され、既存のセッションの新しい ID トークンが作成されなくなりますが、既存の ID トークンは自然な有効期限(1 時間)まで有効なままになります。ID トークンが取り消されたことを確認するには、checkRevoked が true に設定されている BaseAuth.verifyIdToken() を使用します。 |
|
setCustomUserClaims(uid, customUserClaims) | 指定された uid で識別される既存のユーザーに追加のデベロッパー クレームを設定します。通常はユーザーロールとアクセスレベルを定義するために使用されます。これらのクレームは、ユーザーがすでにログインしているすべてのデバイス(トークンの有効期限が切れた後、またはトークンの更新が強制されたとき)と、ユーザーが次回ログインしたときに反映する必要があります。予約済みの OIDC クレーム名(sub、iat、iss など)が使用されている場合は、エラーがスローされます。認証されたユーザーの ID トークン JWT で設定されます。コードサンプルと詳細なドキュメントについては、ユーザーロールとアクセスレベルの定義をご覧ください。 |
|
updateProviderConfig(providerId, updatedConfig) | 指定されたプロバイダ ID に対応する更新された AuthProviderConfig で解決される Promise を返します。指定された ID が存在しない場合は、auth/configuration-not-found エラーがスローされます。SAML と OIDC プロバイダのサポートには、Google Cloud の Identity Platform(GCIP)が必要です。料金や機能など、GCIP の詳細については、GCIP のドキュメントをご覧ください。 |
|
updateUser(uid, プロパティ) | 既存のユーザーを更新します。コードサンプルと詳細なドキュメントについては、ユーザーを更新するをご覧ください。 | |
verifyIdToken(idToken, checkRevoked) | Firebase ID トークン(JWT)を検証します。トークンが有効な場合、トークンのデコードされたクレームで Promise が履行されます。それ以外の場合、Promise は拒否されます。checkRevoked が true に設定されている場合は、まず対応するユーザーが無効になっているかどうかを確認します。「はい」の場合、auth/user-disabled エラーがスローされます。「いいえ」の場合は、その ID トークンに対応するセッションが取り消されたかどうかを確認します。対応するユーザーのセッションが無効になると、auth/id-token-revoked エラーがスローされます。指定しない場合、チェックは適用されません。コードサンプルと詳細なドキュメントについては、ID トークンを検証するをご覧ください。 |
|
verifySessionCookie(sessionCookie, checkRevoked) | Firebase セッション Cookie を検証します。Cookie クレームを含む Promise を返します。Cookie を検証できなかった場合、Promise を拒否します。checkRevoked が true に設定されている場合、まず対応するユーザーが無効になっているかどうかを確認します。無効になっている場合は、auth/user-disabled エラーがスローされます。「いいえ」の場合は、セッション Cookie に対応するセッションが取り消されたかどうかを確認します。対応するユーザーのセッションが無効になると、auth/session-cookie-revoked エラーがスローされます。指定しない場合、チェックは行われません。コードサンプルと詳細なドキュメントについては、セッション Cookie を検証するをご覧ください。 |
BaseAuth.createCustomToken()
クライアント SDK でのログインに使用するためにクライアント デバイスに返送できる新しい Firebase カスタム トークン(JWT)を作成します。signInWithCustomToken()
メソッド。(テナント対応インスタンスでは、トークンにテナント ID も埋め込まれます)。
コードサンプルと詳細なドキュメントについては、カスタム トークンの作成をご覧ください。
署名:
createCustomToken(uid: string, developerClaims?: object): Promise<string>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
uid | 文字列 | カスタム トークンのサブジェクトとして使用する uid 。 |
DeveloperClaims | オブジェクト | カスタム トークンのペイロードに含めるオプションの追加クレーム。 |
戻り値:
Promise<文字列>
指定された uid
とペイロードのカスタム トークンで実行された Promise。
BaseAuth.createProviderConfig()
新しいプロバイダ構成が作成されたときに、新しく作成された AuthProviderConfig
で解決される Promise を返します。
SAML および OIDC プロバイダのサポートには、Google Cloud の Identity Platform(GCIP)が必要です。料金や機能など、GCIP の詳細については、GCIP のドキュメントをご覧ください。
署名:
createProviderConfig(config: AuthProviderConfig): Promise<AuthProviderConfig>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
config | AuthProviderConfig | 作成するプロバイダ構成。 |
戻り値:
Promise<AuthProviderConfig>
作成されたプロバイダ構成で解決される Promise。
BaseAuth.createSessionCookie()
指定されたオプションで新しい Firebase セッション Cookie を作成します。作成された JWT 文字列は、カスタム Cookie ポリシーを使用してサーバーサイドのセッション Cookie として設定し、セッション管理に使用できます。セッション Cookie の JWT には、提供された ID トークンと同じペイロード クレームが含まれます。
コードのサンプルと詳細なドキュメントについては、セッション Cookie を管理するをご覧ください。
署名:
createSessionCookie(idToken: string, sessionCookieOptions: SessionCookieOptions): Promise<string>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
idToken | 文字列 | セッション Cookie と交換するための Firebase ID トークン。 |
sessionCookieOptions | SessionCookieOptions(セッション Cookie オプション) | カスタムのセッション継続時間を含むセッション Cookie オプション。 |
戻り値:
Promise<文字列>
作成されたセッション Cookie が成功した場合に解決される Promise。
BaseAuth.createUser()
新しいユーザーを作成します。
コードサンプルと詳細なドキュメントについては、ユーザーを作成するをご覧ください。
署名:
createUser(properties: CreateRequest): Promise<UserRecord>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
プロパティ | CreateRequest | 作成する新しいユーザー レコードに設定するプロパティ。 |
戻り値:
Promise<UserRecord>
新しく作成されたユーザーに対応するユーザーデータで履行される Promise。
BaseAuth.deleteProviderConfig()
渡されたプロバイダ ID に対応するプロバイダ構成を削除します。指定された ID が存在しない場合は、auth/configuration-not-found
エラーがスローされます。
SAML および OIDC プロバイダのサポートには、Google Cloud の Identity Platform(GCIP)が必要です。料金や機能など、GCIP の詳細については、GCIP のドキュメントをご覧ください。
署名:
deleteProviderConfig(providerId: string): Promise<void>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
providerId | 文字列 | 削除するプロバイダ構成に対応するプロバイダ ID。 |
戻り値:
約束 <void>
完了時に解決される Promise。
BaseAuth.deleteUser()
既存のユーザーを削除します。
コードサンプルと詳細なドキュメントについては、ユーザーを削除するをご覧ください。
署名:
deleteUser(uid: string): Promise<void>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
uid | 文字列 | 削除するユーザーに対応する uid 。 |
戻り値:
約束 <void>
ユーザーが削除されると、空の Promise が実行されます。
BaseAuth.deleteUsers()
指定した uid で指定されたユーザーを削除します。
存在しないユーザーを削除してもエラーは発生しません(この方法はべき等です)。存在しないユーザーは正常に削除されたと見なされるため、DeleteUsersResult.successCount
値にカウントされます。
指定できる識別子は最大 1,000 個です。1, 000 個を超える識別子を指定すると、このメソッドは FirebaseAuthError をスローします。
この API は現在、サーバーにより 1 QPS にレート制限されています。これを超えると、割り当て超過エラーが表示されることがあります。そのため、1,000 人を超えるユーザーを削除する場合は、この制限を超えないようにするために、遅延の設定が必要になる場合があります。
署名:
deleteUsers(uids: string[]): Promise<DeleteUsersResult>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
UID | string[] | 削除するユーザーに対応する uids 。 |
戻り値:
Promise <DeleteUsersResult>
削除の成功/失敗の合計数と、削除の失敗に対応するエラーの配列に解決される Promise。
BaseAuth.generateEmailVerificationLink()
帯域外のメールのアクション リンクを生成し、指定されたメールに対するユーザーの所有権を確認します。このメソッドの引数として指定される ActionCodeSettings オブジェクトは、ディープリンクで渡される追加の状態情報などとともに、リンクをモバイルアプリとブラウザのどちらで処理するかを定義します。
署名:
generateEmailVerificationLink(email: string, actionCodeSettings?: ActionCodeSettings): Promise<string>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
メール | 文字列 | 確認するメール アカウント。 |
actionCodeSettings | ActionCodeSettings | アクション コードの設定。指定すると、州/続行 URL が「continueUrl」として設定されます。パラメータをメール確認リンクに含めます。デフォルトのメール確認のランディング ページでは、これを使用して、アプリがインストールされている場合にに戻るためのリンクを表示します。actionCodeSettings が指定されていない場合、アクション URL に URL は追加されません。指定するステート URL は、コンソールでデベロッパーによって許可リストに登録されたドメインに属している必要があります。それ以外の場合は、エラーがスローされます。モバイルアプリのリダイレクトは、デベロッパーが Firebase Dynamic Links の利用規約を設定して同意した場合にのみ適用されます。Android パッケージ名と iOS バンドル ID は、同じ Firebase Auth プロジェクトで構成されている場合にのみ考慮されます。 |
戻り値:
Promise<文字列>
生成されたリンクで解決される Promise。
例
var actionCodeSettings = {
url: 'https://www.example.com/cart?email=user@example.com&cartId=123',
iOS: {
bundleId: 'com.example.ios'
},
android: {
packageName: 'com.example.android',
installApp: true,
minimumVersion: '12'
},
handleCodeInApp: true,
dynamicLinkDomain: 'custom.page.link'
};
admin.auth()
.generateEmailVerificationLink('user@example.com', actionCodeSettings)
.then(function(link) {
// The link was successfully generated.
})
.catch(function(error) {
// Some error occurred, you can inspect the code: error.code
});
BaseAuth.generatePasswordResetLink()
ユーザーのパスワードを再設定するための帯域外のメールのアクション リンクを生成します。指定したメールアドレスを持つユーザーにリンクが生成されます。オプションの ActionCodeSettings オブジェクトでは、リンクをモバイルアプリとブラウザのどちらで処理するか、ディープリンクで渡される追加の状態情報などを定義します。
署名:
generatePasswordResetLink(email: string, actionCodeSettings?: ActionCodeSettings): Promise<string>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
メール | 文字列 | パスワードを再設定するユーザーのメールアドレス。 |
actionCodeSettings | ActionCodeSettings | アクション コードの設定。指定すると、州/続行 URL が「continueUrl」として設定されます。パスワードのリセットリンクにあるすべてのパラメータに情報を追加します。デフォルトのパスワードの再設定ランディング ページには、アプリがインストールされている場合に戻るためのリンクが表示されます。actionCodeSettings が指定されていない場合、アクション URL に URL は追加されません。指定するステート URL は、コンソールでデベロッパーによって許可リストに登録されたドメインに属している必要があります。それ以外の場合は、エラーがスローされます。モバイルアプリのリダイレクトは、デベロッパーが Firebase Dynamic Links の利用規約を設定して同意した場合にのみ適用されます。Android パッケージ名と iOS バンドル ID は、同じ Firebase Auth プロジェクトで構成されている場合にのみ考慮されます。 |
戻り値:
Promise<文字列>
生成されたリンクで解決される Promise。
例
var 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,
dynamicLinkDomain: 'custom.page.link'
};
admin.auth()
.generatePasswordResetLink('user@example.com', actionCodeSettings)
.then(function(link) {
// The link was successfully generated.
})
.catch(function(error) {
// Some error occurred, you can inspect the code: error.code
});
BaseAuth.generateSignInWithEmailLink()
帯域外のメールのアクション リンクを生成し、指定されたメールに対するユーザーの所有権を確認します。このメソッドの引数として指定される ActionCodeSettings オブジェクトは、ディープリンクで渡される追加の状態情報などとともに、リンクをモバイルアプリとブラウザのどちらで処理するかを定義します。
署名:
generateSignInWithEmailLink(email: string, actionCodeSettings: ActionCodeSettings): Promise<string>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
メール | 文字列 | 確認するメール アカウント。 |
actionCodeSettings | ActionCodeSettings | アクション コードの設定。指定すると、州/続行 URL が「continueUrl」として設定されます。パラメータをメール確認リンクに含めます。デフォルトのメール確認のランディング ページでは、これを使用して、アプリがインストールされている場合にに戻るためのリンクを表示します。actionCodeSettings が指定されていない場合、アクション URL に URL は追加されません。指定するステート URL は、コンソールでデベロッパーによって許可リストに登録されたドメインに属している必要があります。それ以外の場合は、エラーがスローされます。モバイルアプリのリダイレクトは、デベロッパーが Firebase Dynamic Links の利用規約を設定して同意した場合にのみ適用されます。Android パッケージ名と iOS バンドル ID は、同じ Firebase Auth プロジェクトで構成されている場合にのみ考慮されます。 |
戻り値:
Promise<文字列>
生成されたリンクで解決される Promise。
例
var actionCodeSettings = {
url: 'https://www.example.com/cart?email=user@example.com&cartId=123',
iOS: {
bundleId: 'com.example.ios'
},
android: {
packageName: 'com.example.android',
installApp: true,
minimumVersion: '12'
},
handleCodeInApp: true,
dynamicLinkDomain: 'custom.page.link'
};
admin.auth()
.generateEmailVerificationLink('user@example.com', actionCodeSettings)
.then(function(link) {
// The link was successfully generated.
})
.catch(function(error) {
// Some error occurred, you can inspect the code: error.code
});
BaseAuth.generateVerifyAndChangeEmailLink()
指定されたメールに対するユーザーの所有権を確認するための帯域外メールのアクション リンクを生成します。このメソッドの引数として指定される ActionCodeSettings オブジェクトは、ディープリンクで渡される追加の状態情報などとともに、リンクをモバイルアプリとブラウザのどちらで処理するかを定義します。
署名:
generateVerifyAndChangeEmailLink(email: string, newEmail: string, actionCodeSettings?: ActionCodeSettings): Promise<string>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
メール | 文字列 | 現在のメール アカウント。 |
新しいメールアドレス | 文字列 | アカウントの更新先のメールアドレス。 |
actionCodeSettings | ActionCodeSettings | アクション コードの設定。指定すると、州/続行 URL が「continueUrl」として設定されます。パラメータをメール確認リンクに含めます。デフォルトのメール確認のランディング ページでは、これを使用して、アプリがインストールされている場合にに戻るためのリンクを表示します。actionCodeSettings が指定されていない場合、アクション URL に URL は追加されません。指定された状態 URL は、コンソールで承認されているドメインに属している必要があります。ドメインに属していると、エラーがスローされます。モバイルアプリのリダイレクトは、デベロッパーが Firebase Dynamic Links の利用規約を設定して同意した場合にのみ適用されます。Android パッケージ名と iOS バンドル ID は、同じ Firebase Auth プロジェクトで構成されている場合にのみ考慮されます。 |
戻り値:
Promise<文字列>
生成されたリンクで解決される Promise。
BaseAuth.getProviderConfig()
指定された ID で認証プロバイダ構成を検索します。指定されたプロバイダ ID に対応するプロバイダ構成で解決される Promise を返します。指定された ID が存在しない場合は、auth/configuration-not-found
エラーがスローされます。
SAML および OIDC プロバイダのサポートには、Google Cloud の Identity Platform(GCIP)が必要です。料金や機能など、GCIP の詳細については、GCIP のドキュメントをご覧ください。
署名:
getProviderConfig(providerId: string): Promise<AuthProviderConfig>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
providerId | 文字列 | 返されるプロバイダ構成に対応するプロバイダ ID。 |
戻り値:
Promise<AuthProviderConfig>
指定された ID に対応する構成で解決される Promise。
BaseAuth.getUser()
指定された uid
に対応するユーザーのユーザーデータを取得します。
コードサンプルと詳細なドキュメントについては、ユーザーデータを取得するをご覧ください。
署名:
getUser(uid: string): Promise<UserRecord>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
uid | 文字列 | データを取得するユーザーに対応する uid 。 |
戻り値:
Promise<UserRecord>
指定された uid
に対応するユーザーデータで履行される Promise。
BaseAuth.getUserByEmail()
指定されたメールに対応するユーザーのユーザーデータを取得します。
コードサンプルと詳細なドキュメントについては、ユーザーデータを取得するをご覧ください。
署名:
getUserByEmail(email: string): Promise<UserRecord>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
メール | 文字列 | データを取得するユーザーに対応するメールアドレス。 |
戻り値:
Promise<UserRecord>
指定されたメールに対応するユーザーデータで履行される Promise。
BaseAuth.getUserByPhoneNumber()
指定された電話番号に対応するユーザーのユーザーデータを取得します。電話番号は E.164 仕様に準拠している必要があります。
コードサンプルと詳細なドキュメントについては、ユーザーデータを取得するをご覧ください。
署名:
getUserByPhoneNumber(phoneNumber: string): Promise<UserRecord>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
電話番号 | 文字列 | データを取得するユーザーの電話番号。 |
戻り値:
Promise<UserRecord>
指定された電話番号に対応するユーザーデータで履行される Promise。
BaseAuth.getUserByProviderUid()
指定されたプロバイダ ID に対応するユーザーのユーザーデータを取得します。
コードサンプルと詳細なドキュメントについては、ユーザーデータを取得するをご覧ください。
署名:
getUserByProviderUid(providerId: string, uid: string): Promise<UserRecord>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
providerId | 文字列 | プロバイダ ID(例: google.com)Google プロバイダ向けの設定です |
uid | 文字列 | 指定されたプロバイダのユーザー ID。 |
戻り値:
Promise<UserRecord>
指定されたプロバイダ ID に対応するユーザーデータで履行される Promise。
BaseAuth.getUsers()
指定された ID に対応するユーザーデータを取得します。
順序は保証されません。特に、結果リストの n 番目のエントリが、入力パラメータ リストの n 番目のエントリに対応しているとは限りません。
指定できる識別子は最大 100 個です。100 個を超える識別子を指定すると、このメソッドは FirebaseAuthError をスローします。
署名:
getUsers(identifiers: UserIdentifier[]): Promise<GetUsersResult>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
identifiers | UserIdentifier[] | どのユーザー レコードを返すかを示すために使用される識別子。エントリは 100 個以下にしてください。 |
戻り値:
Promise <GetUsersResult>
対応するユーザー レコードに解決される Promise。
例外
FirebaseAuthError: いずれかの識別子が無効な場合、または 100 個を超える識別子が指定されている場合。
BaseAuth.importUsers()
指定されたユーザーリストを Firebase Auth にインポートします。一度にインポートできるユーザー数は最大 1,000 人です。パスワードのあるユーザーをインポートする場合は、UserImportOptions を指定する必要があります。このオペレーションは一括インポート用に最適化されており、重複につながる可能性のある uid
、email
などの識別子の一意性のチェックが無視されます。
署名:
importUsers(users: UserImportRecord[], options?: UserImportOptions): Promise<UserImportResult>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
ユーザー | UserImportRecord[] | Firebase Auth にインポートするユーザー レコードのリスト。 |
オプション | UserImportOptions | ユーザー インポート オプション。指定したユーザーにパスワード認証情報が含まれる場合は必須です。 |
戻り値:
Promise <UserImportResult>
オペレーションが完了したときにインポートの結果によって解決される Promise。これには、成功したインポートの数、失敗したインポートの数、対応するエラーの数が含まれます。
BaseAuth.listProviderConfigs()
指定されたフィルタに一致する既存のプロバイダ構成のリストを返します。一度に一覧表示できるプロバイダ構成は 100 個までです。
SAML および OIDC プロバイダのサポートには、Google Cloud の Identity Platform(GCIP)が必要です。料金や機能など、GCIP の詳細については、GCIP のドキュメントをご覧ください。
署名:
listProviderConfigs(options: AuthProviderConfigFilter): Promise<ListProviderConfigResults>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
オプション | AuthProviderConfigFilter | 適用するプロバイダ構成フィルタ。 |
戻り値:
Promise <ListProviderConfigResults>
フィルタ要件を満たすプロバイダ構成のリストで解決される Promise。
BaseAuth.listUsers()
pageToken
で指定されたオフセットからサイズが maxResults
のユーザーのリストを取得します(単一バッチのみ)。これは、指定したプロジェクトのすべてのユーザーを一括で取得するために使用されます。
コードサンプルと詳細なドキュメントについては、すべてのユーザーを一覧表示をご覧ください。
署名:
listUsers(maxResults?: number, pageToken?: string): Promise<ListUsersResult>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
maxResults | 数値 | ページサイズ(未定義の場合は 1, 000)。これが最大許容上限でもあります。 |
pageToken | 文字列 | 次のページトークン。指定しない場合、オフセットなしで開始したユーザーを返します。 |
戻り値:
Promise <ListUsersResult>
ダウンロードされたユーザーの現在のバッチと次のページトークンで解決される Promise。
BaseAuth.revokeRefreshTokens()
既存のユーザーのすべての更新トークンを取り消します。
この API は、ユーザーの UserRecord.tokensValidAfterTime を現在の UTC に更新します。これを呼び出すサーバーのクロックが正しく設定され、同期されていることが重要です。
これにより、指定したユーザーのセッションがすべて取り消され、既存のセッションの新しい ID トークンが作成されなくなりますが、既存の ID トークンは自然な有効期限(1 時間)まで有効なままになります。ID トークンが取り消されたことを確認するには、checkRevoked
が true に設定されている BaseAuth.verifyIdToken() を使用します。
署名:
revokeRefreshTokens(uid: string): Promise<void>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
uid | 文字列 | 更新トークンを取り消すユーザーに対応する uid 。 |
戻り値:
約束 <void>
ユーザーの更新トークンが取り消されると、空の Promise が履行されます。
BaseAuth.setCustomUserClaims()
指定された uid
で識別される既存のユーザーに追加のデベロッパー クレームを設定します。通常はユーザーロールとアクセスレベルを定義するために使用されます。これらのクレームは、ユーザーがすでにログインしているすべてのデバイス(トークンの有効期限が切れた後、またはトークンの更新が強制されたとき)と、ユーザーが次回ログインしたときに反映する必要があります。予約済みの OIDC クレーム名(sub、iat、iss など)が使用されている場合は、エラーがスローされます。これらは、認証されたユーザーの ID トークンの JWT に設定されます。
コードサンプルと詳細なドキュメントについては、ユーザーロールとアクセスレベルを定義するをご覧ください。
署名:
setCustomUserClaims(uid: string, customUserClaims: object | null): Promise<void>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
uid | 文字列 | 編集するユーザーの uid 。 |
customUserClaims | オブジェクト |null | デベロッパーが設定する。null が渡されると、既存のカスタム クレームは削除されます。1,000 バイトを超えるカスタム クレーム ペイロードを渡すと、エラーがスローされます。カスタム クレームは、認証されたリクエストごとに送信されるユーザーの ID トークンに追加されます。プロファイルのアクセスに関連しないユーザー属性には、データベースまたは他の別のストレージ システムを使用します。 |
戻り値:
約束 <void>
オペレーションが正常に完了したときに解決される Promise。
BaseAuth.updateProviderConfig()
指定されたプロバイダ ID に対応する更新された AuthProviderConfig
で解決される Promise を返します。指定された ID が存在しない場合は、auth/configuration-not-found
エラーがスローされます。
SAML および OIDC プロバイダのサポートには、Google Cloud の Identity Platform(GCIP)が必要です。料金や機能など、GCIP の詳細については、GCIP のドキュメントをご覧ください。
署名:
updateProviderConfig(providerId: string, updatedConfig: UpdateAuthProviderRequest): Promise<AuthProviderConfig>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
providerId | 文字列 | 更新するプロバイダ構成に対応するプロバイダ ID。 |
更新された構成 | UpdateAuthProviderRequest | 更新された構成。 |
戻り値:
Promise<AuthProviderConfig>
更新されたプロバイダ構成で解決される Promise。
BaseAuth.updateUser()
既存のユーザーを更新します。
コードサンプルと詳細なドキュメントについては、ユーザーの更新をご覧ください。
署名:
updateUser(uid: string, properties: UpdateRequest): Promise<UserRecord>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
uid | 文字列 | 更新するユーザーに対応する uid 。 |
プロパティ | UpdateRequest | 指定したユーザーについて更新するプロパティです。 |
戻り値:
Promise<UserRecord>
更新されたユーザーデータで履行された Promise。
BaseAuth.verifyIdToken()
Firebase ID トークン(JWT)を検証します。トークンが有効な場合、トークンのデコードされたクレームで Promise が履行されます。それ以外の場合、Promise は拒否されます。
checkRevoked
が true に設定されている場合は、まず対応するユーザーが無効になっているかどうかを確認します。「はい」の場合、auth/user-disabled
エラーがスローされます。「いいえ」の場合は、その ID トークンに対応するセッションが取り消されたかどうかを確認します。対応するユーザーのセッションが無効になると、auth/id-token-revoked
エラーがスローされます。指定しない場合、チェックは適用されません。
コードサンプルと詳細なドキュメントについては、ID トークンを検証するをご覧ください。
署名:
verifyIdToken(idToken: string, checkRevoked?: boolean): Promise<DecodedIdToken>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
idToken | 文字列 | 検証する ID トークン。 |
checkRevoked(検証取り消し) | ブール値 | ID トークンが取り消されたかどうかを確認するかどうか。そのためには、対応するユーザーの tokensValidAfterTime 時間を確認するための追加のリクエストを Firebase Auth バックエンドに対して行う必要があります。指定しない場合、この追加のチェックは適用されません。 |
戻り値:
Promise <DecodedIdToken>
ID トークンが有効な場合は、トークンのデコードされたクレームで履行される Promise。そうでない場合は Promise が拒否されます。
BaseAuth.verifySessionCookie()
Firebase セッション Cookie を検証します。Cookie クレームを含む Promise を返します。Cookie を検証できない場合、Promise を拒否します。
checkRevoked
が true に設定されている場合、まず対応するユーザーが無効になっているかどうかを確認します。無効になっている場合は、auth/user-disabled
エラーがスローされます。「いいえ」の場合は、セッション Cookie に対応するセッションが取り消されたかどうかを確認します。対応するユーザーのセッションが無効になると、auth/session-cookie-revoked
エラーがスローされます。指定しない場合、チェックは行われません。
コードのサンプルと詳細なドキュメントについては、セッション Cookie を検証するをご覧ください。
署名:
verifySessionCookie(sessionCookie: string, checkRevoked?: boolean): Promise<DecodedIdToken>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
セッション Cookie | 文字列 | 確認するセッション Cookie。 |
checkRevoked(検証取り消し) | ブール値 |
戻り値:
Promise <DecodedIdToken>
セッション Cookie が有効な場合に、セッション Cookie のデコードされたクレームで履行される Promiseそうでない場合は Promise が拒否されます。