2const pool = require('../services/db');
5 * Log impersonation events to the impersonation_audit table
6 * @param {object} params
7 * @param {string} params.impersonatorId - UUID of the impersonator
8 * @param {string} params.impersonatorName - Name of the impersonator
9 * @param {string} params.impersonatedTenantId - UUID of the impersonated tenant
10 * @param {string} params.impersonatedTenantName - Name of the impersonated tenant
11 * @param {string} params.action - 'start', 'stop', 'switch'
12 * @param {object} params.req - Express request object
14async function logImpersonation({
18 impersonatedTenantName,
24 `INSERT INTO impersonation_audit
25 (impersonator_id, impersonator_name, impersonated_tenant_id, impersonated_tenant_name, action, ip_address, user_agent)
26 VALUES ($1, $2, $3, $4, $5, $6, $7)`,
31 impersonatedTenantName,
38 console.error('[Audit] Failed to log impersonation:', err);
42module.exports = { logImpersonation };