Imports const session = require("express-session"); const Keycloak = require("keycloak-connect"); const express = require("express"); const app = express(); Configurations // Configure session var memoryStore = new session.MemoryStore(); var keycloak = new Keycloak({ store: memoryStore }); app.use( session({ secret: "mySecret", resave: false, saveUninitialized: true, store: memoryStore }) ); // Attach middleware app.use(keycloak.middleware()); Public Route app.get("/", (req, res, next) => { res.json({ status: "Public Endpoint" }); }); Protected Route keycloak.protect() - middleware to check authenticated users app.get("/user/whoami", keycloak.protect(), (req, res, next) => { console.log(req.kauth.grant.access_token.content); let userinfo = { name: req.kauth.grant.access_token.content.name, email: req.kauth.grant.access_token.content.email, }; res.json(userinfo); });