租户感知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 的解码声明实现承诺;否则,就是被拒绝的承诺。