From 86bf08ccc019ff38cac86bca8f1a6c0b4bdfef15 Mon Sep 17 00:00:00 2001 From: KernelDeimos Date: Sun, 24 Nov 2024 13:34:43 -0500 Subject: [PATCH] dev: add metadata column --- src/backend/src/routers/signup.js | 11 ++++++++++- .../services/database/SqliteDatabaseAccessService.js | 3 +++ .../database/sqlite_setup/0031_audit-meta.sql | 1 + 3 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 src/backend/src/services/database/sqlite_setup/0031_audit-meta.sql diff --git a/src/backend/src/routers/signup.js b/src/backend/src/routers/signup.js index 4957abbb8..f3b35c876 100644 --- a/src/backend/src/routers/signup.js +++ b/src/backend/src/routers/signup.js @@ -196,10 +196,17 @@ module.exports = eggspress(['/signup'], { let insert_res; let email_confirm_code = Math.floor(100000 + Math.random() * 900000); + const audit_metadata = { + ip: req.connection.remoteAddress, + ip_fwd: req.headers['x-forwarded-for'], + user_agent: req.headers['user-agent'], + origin: req.headers['origin'], + }; + if(pseudo_user === undefined){ insert_res = await db.write( `INSERT INTO user - (username, email, clean_email, password, uuid, referrer, email_confirm_code, email_confirm_token, free_storage, referred_by) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`, + (username, email, clean_email, password, uuid, referrer, email_confirm_code, email_confirm_token, free_storage, referred_by, audit_metadata) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`, [ // username req.body.username, @@ -221,6 +228,8 @@ module.exports = eggspress(['/signup'], { config.storage_capacity, // referred_by referred_by_user ? referred_by_user.id : null, + // audit_metadata + JSON.stringify(audit_metadata), ]); // record activity diff --git a/src/backend/src/services/database/SqliteDatabaseAccessService.js b/src/backend/src/services/database/SqliteDatabaseAccessService.js index 2ea7649cc..fc26ee657 100644 --- a/src/backend/src/services/database/SqliteDatabaseAccessService.js +++ b/src/backend/src/services/database/SqliteDatabaseAccessService.js @@ -135,6 +135,9 @@ class SqliteDatabaseAccessService extends BaseDatabaseAccessService { [27, [ '0030_comments.sql', ]], + [28, [ + '0031_audit-meta.sql', + ]], ]; // Database upgrade logic diff --git a/src/backend/src/services/database/sqlite_setup/0031_audit-meta.sql b/src/backend/src/services/database/sqlite_setup/0031_audit-meta.sql new file mode 100644 index 000000000..7b0e0a55b --- /dev/null +++ b/src/backend/src/services/database/sqlite_setup/0031_audit-meta.sql @@ -0,0 +1 @@ +ALTER TABLE `user` ADD COLUMN `audit_metadata` JSON DEFAULT NULL; \ No newline at end of file