firebase-admin.auth package

Firebase 驗證。

函式

函式 說明
getAuth(應用程式) 取得預設應用程式或特定應用程式的驗證服務。不需引數即可呼叫 getAuth(),藉此存取預設應用程式的驗證服務,或使用 getAuth(app) 存取與特定應用程式相關聯的 Auth 服務。

類別

類別 說明
驗證 繫結至所提供應用程式的驗證服務,驗證執行個體可以有多個用戶群。
AuthClientErrorCode 驗證用戶端錯誤代碼和預設訊息。
BaseAuth AuthTenantAwareAuth API 的通用父項介面。
FirebaseAuthError Firebase 驗證錯誤代碼結構。這會擴充 PrefixedFirebaseError。
MultiFactorInfo 這個介面代表使用者註冊的雙重驗證常見屬性。
多重要素設定 多重驗證相關使用者設定。
PhoneMultiFactorInfo 此介面代表使用者已註冊的雙重驗證手機。
專案設定 代表專案設定。
ProjectConfigManager 管理 (取得與更新) 目前的專案設定。
用戶群 代表用戶群設定。多用戶群支援需要 Google Cloud Identity Platform (GCIP)。如要進一步瞭解 GCIP (包括定價和功能),請參閱 GCIP 說明文件在 Google Cloud Identity Platform 專案中可以使用多用戶群架構前,您必須先透過 Cloud 控制台 UI 為該專案啟用用戶群。用戶群設定會提供顯示名稱、用戶群 ID 和電子郵件驗證設定等資訊。如要管理 OIDC/SAML 供應商設定,請使用 TenantAwareAuth 執行個體,而不是 Tenant 來擷取用戶群中已設定 IdP 的清單。設定這些提供者時請注意,用戶群會繼承所屬上層專案的加入許可清單網域和經過驗證的重新導向 URI。用戶群的所有其他設定也會沿用。必須透過 Cloud 控制台使用者介面管理。
TenantAwareAuth 用戶群感知 Auth 介面,可為特定用戶群管理使用者、設定 SAML/OIDC 供應商、產生用於重設密碼的電子郵件連結、電子郵件驗證等。如要支援多用戶群架構,必須使用 Google Cloud Identity Platform (GCIP)。如要進一步瞭解 GCIP (包括定價和功能),請參閱 GCIP 說明文件每個用戶群都有自己的識別資訊提供者、設定和一組使用者。透過 TenantAwareAuth,您也可以管理特定用戶群和相應的 OIDC/SAML 設定的使用者,也可以驗證登入特定用戶群的使用者 ID 權杖,並為屬於該用戶群的使用者產生電子郵件動作連結。TenantAwareAuth特定 tenantId 的執行個體可呼叫 TenantManager.authForTenant() 來例項化。
TenantManager 定義用來協助管理用戶群相關作業的用戶群管理員。其中包括:
  • 可以建立、更新、列出、取得及刪除基礎專案的用戶群。
  • 取得 TenantAwareAuth 執行個體,以在指定用戶群內執行驗證相關作業 (使用者管理、提供者設定管理、權杖驗證、電子郵件連結產生等)。
使用者資訊 代表使用者在 Google 或 Facebook 等第三方識別資訊提供者取得的資訊。
使用者中繼資料 代表使用者的中繼資料。
使用者記錄 代表使用者。

介面

