¿Cómo verificar si el usuario está autenticado en Firebase y Express / Node.js?

Si tengo una página a la que solo pueden acceder usuarios autenticados, ¿cómo verifico si un usuario está autenticado o no?

Intenté usar (firebase.auth().currentUser !== null) pero (firebase.auth().currentUser !== null) un error que dice: TypeError: firebase.auth is not a function

Tengo la siguiente configuración:

 const express = require('express'), firebase = require('firebase'), app = express(); app.use(express.static("/public")); var config = { apiKey: "xxxx", authDomain: "xxxx", databaseURL: "xxxx", projectId: "xxxx", storageBucket: "xxxx", messagingSenderId: "xxxx" }; firebase.initializeApp(config); app.get("/dashboard", (request, response) => { if (firebase.auth().currentUser !== null){ response.render("dashboard.ejs") } else{ response.render("login.ejs"); } }); 

Su código está en una aplicación Express, lo que significa que se ejecuta en el servidor. El Firebase SDK que está utilizando está diseñado para ser utilizado en dispositivos cliente y no funcionará bien en su entorno Express. No hay ningún concepto de “usuario actual” en el servidor. Por supuesto, se puede pasar un ID de usuario al servidor con cada solicitud, pero el servidor en sí no tiene estado.

En su servidor Express querrá usar el SDK de administración de Firebase. Eche un vistazo a este ejemplo de Funciones de la Nube sobre cómo construir un punto final autenticado .