TenantAwareAuth class

租用戶感知Auth介面,用於管理使用者、配置 SAML/OIDC 提供者、為特定租用戶產生用於密碼重設的電子郵件連結、電子郵件驗證等。

多租戶支援需要 Google Cloud 的 Identity Platform (GCIP)。要了解有關 GCIP 的更多信息,包括定價和功能,請參閱GCIP 文檔

每個租戶都包含自己的身分提供者、設定和使用者群組。使用TenantAwareAuth也可以管理特定租用戶的使用者和對應的 OIDC/SAML 配置,可以驗證登入特定租用戶的用戶的 ID 令牌,也可以為屬於該租用戶的用戶產生電子郵件操作連結。

可以透過呼叫TenantManager.authForTenant()來實例化特定tenantIdTenantAwareAuth實例

簽名:

export declare class TenantAwareAuth extends BaseAuth 

擴充: BaseAuth

特性

財產修飾符類型描述
租戶ID細繩與此TenantAwareAuth實例對應的租用戶識別碼。對使用者管理 API、OIDC/SAML 提供者管理 API、電子郵件連結產生 API 等的所有呼叫將僅套用於此租用戶的範圍內。

方法

方法修飾符描述
建立SessionCookie(idToken,sessionCookieOptions)使用指定選項建立新的 Firebase 會話 cookie。建立的 JWT 字串可以設定為具有自訂 cookie 策略的伺服器端會話 cookie,並用於會話管理。會話 cookie JWT 將具有與提供的 ID 令牌相同的有效負載聲明。請參閱管理會話 Cookie以取得程式碼範例和詳細文件。
verifyIdToken(idToken, checkRevoked)驗證 Firebase ID 令牌 (JWT)。如果令牌有效,則透過令牌的解碼聲明來履行承諾;否則,該承諾將被拒絕。如果checkRevoked設定為true,首先驗證對應的使用者是否已停用。如果是,則會引發auth/user-disabled錯誤。如果否,則驗證與 ID 令牌對應的會話是否已撤​​銷。如果對應使用者的會話無效,則會拋出auth/id-token-revoked錯誤。如果未指定,則不套用檢查。請參閱驗證 ID 令牌以取得程式碼範例和詳細文件。
verifySessionCookie(sessionCookie, checkRevoked)驗證 Firebase 會話 cookie。傳回帶有 cookie 聲明的 Promise。如果無法驗證 cookie,則拒絕承諾。如果checkRevoked設為 true,首先驗證對應的使用者是否已停用:如果是,則拋出auth/user-disabled錯誤。如果不是,則驗證與會話cookie對應的會話是否被撤銷。如果對應使用者的會話無效,則會拋出auth/session-cookie-revoked錯誤。如果未指定,則不執行檢查。請參閱驗證會話 Cookie以取得程式碼範例和詳細文檔

TenantAwareAuth.tenantId

與此TenantAwareAuth實例對應的租用戶識別碼。對使用者管理 API、OIDC/SAML 提供者管理 API、電子郵件連結產生 API 等的所有呼叫將僅套用於此租用戶的範圍內。

簽名:

readonly tenantId: string;

TenantAwareAuth.createSessionCookie()

使用指定選項建立新的 Firebase 會話 cookie。建立的 JWT 字串可以設定為具有自訂 cookie 策略的伺服器端會話 cookie,並用於會話管理。會話 cookie JWT 將具有與提供的 ID 令牌相同的有效負載聲明。

請參閱管理會話 Cookie以取得程式碼範例和詳細文件。

簽名:

createSessionCookie(idToken: string, sessionCookieOptions: SessionCookieOptions): Promise<string>;

參數

範圍類型描述
id令牌細繩用於交換會話 cookie 的 Firebase ID 令牌。
會話Cookie選項會話Cookie選項會話 cookie 選項,其中包括自訂會話持續時間。

返回:

承諾<字串>

使用建立的會話 cookie 解決成功的承諾。

TenantAwareAuth.verifyIdToken()

驗證 Firebase ID 令牌 (JWT)。如果令牌有效,則透過令牌的解碼聲明來履行承諾;否則,該承諾將被拒絕。

如果checkRevoked設定為true,首先驗證對應的使用者是否已停用。如果是,則會引發auth/user-disabled錯誤。如果否,則驗證與 ID 令牌對應的會話是否已撤​​銷。如果對應使用者的會話無效,則會拋出auth/id-token-revoked錯誤。如果未指定,則不套用檢查。

請參閱驗證 ID 令牌以取得程式碼範例和詳細文件。

簽名:

verifyIdToken(idToken: string, checkRevoked?: boolean): Promise<DecodedIdToken>;

參數

範圍類型描述
id令牌細繩要驗證的 ID 令牌。
支票已撤銷布林值是否檢查ID令牌是否被撤銷。這需要向 Firebase Auth 後端發出額外請求,以檢查對應使用者的tokensValidAfterTime時間。如果未指定,則不套用此附加檢查。

返回:

Promise< DecodedIdToken >

如果 ID 令牌有效,則透過令牌的解碼聲明實現承諾;否則,就是被拒絕的承諾。

TenantAwareAuth.verifySessionCookie()

驗證 Firebase 會話 cookie。傳回帶有 cookie 聲明的 Promise。如果無法驗證 cookie,則拒絕承諾。

如果checkRevoked設為 true,首先驗證對應的使用者是否已停用:如果是,則拋出auth/user-disabled錯誤。如果不是,則驗證與會話cookie對應的會話是否被撤銷。如果對應使用者的會話無效,則會拋出auth/session-cookie-revoked錯誤。如果未指定,則不執行檢查。

請參閱驗證會話 Cookie以取得程式碼範例和詳細文檔

簽名:

verifySessionCookie(sessionCookie: string, checkRevoked?: boolean): Promise<DecodedIdToken>;

參數

範圍類型描述
會話Cookie細繩要驗證的會話 cookie。
支票已撤銷布林值

返回:

Promise< DecodedIdToken >

如果會話 cookie 有效,則透過會話 cookie 的解碼聲明實現承諾;否則,就是被拒絕的承諾。