botbook/node_modules/@azure/static-web-apps-cli/dist/msha/handlers/auth.handler.js
Rodrigo Rodriguez 6ae15fe3e5 Updated.
2024-09-04 13:13:15 -03:00

36 lines
No EOL
1.4 KiB
JavaScript

import { logger, logRequest } from "../../core/utils/logger.js";
import { processAuth } from "../auth/index.js";
import { handleErrorPage } from "./error-page.handler.js";
export async function handleAuthRequest(req, res, matchedRoute, userConfig) {
logger.silly(`processing auth request`);
const statusCode = await processAuth(req, res, matchedRoute?.rewrite, userConfig?.auth);
if (statusCode >= 400) {
logger.silly(` - auth returned ${statusCode}`);
}
logRequest(req, "", statusCode);
}
export function getAuthBlockResponse(req, res, userConfig, matchingRoute) {
switch (matchingRoute.statusCode) {
case 404:
return handleErrorPage(req, res, 404, userConfig?.responseOverrides);
case 401:
return handleErrorPage(req, res, 401, userConfig?.responseOverrides);
case 403:
return handleErrorPage(req, res, 403, userConfig?.responseOverrides);
default:
break;
}
// Return status code according to route
res.statusCode = Number(matchingRoute.statusCode) || 404;
return;
}
export function isAuthRequest(req) {
return !!(req.headers.host?.includes("identity") || req.url?.startsWith("/.auth"));
}
export function isLoginRequest(requestPath) {
return !!requestPath?.startsWith("/.auth/login");
}
export function isLogoutRequest(requestPath) {
return !!requestPath?.startsWith("/.auth/logout");
}
//# sourceMappingURL=auth.handler.js.map