Firebase Authentication。
函数
函数 | 说明 |
---|---|
getAuth(应用) | 获取默认应用或指定应用的 Auth 服务。调用 getAuth() 时无需任何参数,即可访问默认应用的 Auth 服务,也可调用 getAuth(app) 以访问与特定应用关联的 Auth 服务。 |
类
类 | 说明 |
---|---|
身份验证 | 授权服务绑定到提供的应用。一个身份验证实例可以有多个租户。 |
AuthClientErrorCode | 身份验证客户端错误代码及其默认消息。 |
BaseAuth | Auth 和 TenantAwareAuth API 的通用父接口。 |
FirebaseAuthError | Firebase Authentication 错误代码结构。这会扩展 PrefixedFirebaseError。 |
MultiFactorInfo | 此接口表示用户注册的第二重身份验证的常用属性。 |
MultiFactorSettings | 与多重身份验证相关的用户设置。 |
PhoneMultiFactorInfo | 显示特定于手机的用户注册的第二重身份验证的界面。 |
ProjectConfig | 表示项目配置。 |
ProjectConfigManager | 管理(获取和更新)当前项目配置。 |
租户 | 表示租户配置。要支持多租户,需要使用 Google Cloud 的 Identity Platform (GCIP)。如需详细了解 GCIP(包括价格和功能),请参阅 GCIP 文档。必须先通过 Cloud Console 界面允许租户访问 Google Cloud Identity Platform 项目,然后才能在该项目中使用多租户。租户配置会提供显示名称、租户标识符和电子邮件身份验证配置等信息。对于 OIDC/SAML 提供方配置管理,应使用 TenantAwareAuth 实例(而不是 Tenant )来检索租户上已配置的 IdP 的列表。请注意,在配置这些提供商时,租户会继承其父项目的列入白名单的网域及其经过身份验证的重定向 URI。此外,租户的所有其他设置也会被继承。这些项目需要通过 Cloud 控制台界面进行管理。 |
TenantAwareAuth | 租户感知的 Auth 接口,用于管理用户、配置 SAML/OIDC 提供方、为重设密码、验证电子邮件等特定租户生成电子邮件链接。要支持多租户,需要使用 Google Cloud 的 Identity Platform (GCIP)。如需详细了解 GCIP(包括价格和功能),请参阅 GCIP 文档。每个租户都包含自己的身份提供方、设置和用户组。使用 TenantAwareAuth ,您还可以管理特定租户的用户和相应的 OIDC/SAML 配置,还可以验证登录到特定租户的用户的 ID 令牌,还可以为属于该租户的用户生成电子邮件操作链接。通过调用 TenantManager.authForTenant() 可以实例化特定 tenantId 的 TenantAwareAuth 实例。 |
TenantManager | 定义用于管理租户相关操作的租户管理员。其中包括:
|
UserInfo | 表示来自第三方身份提供方(如 Google 或 Facebook)的用户信息。 |
UserMetadata | 表示用户的元数据。 |
UserRecord | 表示用户。 |
接口
接口 | 说明 |
---|---|
ActionCodeSettings | 此接口定义了必需的继续/状态网址,以及可选的 Android 和 iOS 软件包标识符。 |
AllowByDefault | 定义政策:默认情况下允许所有区域,并将不允许的区域添加到禁止列表中。 |
AllowByDefaultWrap | allowByDefault 接口的互斥短信区域配置 |
AllowlistOnly | 将区域明确添加到许可名单中,以仅允许此类区域使用。 |
AllowlistOnlyWrap | allowlistOnly 接口的互斥短信区域配置 |
AuthProviderConfigFilter | 用于列出提供程序配置的过滤条件界面。这用于通过 BaseAuth.listProviderConfigs() 指定如何列出已配置的身份提供方。 |
BaseAuthProviderConfig | 身份验证提供方的基本配置界面。 |
BaseCreateMultiFactorInfoRequest | 此接口显示了针对 CreateRequest 的用户注册的第二重身份验证的基本属性。 |
BaseUpdateMultiFactorInfoRequest | 此接口显示了针对 UpdateRequest 的用户注册的第二重身份验证的常见属性。 |
CreatePhoneMultiFactorInfoRequest | 此接口代表针对 CreateRequest 的特定于手机的用户注册的第二重身份验证。 |
CreateRequest | 表示要在要创建的新用户记录上设置的属性的接口。 |
CustomStrengthOptionsConfig | 对密码政策强制执行的限制条件 |
DecodingAuthBlockingToken | |
DecodingIdToken | 表示从 BaseAuth.verifyIdToken() 方法返回的已解码 Firebase ID 令牌的接口。Firebase ID 令牌是符合 OpenID Connect 规范的 JSON Web 令牌 (JWT)。请参阅 [OpenID Connect 规范的“ID 令牌”部分](http://openid.net/specs/openid-connect-core-1_0.html#IDToken),详细了解以下特定属性。 |
DeleteUsersResult | 表示 BaseAuth.deleteUsers() 的结果。API。 |
EmailIdentifier | 用于通过电子邮件查找账号。请参阅 BaseAuth.getUsers()。 |
EmailPrivacyConfig | 项目或租户的电子邮件隐私权配置。 |
EmailSignInProviderConfig | 电子邮件登录提供方配置。 |
GetUsersResult | 表示 BaseAuth.getUsers() API 的结果。 |
ListProviderConfigResults | 用于列出提供程序配置的响应界面。只有在列出所有身份提供方的标识符时,BaseAuth.listProviderConfigs() 进行配置。 |
ListTenantsResult | 表示从 TenantManager.listTenants() 操作返回的对象的接口。包含当前批次的租户列表和下一页令牌(如果有)。 |
ListUsersResult 中 | 表示从 BaseAuth.listUsers() 操作返回的对象的接口。包含当前批次的用户列表和下一页令牌(如果有)。 |
MultiFactorConfig | 表示多重身份验证配置的接口。此属性可用于定义是启用还是停用多重身份验证,以及支持的第二重验证列表。 |
MultiFactorCreateSettings | 与多重身份验证相关的用户设置。 |
MultiFactorProviderConfig | 表示多重身份验证提供方配置的接口。此接口用于短信以外的第二重身份验证提供商。目前只支持 TOTP。 |
MultiFactorUpdateSettings | 用于更新操作的多重身份验证用户设置。 |
OAuthResponseType | 表示 OAuth 授权流程的 OIDC 提供方响应对象的接口。必须选择以下设置之一:
|
OIDCAuthProviderConfig | [OIDC](https://openid.net/specs/openid-connect-core-1_0-final.html) 身份验证提供方配置界面。您可以通过 BaseAuth.createProviderConfig() 创建 OIDC 提供方。 |
OIDCUpdateAuthProviderRequest | 用于更新 OIDC 身份验证提供方的请求接口。这在通过 BaseAuth.updateProviderConfig() 更新 OIDC 提供方的配置时使用此方法。 |
PasswordPolicyConfig | 项目或租户的密码政策配置 |
PhoneIdentifier | 用于根据电话号码查找账号。请参阅 BaseAuth.getUsers()。 |
ProviderIdentifier | 用于联合提供方查找账号。请参阅 BaseAuth.getUsers()。 |
RecaptchaConfig | 用于更新 reCAPTCHA 配置的请求接口。启用 reCAPTCHA Enterprise 集成即表示您同意 reCAPTCHA Enterprise 服务条款。 |
RecaptchaKey | reCAPTCHA 密钥配置。 |
RecaptchaManagedRule | reCAPTCHA 操作规则的配置。 |
SAMLAuthProviderConfig | [SAML](http://docs.oasis-open.org/security/saml/Post2.0/sstc-saml-tech-overview-2.0.html) 身份验证提供程序配置界面。您可以通过 BaseAuth.createProviderConfig() 创建 SAML 提供方。 |
SAMLUpdateAuthProviderRequest | 用于更新 SAML 身份验证提供方的请求接口。通过 BaseAuth.updateProviderConfig() 更新 SAML 提供方的配置时,会用到此属性。 |
SessionCookieOptions | 表示 BaseAuth.createSessionCookie() 方法所需的会话 Cookie 选项的接口。 |
TotpMultiFactorProviderConfig | 显示 TOTP 双重身份验证配置设置的接口。 |
UidIdentifier | 用于根据 uid 查找账号。请参阅 BaseAuth.getUsers()。 |
UpdatePhoneMultiFactorInfoRequest | 此接口代表针对 UpdateRequest 的特定于手机的用户注册的第二重身份验证。 |
UpdateProjectConfigRequest | 表示要在提供的项目配置上更新的属性的接口。 |
UpdateRequest | 表示要针对指定用户更新的属性的接口。 |
UpdateTenantRequest | 表示要在提供的租户上更新的属性的接口。 |
UserImportOptions | 表示 BaseAuth.importUsers() 方法所需的用户导入选项的接口。这用于提供密码哈希算法信息。 |
UserImportRecord | 表示通过 BaseAuth.importUsers() 方法导入 Firebase Auth 的用户的接口。 |
UserImportResult | 表示 BaseAuth.importUsers() 方法针对批量导入用户到 Firebase Auth 时所得到的响应的接口。 |
UserMetadataRequest | 导入用户时要包含的用户元数据。 |
UserProvider | 表示可与 Firebase 用户相关联的用户身份提供方。 |
UserProviderRequest | 导入用户时要包含的用户提供方数据。 |
类型别名
类型别名 | 说明 |
---|---|
AuthFactorType | 标识第二重身份验证类型。 |
AuthProviderConfig | Auth 提供方配置类型。BaseAuth.createProviderConfig()。 |
CreateMultiFactorInfoRequest | 表示针对 CreateRequest 的用户注册的第二重身份验证的属性。 |
CreateTenantRequest | 表示要在新租户上设置的属性的接口。 |
HashAlgorithmType | |
MultiFactorConfigState | 标识多重身份验证状态。 |
PasswordPolicyEnforcementState | 密码政策的强制执行状态。 |
RecaptchaAction | 对受 reCAPTCHA 保护的请求执行的操作。-“阻止”:受 reCAPTCHA 保护的请求将被阻止。 |
RecaptchaKeyClientType | 密钥的平台类型。 |
RecaptchaProviderEnforcementState | reCAPTCHA 保护的强制执行状态。-“OFF”:未强制执行。-“AUDIT”:创建评估,但不强制执行结果。-“ENFORCE”:创建评估并强制执行结果。 |
SmsRegionConfig | 用于更新短信区域配置的请求接口。配置允许用户发送验证短信的区域。此电话号码依据的是目标电话号码的呼叫代码。 |
UpdateAuthProviderRequest | |
UpdateMultiFactorInfoRequest | 表示针对 UpdateRequest 的用户注册的第二重身份验证的属性。 |
UserIdentifier | 确定要查找的用户。 |
getAuth(应用)
获取默认应用或指定应用的 Auth 服务。
可以不使用任何参数调用 getAuth()
来访问默认应用的 Auth 服务,也可以调用 getAuth(app)
来访问与特定应用关联的 Auth 服务。
签名:
export declare function getAuth(app?: App): Auth;
参数
参数 | 类型 | 说明 |
---|---|---|
应用 | 应用 |
返回:
示例 1
// Get the Auth service for the default app
const defaultAuth = getAuth();
示例 2
// Get the Auth service for a given app
const otherAuth = getAuth(otherApp);
AuthFactor 类型
标识第二重身份验证类型。
签名:
export type AuthFactorType = 'phone';
AuthProviderConfig
Auth 提供方配置类型。BaseAuth.createProviderConfig()。
签名:
export type AuthProviderConfig = SAMLAuthProviderConfig | OIDCAuthProviderConfig;
CreateMultiFactorInfoRequest
表示针对 CreateRequest
的用户注册的第二重身份验证的属性。
签名:
export type CreateMultiFactorInfoRequest = CreatePhoneMultiFactorInfoRequest;
CreateTenantRequest
表示要在新租户上设置的属性的接口。
签名:
export type CreateTenantRequest = UpdateTenantRequest;
哈希算法类型
签名:
export type HashAlgorithmType = 'SCRYPT' | 'STANDARD_SCRYPT' | 'HMAC_SHA512' | 'HMAC_SHA256' | 'HMAC_SHA1' | 'HMAC_MD5' | 'MD5' | 'PBKDF_SHA1' | 'BCRYPT' | 'PBKDF2_SHA256' | 'SHA512' | 'SHA256' | 'SHA1';
MultiFactorConfigState
标识多重身份验证状态。
签名:
export type MultiFactorConfigState = 'ENABLED' | 'DISABLED';
PasswordPolicyEnforcementState
密码政策的强制执行状态。
签名:
export type PasswordPolicyEnforcementState = 'ENFORCE' | 'OFF';
RecaptchaAction
对受 reCAPTCHA 保护的请求执行的操作。-“阻止”:受 reCAPTCHA 保护的请求将被阻止。
签名:
export type RecaptchaAction = 'BLOCK';
RecaptchaKeyClientType
密钥的平台类型。
签名:
export type RecaptchaKeyClientType = 'WEB' | 'IOS' | 'ANDROID';
RecaptchaProviderEnforcementState
reCAPTCHA 保护的强制执行状态。-“OFF”:未强制执行。-“AUDIT”:创建评估,但不强制执行结果。-“ENFORCE”:创建评估并强制执行结果。
签名:
export type RecaptchaProviderEnforcementState = 'OFF' | 'AUDIT' | 'ENFORCE';
SmsRegionConfig
用于更新短信区域配置的请求接口。配置允许用户发送验证短信的区域。此电话号码依据的是目标电话号码的呼叫代码。
签名:
export type SmsRegionConfig = AllowByDefaultWrap | AllowlistOnlyWrap;
UpdateAuthProviderRequest 的请求
签名:
export type UpdateAuthProviderRequest = SAMLUpdateAuthProviderRequest | OIDCUpdateAuthProviderRequest;
UpdateMultiFactorInfoRequest
表示针对 UpdateRequest
的用户注册的第二重身份验证的属性。
签名:
export type UpdateMultiFactorInfoRequest = UpdatePhoneMultiFactorInfoRequest;
用户标识符
确定要查找的用户。
签名:
export type UserIdentifier = UidIdentifier | EmailIdentifier | PhoneIdentifier | ProviderIdentifier;