feature: remember if someone has logged in and default to a login screen
fix: some includes needed updating feature: some more overrides
This commit is contained in:
parent
ebf0e4428e
commit
7b3494cc32
12 changed files with 90 additions and 55 deletions
|
|
@ -6,10 +6,11 @@ import { SESSION, SESSIONS } from '../../../models/session.ts';
|
|||
import { TOTP_ENTRIES } from '../../../models/totp_entry.ts';
|
||||
import { encodeBase64 } from '@std/encoding/base64';
|
||||
import parse_body from '../../../utils/bodyparser.ts';
|
||||
import { get_session, get_user, PRECHECK_TABLE, require_user, SESSION_ID_TOKEN, SESSION_SECRET_TOKEN } from '../../../utils/prechecks.ts';
|
||||
import { AUTHED_BEFORE_COOKIE_ID, get_session, get_user, PRECHECK_TABLE, require_user, SESSION_ID_TOKEN, SESSION_SECRET_TOKEN } from '../../../utils/prechecks.ts';
|
||||
import * as bcrypt from '@da/bcrypt';
|
||||
import { verifyTotp } from '../../../utils/totp.ts';
|
||||
|
||||
const AUTHED_BEFORE_EXPIRATION: number = 399 * (24 * (60 * (60 * 1_000))); // 399 days
|
||||
const DEFAULT_SESSION_TIME: number = 365 * (24 * (60 * (60 * 1_000))); // 365 days
|
||||
|
||||
export const PRECHECKS: PRECHECK_TABLE = {};
|
||||
|
|
@ -206,6 +207,7 @@ export async function create_new_session(session_settings: SESSION_INFO): Promis
|
|||
const headers = new Headers();
|
||||
|
||||
const expires_in_utc = new Date(session.timestamps.expires).toUTCString();
|
||||
headers.append('Set-Cookie', `${AUTHED_BEFORE_COOKIE_ID}=1; Path=/; Secure; Expires=${new Date(new Date(now).valueOf() + AUTHED_BEFORE_EXPIRATION).toUTCString()}`);
|
||||
headers.append('Set-Cookie', `${SESSION_ID_TOKEN}=${session.id}; Path=/; Secure; Expires=${expires_in_utc}`);
|
||||
headers.append(`x-${SESSION_ID_TOKEN}`, session.id);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue