Notes/src/services/session_secret.ts

25 lines
597 B
TypeScript
Raw Normal View History

2017-10-23 23:38:52 -04:00
"use strict";
import fs from "fs";
import dataDir from "./data_dir.js";
import log from "./log.js";
2025-01-09 18:07:02 +02:00
import { randomSecureToken } from "./utils.js";
2017-10-23 23:38:52 -04:00
const sessionSecretPath = `${dataDir.TRILIUM_DATA_DIR}/session_secret.txt`;
2017-10-23 23:38:52 -04:00
let sessionSecret: string;
2017-10-23 23:38:52 -04:00
const ENCODING = "ascii";
2017-10-23 23:38:52 -04:00
if (!fs.existsSync(sessionSecretPath)) {
sessionSecret = randomSecureToken(64).slice(0, 64);
2017-10-23 23:38:52 -04:00
2017-10-24 22:17:48 -04:00
log.info("Generated session secret");
fs.writeFileSync(sessionSecretPath, sessionSecret, ENCODING);
2025-01-09 18:07:02 +02:00
} else {
sessionSecret = fs.readFileSync(sessionSecretPath, ENCODING);
2017-10-23 23:38:52 -04:00
}
export default sessionSecret;