介面 說明
ActionCodeSettings 這個介面可定義必要的繼續/狀態網址,並包含選用的 Android 和 iOS 軟體包 ID。
AllowByDefault 定義某項政策預設為允許所有區域,並將不允許的區域加入不允許清單。
AllowByDefaultWrap allowByDefault 介面的互斥簡訊區域設定
僅限許可清單 這項政策會明確地將特定區域加入許可清單,藉此定義僅允許該區域的政策。
AllowlistOnlyWrap allowlistOnly 介面與互斥的簡訊地區設定
AuthProviderConfig 篩選器 篩選器介面,用於列出提供者設定。在指定如何透過 BaseAuth.listProviderConfigs() 列出已設定的識別資訊提供者時,就要用它。
BaseAuthProviderConfig 基本驗證提供者設定介面。
BaseCreateMultiFactorInfoRequest 這個介面代表使用者註冊的 CreateRequest 第二個因子的基本屬性。
BaseUpdateMultiFactorInfoRequest 這個介面代表使用者針對 UpdateRequest 註冊的雙重驗證的常見屬性。
CreatePhoneMultiFactorInfoRequest 此介面代表使用者針對 CreateRequest 所註冊的次要驗證條件。
建立要求 這個介面代表要針對要建立的新使用者記錄設定的屬性。
CustomStrengthOptionsConfig 要強制執行密碼政策的限制
DecodedAuthBlockingToken
解碼 IDToken 這個介面代表已解碼的 Firebase ID 權杖,由 BaseAuth.verifyIdToken() 方法傳回。Firebase ID 權杖是符合 OpenID Connect 規格的 JSON Web Token (JWT)。如要進一步瞭解下列特定屬性,請參閱 [OpenID Connect 規格的 ID 權杖一節](http://openid.net/specs/openid-connect-core-1_0.html#IDToken)。
DeleteUsersResult 代表 BaseAuth.deleteUsers() 的結果。也能使用 Google Cloud CLI 或 Compute Engine API
電子郵件 ID 用於透過電子郵件查詢帳戶。請參閱 BaseAuth.getUsers()
EmailPrivacyConfig 專案或用戶群的電子郵件隱私權設定。
EmailSignInProviderConfig 電子郵件登入供應商設定。
GetUsersResult 代表 BaseAuth.getUsers() API 的結果。
ListProviderConfigResults 列出提供者設定的回應介面。只有在列出所有識別資訊提供者時,才能使用這個選項透過 BaseAuth.listProviderConfigs() 下載設定。
ListTenants 結果 這個介面代表 TenantManager.listTenants() 作業傳回的物件。包含目前批次的用戶群清單,以及下一頁權杖 (如有)。
ListUsersResult 這個介面代表 BaseAuth.listUsers() 作業傳回的物件。包含目前批次和下一頁符記的使用者清單 (如果有的話)。
MultiFactorConfig 代表多重要素設定的介面。這可用於定義是否啟用或停用多重驗證功能,以及支援的雙重驗證清單。
MultiFactorCreateSettings 建立作業的多重因素相關使用者設定。
MultiFactorProviderConfig 多重驗證供應商設定的介面。這個介面用於簡訊以外的雙重驗證服務供應商。目前僅支援 TOTP。
MultiFactorUpdateSettings 更新作業的多因素相關使用者設定。
OAuthResponseType 這個介面代表 OIDC 供應商針對 OAuth 授權流程的回應物件。必須提供下列其中一項設定:
  • 將程式碼流程的 code 設為 true
  • 將 ID 權杖流程的 idToken 設為 true
OIDCAuthProviderConfig [OIDC](https://openid.net/specs/openid-connect-core-1_0-final.html) 驗證提供者設定介面。您可以透過 BaseAuth.createProviderConfig() 建立 OIDC 提供者。
OIDCUpdateAuthProviderRequest 要求介面,用於更新 OIDC 驗證提供者。當您透過 BaseAuth.updateProviderConfig() 更新 OIDC 供應商設定時,會使用這個選項。
PasswordPolicyConfig 專案或用戶群的密碼政策設定
電話識別碼 用於依電話號碼查詢帳戶。請參閱 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 供應商設定時使用。
工作階段 Cookie 選項 這個介面代表 BaseAuth.createSessionCookie() 方法所需的工作階段 Cookie 選項。
TotpMultiFactorProviderConfig 代表 TOTP 雙重驗證配置設定的介面。
UidIdentifier 用於透過 uid 查詢帳戶。請參閱 BaseAuth.getUsers()
UpdatePhoneMultiFactorInfoRequest 此介面代表使用者針對 UpdateRequest 所註冊的次要驗證方式。
UpdateProjectConfigRequest 這個介面代表要在指定專案設定中更新的屬性。
UpdateRequest 這個介面代表要在指定使用者中更新的屬性。
UpdateTenantRequest 這個介面代表要在提供的用戶群中更新的屬性。
使用者匯入選項 這個介面代表 BaseAuth.importUsers() 方法需要的使用者匯入選項。用於提供密碼雜湊演算法資訊。
使用者匯入記錄 這個介面代表透過 BaseAuth.importUsers() 方法匯入 Firebase 驗證的使用者。
使用者匯入結果 這個介面代表用於批次將使用者匯入 Firebase Auth 的 BaseAuth.importUsers() 方法回應。
使用者中繼資料要求 匯入使用者時要包含的使用者中繼資料。
UserProvider 代表可與 Firebase 使用者建立關聯的使用者識別資訊提供者。
UserProviderRequest 匯入使用者時要包含的使用者提供者資料。

型別別名

類型別名 說明
AuthFactorType 識別第二因素類型。
AuthProviderConfig 驗證提供者設定類型。BaseAuth.createProviderConfig()
CreateMultiFactorInfoRequest 類型代表使用者註冊的 CreateRequest 雙重驗證屬性。
CreateTenantRequest 這個介面代表要在新用戶群中設定的屬性。
HashAlgorithmType
MultiFactorConfigState 識別多重要素設定狀態。
PasswordPolicyEnforcementState 密碼政策的強制執行狀態。
RecaptchaAction 針對受 reCAPTCHA 保護的要求採取的行動。-「BLOCK」:系統會封鎖受 reCAPTCHA 保護的要求。
RecaptchaKeyClientType 金鑰的平台類型。
RecaptchaProviderEnforcementState reCAPTCHA 保護措施的強制執行狀態。-「關閉」:未強制執行。- 「AUDIT」:建立評估作業,但不強制執行結果。- 「ENFORCE」:建立評估作業並強制執行結果。
SmsRegionConfig 更新簡訊區域設定的要求介面。設定使用者可在哪些地區傳送驗證簡訊。視目的地電話號碼的通話代碼而定。
UpdateAuthProviderRequest
UpdateMultiFactorInfoRequest 類型代表使用者註冊的 UpdateRequest 雙重驗證屬性。
使用者識別碼 識別要查詢的使用者,

getAuth(應用程式)

取得預設應用程式或特定應用程式的驗證服務。

呼叫 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);

AuthFactorType

識別第二因素類型。

簽名:

export type AuthFactorType = 'phone';

AuthProviderConfig

驗證提供者設定類型。BaseAuth.createProviderConfig()

簽名:

export type AuthProviderConfig = SAMLAuthProviderConfig | OIDCAuthProviderConfig;

建立 MultiFactorInfo 要求

類型代表使用者針對 CreateRequest 註冊的第二個因素屬性。

簽名:

export type CreateMultiFactorInfoRequest = CreatePhoneMultiFactorInfoRequest;

CreateTenantRequest

這個介面代表要在新用戶群中設定的屬性。

簽名:

export type CreateTenantRequest = UpdateTenantRequest;

HashAlgorithmType

簽名:

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';

密碼政策執行狀態

密碼政策的強制執行狀態。

簽名:

export type PasswordPolicyEnforcementState = 'ENFORCE' | 'OFF';

reCAPTCHA 動作

針對受 reCAPTCHA 保護的要求採取的行動。-「BLOCK」:系統會封鎖受 reCAPTCHA 保護的要求。

簽名:

export type RecaptchaAction = 'BLOCK';

RecaptchaKeyClientType

金鑰的平台類型。

簽名:

export type RecaptchaKeyClientType = 'WEB' | 'IOS' | 'ANDROID';

reCAPTCHAtchaProviderEnforcementState

reCAPTCHA 保護措施的強制執行狀態。-「關閉」:未強制執行。- 「AUDIT」:建立評估作業,但不強制執行結果。- 「ENFORCE」:建立評估作業並強制執行結果。

簽名:

export type RecaptchaProviderEnforcementState = 'OFF' | 'AUDIT' | 'ENFORCE';

SmsRegionConfig

更新簡訊區域設定的要求介面。設定使用者可在哪些地區傳送驗證簡訊。視目的地電話號碼的通話代碼而定。

簽名:

export type SmsRegionConfig = AllowByDefaultWrap | AllowlistOnlyWrap;

更新 AuthProvider 要求

簽名:

export type UpdateAuthProviderRequest = SAMLUpdateAuthProviderRequest | OIDCUpdateAuthProviderRequest;

更新 MultiFactorInfo 要求

類型代表使用者針對 UpdateRequest 註冊的雙重驗證屬性。

簽名:

export type UpdateMultiFactorInfoRequest = UpdatePhoneMultiFactorInfoRequest;

使用者 ID

識別要查詢的使用者,

簽名:

export type UserIdentifier = UidIdentifier | EmailIdentifier | PhoneIdentifier | ProviderIdentifier;