Auth
API と TenantAwareAuth
API の両方の共通の親インターフェース。
署名:
export declare abstract class BaseAuth
方法
メソッド | 修飾キー | 説明 |
---|---|---|
createCustomToken(uid, developerClaims) | クライアント デバイスに返送できる新しい Firebase カスタム トークン(JWT)を作成します。この JWT を使用して、クライアント SDK の 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 個の ID を指定できます。指定された識別子が 1, 000 を超えると、このメソッドは FirebaseAuthError をスローします。現在、この API はサーバーで 1 QPS に制限されています。これを超えると、割り当て超過エラーが表示されることがあります。したがって、1,000 人を超えるユーザーを削除する場合は、この上限を超えないように遅延を追加する必要があります。 |
|
generateEmailVerificationLink(email, actionCodeSettings) | 指定したメールのユーザーの所有権を確認するための、帯域外メール アクション リンクを生成します。このメソッドに引数として ActionCodeSettings オブジェクトを渡すことで、モバイルアプリまたはブラウザでリンクを処理するかどうか、ディープリンクで受け渡す追加の状態情報などを定義します。 | |
generatePasswordResetLink(email, 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(identifiers) | 指定された識別子に対応するユーザーデータを取得します。順序は保証されません。特に、結果リストの n 番目のエントリが入力パラメータ リストの n 番目のエントリに対応するとは限りません。最大 100 個の識別子を指定できます。100 個を超える識別子を指定すると、このメソッドは FirebaseAuthError をスローします。 | |
importUsers(users, options) | 指定されたユーザーのリストを Firebase Auth にインポートします。一度に 1 人ずつ最大 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, updateConfig) | 指定されたプロバイダ ID に対応する更新された AuthProviderConfig で解決される Promise を返します。指定された ID が存在しない場合は、auth/configuration-not-found エラーがスローされます。SAML と OIDC プロバイダをサポートするには、Google Cloud の Identity Platform(GCIP)が必要です。料金や機能など、GCIP の詳細については、GCIP のドキュメントをご覧ください。 |
|
updateUser(uid, properties) | 既存のユーザーを更新します。コードサンプルと詳細なドキュメントについては、ユーザーを更新するをご覧ください。 | |
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()
クライアント デバイスに返送できる新しい Firebase カスタム トークン(JWT)を作成します。この JWT を使用して、クライアント SDK の signInWithCustomToken()
メソッドでログインします。(テナント対応インスタンスでは、トークンにテナント ID も埋め込まれます)。
コードサンプルと詳細なドキュメントについては、カスタム トークンを作成するをご覧ください。
署名:
createCustomToken(uid: string, developerClaims?: object): Promise<string>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
uid | 文字列 | カスタム トークンのサブジェクトとして使用する uid 。 |
developerClaim | オブジェクト | カスタム トークンのペイロードに含めるオプションの追加クレーム。 |
戻り値:
Promise<文字列>
指定された uid
とペイロードのカスタム トークンで履行される Promise。
BaseAuth.createProviderConfig()
新しいプロバイダ構成が作成されたときに、新しく作成された AuthProviderConfig
で解決される Promise を返します。
SAML および OIDC プロバイダのサポートには、Google Cloud の Identity Platform(GCIP)が必要です。料金や機能など、GCIP の詳細については、GCIP のドキュメントをご覧ください。
署名:
createProviderConfig(config: AuthProviderConfig): Promise<AuthProviderConfig>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
config | 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 オプション。 |
戻り値:
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。 |
戻り値:
Promise
完了時に解決される Promise。
BaseAuth.deleteUser()
既存のユーザーを削除します。
コードサンプルと詳細なドキュメントについては、ユーザーを削除するをご覧ください。
署名:
deleteUser(uid: string): Promise<void>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
uid | 文字列 | 削除するユーザーに対応する uid 。 |
戻り値:
Promise
ユーザーが削除されると、空の 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 | アクション コードの設定。指定すると、state/Continue 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 | アクション コードの設定。指定すると、state/Continue 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 | アクション コードの設定。指定すると、state/Continue 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 | アクション コードの設定。指定すると、state/Continue 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。 |
戻り値:
指定された 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 プロバイダの「google.com」など)。 |
uid | 文字列 | 指定されたプロバイダのユーザー ID。 |
戻り値:
Promise<UserRecord>
指定されたプロバイダ ID に対応するユーザーデータで履行される Promise。
BaseAuth.getUsers()
指定された識別子に対応するユーザーデータを取得します。
順序の保証はありません。特に、結果リストの n 番目のエントリが入力パラメータ リストの n 番目のエントリに対応するとは限りません。
最大 100 個の ID を指定できます。100 個を超える識別子を指定すると、このメソッドは FirebaseAuthError をスローします。
署名:
getUsers(identifiers: UserIdentifier[]): Promise<GetUsersResult>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
identifiers | UserIdentifier[] | 返されるユーザー レコードを示すために使用される識別子。エントリは 100 個以下にしてください。 |
戻り値:
Promise<GetUsersResult>
対応するユーザー レコードに解決される Promise。
例外
FirebaseAuthError いずれかの識別子が無効な場合、または 100 を超える識別子が指定されている場合。
BaseAuth.importUsers()
指定されたユーザーのリストを Firebase Auth にインポートします。一度に 1 人ずつ最大 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 。 |
戻り値:
Promise
ユーザーの更新トークンが取り消されると、空の 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 トークンに追加されます。アクセスに関連しないユーザー属性のプロファイルには、データベースまたは他の個別のストレージ システムを使用します。 |
戻り値:
Promise
オペレーションが正常に完了したときに解決される 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。 |
updateConfig | UpdateAuthProviderRequest | 更新された構成。 |
戻り値:
更新されたプロバイダ構成で解決される 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 | boolean | 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>;
パラメータ
パラメータ | 型 | 説明 |
---|---|---|
sessionCookie | 文字列 | 検証するセッション Cookie。 |
checkRevoked | boolean |
戻り値:
Promise<DecodedIdToken>
セッション Cookie が有効な場合は、セッション Cookie のデコードされたクレームで履行される Promise。有効でない場合は Promise が拒否されます。