@backstage/backend-defaults
Version:
Backend defaults used by Backstage backend apps
27 lines (21 loc) • 1 kB
JavaScript
;
var Router = require('express-promise-router');
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
var Router__default = /*#__PURE__*/_interopDefaultCompat(Router);
const WELL_KNOWN_COOKIE_PATH_V1 = "/.backstage/auth/v1/cookie";
function createCookieAuthRefreshMiddleware(options) {
const { auth, httpAuth } = options;
const router = Router__default.default();
router.get(WELL_KNOWN_COOKIE_PATH_V1, async (_, res) => {
const { expiresAt } = await httpAuth.issueUserCookie(res);
res.json({ expiresAt: expiresAt.toISOString() });
});
router.delete(WELL_KNOWN_COOKIE_PATH_V1, async (_, res) => {
const credentials = await auth.getNoneCredentials();
await httpAuth.issueUserCookie(res, { credentials });
res.status(204).end();
});
return router;
}
exports.createCookieAuthRefreshMiddleware = createCookieAuthRefreshMiddleware;
//# sourceMappingURL=createCookieAuthRefreshMiddleware.cjs.js.map