UNPKG

moleculer-iam

Version:

Centralized IAM module for moleculer. Including a certified OIDC provider and an Identity provider for user profile, credentials, and custom claims management. Custom claims could be defined/updated by declarative schema which contains claims validation a

31 lines 1.09 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.buildFederateRoutes = void 0; const idp_1 = require("../../idp"); function buildFederateRoutes(builder, opts) { const federation = builder.app.federation; builder.app.router .post("/federate", async (ctx, next) => { ctx.op.assertPrompt(); const provider = ctx.request.body.provider; return federation.handleRequest(ctx, next, provider); }) // handle federation callback .get("/federate/:provider", async (ctx, next) => { ctx.op.assertPrompt(); const provider = ctx.params.provider; const user = await federation.handleCallback(ctx, next, provider); if (!user) { throw new idp_1.IAMErrors.IdentityNotExists(); } // make user signed in return ctx.op.redirectWithUpdate({ login: { account: user.id, remember: true, }, }); }); } exports.buildFederateRoutes = buildFederateRoutes; //# sourceMappingURL=federate.js.map