UNPKG

keycloak-lambda-authorizer

Version:
28 lines 1.11 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.DefaultJWKS = void 0; const node_forge_1 = __importDefault(require("node-forge")); // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore const rsa_pem_to_jwk_1 = __importDefault(require("rsa-pem-to-jwk")); class DefaultJWKS { publicKeyTransform(publicKey) { const m = /^-----BEGIN RSA PUBLIC KEY-----/.exec(publicKey); if (m) { return publicKey; } const certPem = node_forge_1.default.pki.certificateFromPem(publicKey); let p = node_forge_1.default.pki.publicKeyToRSAPublicKeyPem(certPem.publicKey); p = p.replace(/\r/g, ''); return p; } json(publicKey) { const newPk = this.publicKeyTransform(publicKey.key); return { keys: [(0, rsa_pem_to_jwk_1.default)(newPk, { use: 'sig' }, 'public')] }; } } exports.DefaultJWKS = DefaultJWKS; //# sourceMappingURL=JWKS.js.map