Added authorization server and backup of JSReport config. IO-585

This commit is contained in:
Patrick Fic
2021-01-07 10:10:55 -08:00
parent bf507821c0
commit 3da3fb96e2
36 changed files with 20037 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
var admin = require("firebase-admin");
const path = require("path");
require("dotenv").config({
path: path.resolve(
process.cwd(),
`.env.${process.env.NODE_ENV || "development"}`
),
});
var serviceAccount = require(process.env.FIREBASE_ADMINSDK_JSON);
admin.initializeApp({
credential: admin.credential.cert(serviceAccount),
databaseURL: process.env.FIREBASE_DATABASE_URL,
});
exports.admin = admin;
exports.validateFirebaseIdToken = async (req, res, next) => {
console.log("req.body", req.body);
let idToken = req.body.token;
try {
const decodedIdToken = await admin.auth().verifyIdToken(idToken);
//console.log("ID Token correctly decoded", decodedIdToken);
req.user = decodedIdToken;
res.send({ active: true, username: "admin" });
return;
} catch (error) {
console.error("Error while verifying Firebase ID token:", error);
res.status(403).send({ active: false });
return;
}
};