This commit is contained in:
Tben 2023-06-24 16:05:14 +01:00
parent 53fb043d05
commit 0f2ae76bbc
2 changed files with 11 additions and 6 deletions

View File

@ -1,6 +1,6 @@
{ {
"name": "datasquirel", "name": "datasquirel",
"version": "1.1.52", "version": "1.1.53",
"description": "Cloud-based SQL data management tool", "description": "Cloud-based SQL data management tool",
"main": "index.js", "main": "index.js",
"scripts": { "scripts": {
@ -13,7 +13,6 @@
"keywords": [ "keywords": [
"SQL", "SQL",
"Cloud", "Cloud",
"Cloud",
"Storage", "Storage",
"API", "API",
"Data", "Data",

View File

@ -6,20 +6,26 @@ const parseCookies = require("../utils/functions/parseCookies");
* @param {object} params - Single Param object containing params * @param {object} params - Single Param object containing params
* @param {object} params.request - Http request object * @param {object} params.request - Http request object
* @param {object} params.response - Http response object * @param {object} params.response - Http response object
* @param {string} params.database - Target database name(slug)
* *
* @returns {{success: boolean, payload: string}} * @returns {{success: boolean, payload: string}}
*/ */
module.exports = function ({ request, response }) { module.exports = function ({ request, response, database }) {
/** /**
* Check Encryption Keys * Check Encryption Keys
* *
* @description Check Encryption Keys * @description Check Encryption Keys
*/ */
try { try {
const cookiesKeys = Object.keys(parseCookies({ request })); const cookies = parseCookies({ request });
const cookiesKeys = Object.keys(cookies);
const authKeyName = cookiesKeys.filter((cookieKey) => cookieKey.match(/datasquirel_.*_auth_key/))[0]; const dbUid = cookies.dsqluid;
const csrfName = cookiesKeys.filter((cookieKey) => cookieKey.match(/datasquirel_.*_csrf/))[0]; const keyRegexp = new RegExp(`datasquirel_${dbUid}_${database}_auth_key`);
const csrfRegexp = new RegExp(`datasquirel_${dbUid}_${database}_csrf`);
const authKeyName = cookiesKeys.filter((cookieKey) => cookieKey.match(keyRegexp))[0];
const csrfName = cookiesKeys.filter((cookieKey) => cookieKey.match(csrfRegexp))[0];
response.setHeader("Set-Cookie", [`${authKeyName}=null;samesite=strict;path=/;HttpOnly=true;Secure=true`, `${csrfName}=null;samesite=strict;path=/;HttpOnly=true`, `dsqluid=null;samesite=strict;path=/;HttpOnly=true`]); response.setHeader("Set-Cookie", [`${authKeyName}=null;samesite=strict;path=/;HttpOnly=true;Secure=true`, `${csrfName}=null;samesite=strict;path=/;HttpOnly=true`, `dsqluid=null;samesite=strict;path=/;HttpOnly=true`]);