租用戶感知Auth
介面,用於管理使用者、配置 SAML/OIDC 提供者、為特定租用戶產生用於密碼重設的電子郵件連結、電子郵件驗證等。
多租戶支援需要 Google Cloud 的 Identity Platform (GCIP)。要了解有關 GCIP 的更多信息,包括定價和功能,請參閱GCIP 文檔。
每個租戶都包含自己的身分提供者、設定和使用者群組。使用TenantAwareAuth
也可以管理特定租用戶的使用者和對應的 OIDC/SAML 配置,可以驗證登入特定租用戶的用戶的 ID 令牌,也可以為屬於該租用戶的用戶產生電子郵件操作連結。
可以透過呼叫TenantManager.authForTenant()來實例化特定tenantId
的TenantAwareAuth
實例。
簽名:
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 的解碼聲明實現承諾;否則,就是被拒絕的承諾。