Twan07 commited on
Commit
7fc3c0c
·
verified ·
1 Parent(s): 483d458

Create src/utils/securityAudit.js

Browse files
Files changed (1) hide show
  1. src/utils/securityAudit.js +20 -0
src/utils/securityAudit.js ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { AuditLog } from "../models/AuditLog.js";
2
+ import { extractFeatures } from "../security/featureExtractor.js";
3
+ import { isAnomaly } from "../security/anomalyEngine.js";
4
+ import { emitAdminAlert } from "../ws/adminWs.js";
5
+
6
+ export async function securityAudit(req, payload) {
7
+ const log = await AuditLog.create({
8
+ ...payload,
9
+ userId: req.user?.id,
10
+ ip: req.ip,
11
+ userAgent: req.headers["user-agent"],
12
+ });
13
+
14
+ const features = await extractFeatures(log);
15
+ if (isAnomaly(features)) {
16
+ log.isAnomaly = true;
17
+ await log.save();
18
+ emitAdminAlert({ type: "ML_ANOMALY", action: log.action });
19
+ }
20
+ }