TenantAwareAuth class

Interfaz de autenticación compatible con Auth que se utiliza para administrar usuarios, configurar proveedores SAML/OIDC, generar enlaces de correo electrónico para restablecer contraseñas, verificar correos electrónicos, etc. para inquilinos específicos.

La compatibilidad con múltiples inquilinos requiere Identity Platform (GCIP) de Google Cloud. Para obtener más información sobre GCIP, incluidos precios y funciones, consulte la documentación de GCIP. .

Cada inquilino contiene sus propios proveedores de identidad, configuraciones y conjuntos de usuarios. Usando TenantAwareAuth , también se pueden administrar los usuarios de un inquilino específico y las configuraciones OIDC/SAML correspondientes, se pueden verificar los tokens de identificación para los usuarios que iniciaron sesión en un inquilino específico y también se pueden generar enlaces de acción de correo electrónico para los usuarios que pertenecen al inquilino.

Se pueden crear instancias TenantAwareAuth para un tenantId específico llamando a TenantManager.authForTenant() .

Firma:

export declare class TenantAwareAuth extends BaseAuth 

Extiende: BaseAuth

Propiedades

Propiedad Modificadores Tipo Descripción
ID de inquilino cadena El identificador de inquilino correspondiente a esta instancia TenantAwareAuth . Todas las llamadas a las API de administración de usuarios, las API de administración de proveedores OIDC/SAML, las API de generación de enlaces de correo electrónico, etc., solo se aplicarán dentro del alcance de este inquilino.

Métodos

Método Modificadores Descripción
crearSessionCookie(idToken, sessionCookieOptions) Crea una nueva cookie de sesión de Firebase con las opciones especificadas. La cadena JWT creada se puede configurar como una cookie de sesión del lado del servidor con una política de cookies personalizada y usarse para la gestión de sesiones. La cookie de sesión JWT tendrá las mismas reclamaciones de carga útil que el token de identificación proporcionado. Consulte Administrar cookies de sesión para ver ejemplos de código y documentación detallada.
verificarIdToken(idToken, verificarRevocado) Verifica un token de ID de Firebase (JWT). Si el token es válido, la promesa se cumple con las afirmaciones decodificadas del token; de lo contrario, la promesa se rechaza. Si checkRevoked se establece en verdadero, primero verifica si el usuario correspondiente está deshabilitado. En caso afirmativo, se genera un error auth/user-disabled . En caso negativo, verifica si la sesión correspondiente al token de ID fue revocada. Si la sesión del usuario correspondiente fue invalidada, se genera un error auth/id-token-revoked . Si no se especifica el cheque no se aplica. Consulte Verificar tokens de identificación para obtener ejemplos de código y documentación detallada.
verificarSessionCookie(sessionCookie, checkRevoked) Verifica una cookie de sesión de Firebase. Devuelve una Promesa con las afirmaciones de cookies. Rechaza la promesa si no se pudo verificar la cookie. Si checkRevoked se establece en verdadero, primero verifica si el usuario correspondiente está deshabilitado: en caso afirmativo, se genera un error auth/user-disabled . En caso negativo, verifica si la sesión correspondiente a la cookie de sesión fue revocada. Si la sesión del usuario correspondiente fue invalidada, se genera un error auth/session-cookie-revoked . Si no se especifica, la verificación no se realiza. Consulte Verificar cookies de sesión para obtener ejemplos de código y documentación detallada.

TenantAwareAuth.tenantId

El identificador de inquilino correspondiente a esta instancia TenantAwareAuth . Todas las llamadas a las API de administración de usuarios, las API de administración de proveedores OIDC/SAML, las API de generación de enlaces de correo electrónico, etc., solo se aplicarán dentro del alcance de este inquilino.

Firma:

readonly tenantId: string;

TenantAwareAuth.createSessionCookie()

Crea una nueva cookie de sesión de Firebase con las opciones especificadas. La cadena JWT creada se puede configurar como una cookie de sesión del lado del servidor con una política de cookies personalizada y usarse para la gestión de sesiones. La cookie de sesión JWT tendrá las mismas reclamaciones de carga útil que el token de identificación proporcionado.

Consulte Administrar cookies de sesión para ver ejemplos de código y documentación detallada.

Firma:

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

Parámetros

Parámetro Tipo Descripción
token de identificación cadena El token de ID de Firebase que se intercambiará por una cookie de sesión.
opciones de cookies de sesión Opciones de cookies de sesión Las opciones de cookies de sesión que incluyen la duración de la sesión personalizada.

Devoluciones:

Promesa<cadena>

Una promesa que se resuelve correctamente con la cookie de sesión creada.

TenantAwareAuth.verifyIdToken()

Verifica un token de ID de Firebase (JWT). Si el token es válido, la promesa se cumple con las afirmaciones decodificadas del token; de lo contrario, la promesa se rechaza.

Si checkRevoked se establece en verdadero, primero verifica si el usuario correspondiente está deshabilitado. En caso afirmativo, se genera un error auth/user-disabled . En caso negativo, verifica si la sesión correspondiente al token de ID fue revocada. Si la sesión del usuario correspondiente fue invalidada, se genera un error auth/id-token-revoked . Si no se especifica el cheque no se aplica.

Consulte Verificar tokens de identificación para obtener ejemplos de código y documentación detallada.

Firma:

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

Parámetros

Parámetro Tipo Descripción
token de identificación cadena El token de identificación que se va a verificar.
comprobarRevocado booleano Si se debe verificar si el token de identificación fue revocado. Esto requiere una solicitud adicional al backend de Firebase Auth para verificar el tiempo de tokensValidAfterTime para el usuario correspondiente. Cuando no se especifica, esta verificación adicional no se aplica.

Devoluciones:

Promesa< DecodedIdToken >

Una promesa cumplida con las afirmaciones decodificadas del token si el token de identificación es válido; de lo contrario, una promesa rechazada.

TenantAwareAuth.verifySessionCookie()

Verifica una cookie de sesión de Firebase. Devuelve una Promesa con las afirmaciones de cookies. Rechaza la promesa si no se pudo verificar la cookie.

Si checkRevoked se establece en verdadero, primero verifica si el usuario correspondiente está deshabilitado: en caso afirmativo, se genera un error auth/user-disabled . En caso negativo, verifica si la sesión correspondiente a la cookie de sesión fue revocada. Si la sesión del usuario correspondiente fue invalidada, se genera un error auth/session-cookie-revoked . Si no se especifica, la verificación no se realiza.

Consulte Verificar cookies de sesión para obtener ejemplos de código y documentación detallada.

Firma:

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

Parámetros

Parámetro Tipo Descripción
cookie de sesión cadena La cookie de sesión para verificar.
comprobarRevocado booleano

Devoluciones:

Promesa< DecodedIdToken >

Una promesa cumplida con las afirmaciones decodificadas de la cookie de sesión si la cookie de sesión es válida; de lo contrario, una promesa rechazada.