firebase-admin.auth package

Firebase 驗證。

函式

函式 說明
getAuth(應用程式) 取得預設應用程式或特定應用程式的 Auth 服務。getAuth() 可以在沒有引數的情況下呼叫,藉此存取預設應用程式的 Auth 服務,而 getAuth(app) 可用來存取與特定應用程式相關聯的 Auth 服務。

等級

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

介面

介面 說明
ActionCodeSettings 這個介面會定義必要的繼續/狀態網址,並包含選用的 Android 和 iOS 軟體包 ID。
AllowByDefault 定義政策,指定預設允許所有區域,並將不允許的區域加入不允許清單。
AllowByDefaultWrap allowByDefault 介面的互斥簡訊區域設定
僅限許可清單 定義政策僅限允許特定區域時,將區域明確加入許可清單。
AllowlistOnlyWrap allowlistOnly 介面的互斥簡訊區域設定
AuthProviderConfigFilter 用於列出提供者設定的篩選器介面。此選項可用來指定如何透過 BaseAuth.listProviderConfigs() 列出已設定的識別資訊提供者。
BaseAuthProviderConfig 基本驗證提供者設定介面。
BaseCreateMultiFactorInfoRequest 代表使用者註冊 CreateRequest 的雙重驗證基礎屬性的介面。
BaseUpdateMultiFactorInfoRequest 代表使用者註冊 UpdateRequest 的雙重驗證通用屬性的介面。
CreatePhoneMultiFactorInfoRequest 介面,代表使用者為手機註冊的 CreateRequest 雙重驗證。
建立要求 這個介面代表要建立新使用者記錄的屬性。
CustomStrengthOptionsConfig 要對密碼政策強制執行的限制
DecodedAuthBlockingToken
DecodedIdToken 代表已解碼的 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(). API 的結果。
電子郵件 ID 用於透過電子郵件查詢帳戶。請參閱 BaseAuth.getUsers()
EmailPrivacyConfig 專案或用戶群的電子郵件隱私權設定。
EmailSignInProviderConfig 電子郵件登入供應商設定。
GetUsersResult 代表 BaseAuth.getUsers() API 的結果。
ListProviderConfigResults 列出提供者設定的回應介面。只有在透過 BaseAuth.listProviderConfigs() 列出所有識別資訊提供者設定時,才能使用此功能。
ListTenantsResult 代表 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 專案或用戶群的密碼政策設定
電話號碼 ID 用於依據電話號碼查詢帳戶。請參閱 BaseAuth.getUsers()
ProviderID (供應商 ID) 用於由聯合供應商查詢帳戶。請參閱 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 提供者設定。
工作階段 CookieOptions 代表 BaseAuth.createSessionCookie() 方法需要的工作階段 Cookie 選項的介面。
TotpMultiFactorProviderConfig 代表 TOTP 雙重驗證配置設定的介面。
UidIdentifier 用於依「uid」查詢帳戶。請參閱 BaseAuth.getUsers()
UpdatePhoneMultiFactorInfoRequest 介面,代表使用者為 UpdateRequest 註冊的手機專用雙重驗證。
UpdateProjectConfigRequest 代表指定專案設定中要更新的屬性的介面。
UpdateRequest 代表要在指定使用者上更新的屬性的介面。
UpdateTenantRequest 代表要在指定用戶群上更新的屬性的介面。
使用者匯入選項 代表 BaseAuth.importUsers() 方法所需的使用者匯入選項的介面。這會用於提供密碼雜湊演算法資訊。
使用者匯入記錄 代表使用者透過 BaseAuth.importUsers() 方法匯入 Firebase 驗證的介面。
UserImportResult 代表 BaseAuth.importUsers() 方法回應的介面,用於批次匯入使用者至 Firebase Auth。
UserMetadataRequest 匯入使用者時要納入的使用者中繼資料。
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 雙重驗證屬性。
UserID 找出要查詢的使用者。

getAuth(應用程式)

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

呼叫 getAuth() 時無需使用引數,即可存取預設應用程式的 Auth 服務;如果呼叫 getAuth(app),則可存取與特定應用程式相關聯的 Auth 服務。

簽名:

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

參數

參數 類型 說明
app 應用程式

傳回:

驗證

範例 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;

建立多因素資訊要求

類型代表使用者註冊 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';

多重因素設定狀態

識別多重因素設定狀態。

簽名:

export type MultiFactorConfigState = 'ENABLED' | 'DISABLED';

密碼政策強制執行狀態

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

簽名:

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

reCAPTCHA 動作

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

簽名:

export type RecaptchaAction = 'BLOCK';

reCAPTCHA

金鑰的平台類型。

簽名:

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

RecaptchaProviderEnforcementState

reCAPTCHA 防護機制的強制執行狀態。-「關閉」:未強制執行。-「AUDIT」:建立評估,但不強制執行結果。- 'ENFORCE':建立評估並強制執行結果。

簽名:

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

SmsRegion 設定

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

簽名:

export type SmsRegionConfig = AllowByDefaultWrap | AllowlistOnlyWrap;

更新 AuthProviderRequest

簽名:

export type UpdateAuthProviderRequest = SAMLUpdateAuthProviderRequest | OIDCUpdateAuthProviderRequest;

更新多因素資訊要求

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

簽名:

export type UpdateMultiFactorInfoRequest = UpdatePhoneMultiFactorInfoRequest;

使用者 ID

找出要查詢的使用者。

簽名:

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