MCPcopy Create free account
hub / github.com/bewcloud/bewcloud / createSessionCookie

Function createSessionCookie

lib/auth.ts:221–250  ·  view source on GitHub ↗
(
  request: Request,
  user: User,
  response: Response,
  isShortLived = false,
)

Source from the content-addressed store, hash-verified

219}
220
221export async function createSessionCookie(
222 request: Request,
223 user: User,
224 response: Response,
225 isShortLived = false,
226) {
227 const newSession = await UserSessionModel.create(user, isShortLived);
228
229 // Generate response with session cookie
230 const token = await generateToken({ user_id: user.id, session_id: newSession.id });
231
232 const cookie: Cookie = {
233 name: COOKIE_NAME,
234 value: token,
235 expires: newSession.expires_at,
236 path: '/',
237 secure: isRunningLocally(request) ? false : true,
238 httpOnly: true,
239 sameSite: 'Lax',
240 domain: await resolveCookieDomain(request),
241 };
242
243 if (await AppConfig.isCookieDomainSecurityDisabled()) {
244 delete cookie.domain;
245 }
246
247 setCookie(response.headers, cookie);
248
249 return response;
250}

Callers 1

createSessionResponseFunction · 0.85

Calls 5

isRunningLocallyFunction · 0.90
generateTokenFunction · 0.85
resolveCookieDomainFunction · 0.85
createMethod · 0.45

Tested by

no test coverage detected