Skip to content

Commit 241e56e

Browse files
committed
improvement(audit-log): add actorName/actorEmail to all recordAudit calls
1 parent acd5d9d commit 241e56e

File tree

16 files changed

+85
-10
lines changed

16 files changed

+85
-10
lines changed

apps/sim/app/api/knowledge/[id]/documents/[documentId]/route.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -201,6 +201,8 @@ export async function PUT(
201201
recordAudit({
202202
workspaceId: accessCheck.knowledgeBase?.workspaceId ?? null,
203203
actorId: userId,
204+
actorName: auth.userName,
205+
actorEmail: auth.userEmail,
204206
action: AuditAction.DOCUMENT_UPDATED,
205207
resourceType: AuditResourceType.DOCUMENT,
206208
resourceId: documentId,
@@ -272,6 +274,8 @@ export async function DELETE(
272274
recordAudit({
273275
workspaceId: accessCheck.knowledgeBase?.workspaceId ?? null,
274276
actorId: userId,
277+
actorName: auth.userName,
278+
actorEmail: auth.userEmail,
275279
action: AuditAction.DOCUMENT_DELETED,
276280
resourceType: AuditResourceType.DOCUMENT,
277281
resourceId: documentId,

apps/sim/app/api/knowledge/[id]/documents/route.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -248,6 +248,8 @@ export async function POST(req: NextRequest, { params }: { params: Promise<{ id:
248248
recordAudit({
249249
workspaceId: accessCheck.knowledgeBase?.workspaceId ?? null,
250250
actorId: userId,
251+
actorName: auth.userName,
252+
actorEmail: auth.userEmail,
251253
action: AuditAction.DOCUMENT_UPLOADED,
252254
resourceType: AuditResourceType.DOCUMENT,
253255
resourceId: knowledgeBaseId,
@@ -307,6 +309,8 @@ export async function POST(req: NextRequest, { params }: { params: Promise<{ id:
307309
recordAudit({
308310
workspaceId: accessCheck.knowledgeBase?.workspaceId ?? null,
309311
actorId: userId,
312+
actorName: auth.userName,
313+
actorEmail: auth.userEmail,
310314
action: AuditAction.DOCUMENT_UPLOADED,
311315
resourceType: AuditResourceType.DOCUMENT,
312316
resourceId: knowledgeBaseId,

apps/sim/app/api/knowledge/[id]/route.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,8 @@ export async function PUT(req: NextRequest, { params }: { params: Promise<{ id:
139139
recordAudit({
140140
workspaceId: accessCheck.knowledgeBase.workspaceId ?? null,
141141
actorId: userId,
142+
actorName: auth.userName,
143+
actorEmail: auth.userEmail,
142144
action: AuditAction.KNOWLEDGE_BASE_UPDATED,
143145
resourceType: AuditResourceType.KNOWLEDGE_BASE,
144146
resourceId: id,
@@ -212,6 +214,8 @@ export async function DELETE(
212214
recordAudit({
213215
workspaceId: accessCheck.knowledgeBase.workspaceId ?? null,
214216
actorId: userId,
217+
actorName: auth.userName,
218+
actorEmail: auth.userEmail,
215219
action: AuditAction.KNOWLEDGE_BASE_DELETED,
216220
resourceType: AuditResourceType.KNOWLEDGE_BASE,
217221
resourceId: id,

apps/sim/app/api/mcp/servers/[id]/route.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,11 @@ export const dynamic = 'force-dynamic'
1717
* PATCH - Update an MCP server in the workspace (requires write or admin permission)
1818
*/
1919
export const PATCH = withMcpAuth<{ id: string }>('write')(
20-
async (request: NextRequest, { userId, workspaceId, requestId }, { params }) => {
20+
async (
21+
request: NextRequest,
22+
{ userId, userName, userEmail, workspaceId, requestId },
23+
{ params }
24+
) => {
2125
const { id: serverId } = await params
2226

2327
try {
@@ -90,6 +94,8 @@ export const PATCH = withMcpAuth<{ id: string }>('write')(
9094
recordAudit({
9195
workspaceId,
9296
actorId: userId,
97+
actorName: userName,
98+
actorEmail: userEmail,
9399
action: AuditAction.MCP_SERVER_UPDATED,
94100
resourceType: AuditResourceType.MCP_SERVER,
95101
resourceId: serverId,

apps/sim/app/api/mcp/servers/route.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ export const GET = withMcpAuth('read')(
5656
* it will be updated instead of creating a duplicate.
5757
*/
5858
export const POST = withMcpAuth('write')(
59-
async (request: NextRequest, { userId, workspaceId, requestId }) => {
59+
async (request: NextRequest, { userId, userName, userEmail, workspaceId, requestId }) => {
6060
try {
6161
const body = getParsedBody(request) || (await request.json())
6262

@@ -165,6 +165,8 @@ export const POST = withMcpAuth('write')(
165165
recordAudit({
166166
workspaceId,
167167
actorId: userId,
168+
actorName: userName,
169+
actorEmail: userEmail,
168170
action: AuditAction.MCP_SERVER_ADDED,
169171
resourceType: AuditResourceType.MCP_SERVER,
170172
resourceId: serverId,
@@ -190,7 +192,7 @@ export const POST = withMcpAuth('write')(
190192
* DELETE - Delete an MCP server from the workspace (requires admin permission)
191193
*/
192194
export const DELETE = withMcpAuth('admin')(
193-
async (request: NextRequest, { userId, workspaceId, requestId }) => {
195+
async (request: NextRequest, { userId, userName, userEmail, workspaceId, requestId }) => {
194196
try {
195197
const { searchParams } = new URL(request.url)
196198
const serverId = searchParams.get('serverId')
@@ -225,6 +227,8 @@ export const DELETE = withMcpAuth('admin')(
225227
recordAudit({
226228
workspaceId,
227229
actorId: userId,
230+
actorName: userName,
231+
actorEmail: userEmail,
228232
action: AuditAction.MCP_SERVER_REMOVED,
229233
resourceType: AuditResourceType.MCP_SERVER,
230234
resourceId: serverId!,

apps/sim/app/api/mcp/workflow-servers/[id]/route.ts

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,11 @@ export const GET = withMcpAuth<RouteParams>('read')(
7272
* PATCH - Update a workflow MCP server
7373
*/
7474
export const PATCH = withMcpAuth<RouteParams>('write')(
75-
async (request: NextRequest, { userId, workspaceId, requestId }, { params }) => {
75+
async (
76+
request: NextRequest,
77+
{ userId, userName, userEmail, workspaceId, requestId },
78+
{ params }
79+
) => {
7680
try {
7781
const { id: serverId } = await params
7882
const body = getParsedBody(request) || (await request.json())
@@ -116,6 +120,8 @@ export const PATCH = withMcpAuth<RouteParams>('write')(
116120
recordAudit({
117121
workspaceId,
118122
actorId: userId,
123+
actorName: userName,
124+
actorEmail: userEmail,
119125
action: AuditAction.MCP_SERVER_UPDATED,
120126
resourceType: AuditResourceType.MCP_SERVER,
121127
resourceId: serverId,
@@ -140,7 +146,11 @@ export const PATCH = withMcpAuth<RouteParams>('write')(
140146
* DELETE - Delete a workflow MCP server and all its tools
141147
*/
142148
export const DELETE = withMcpAuth<RouteParams>('admin')(
143-
async (request: NextRequest, { userId, workspaceId, requestId }, { params }) => {
149+
async (
150+
request: NextRequest,
151+
{ userId, userName, userEmail, workspaceId, requestId },
152+
{ params }
153+
) => {
144154
try {
145155
const { id: serverId } = await params
146156

@@ -164,6 +174,8 @@ export const DELETE = withMcpAuth<RouteParams>('admin')(
164174
recordAudit({
165175
workspaceId,
166176
actorId: userId,
177+
actorName: userName,
178+
actorEmail: userEmail,
167179
action: AuditAction.MCP_SERVER_REMOVED,
168180
resourceType: AuditResourceType.MCP_SERVER,
169181
resourceId: serverId,

apps/sim/app/api/mcp/workflow-servers/[id]/tools/[toolId]/route.ts

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,11 @@ export const GET = withMcpAuth<RouteParams>('read')(
6666
* PATCH - Update a tool's configuration
6767
*/
6868
export const PATCH = withMcpAuth<RouteParams>('write')(
69-
async (request: NextRequest, { userId, workspaceId, requestId }, { params }) => {
69+
async (
70+
request: NextRequest,
71+
{ userId, userName, userEmail, workspaceId, requestId },
72+
{ params }
73+
) => {
7074
try {
7175
const { id: serverId, toolId } = await params
7276
const body = getParsedBody(request) || (await request.json())
@@ -122,6 +126,8 @@ export const PATCH = withMcpAuth<RouteParams>('write')(
122126
recordAudit({
123127
workspaceId,
124128
actorId: userId,
129+
actorName: userName,
130+
actorEmail: userEmail,
125131
action: AuditAction.MCP_SERVER_UPDATED,
126132
resourceType: AuditResourceType.MCP_SERVER,
127133
resourceId: serverId,
@@ -146,7 +152,11 @@ export const PATCH = withMcpAuth<RouteParams>('write')(
146152
* DELETE - Remove a tool from an MCP server
147153
*/
148154
export const DELETE = withMcpAuth<RouteParams>('write')(
149-
async (request: NextRequest, { userId, workspaceId, requestId }, { params }) => {
155+
async (
156+
request: NextRequest,
157+
{ userId, userName, userEmail, workspaceId, requestId },
158+
{ params }
159+
) => {
150160
try {
151161
const { id: serverId, toolId } = await params
152162

@@ -180,6 +190,8 @@ export const DELETE = withMcpAuth<RouteParams>('write')(
180190
recordAudit({
181191
workspaceId,
182192
actorId: userId,
193+
actorName: userName,
194+
actorEmail: userEmail,
183195
action: AuditAction.MCP_SERVER_UPDATED,
184196
resourceType: AuditResourceType.MCP_SERVER,
185197
resourceId: serverId,

apps/sim/app/api/mcp/workflow-servers/[id]/tools/route.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,11 @@ export const GET = withMcpAuth<RouteParams>('read')(
7777
* POST - Add a workflow as a tool to an MCP server
7878
*/
7979
export const POST = withMcpAuth<RouteParams>('write')(
80-
async (request: NextRequest, { userId, workspaceId, requestId }, { params }) => {
80+
async (
81+
request: NextRequest,
82+
{ userId, userName, userEmail, workspaceId, requestId },
83+
{ params }
84+
) => {
8185
try {
8286
const { id: serverId } = await params
8387
const body = getParsedBody(request) || (await request.json())
@@ -201,6 +205,8 @@ export const POST = withMcpAuth<RouteParams>('write')(
201205
recordAudit({
202206
workspaceId,
203207
actorId: userId,
208+
actorName: userName,
209+
actorEmail: userEmail,
204210
action: AuditAction.MCP_SERVER_UPDATED,
205211
resourceType: AuditResourceType.MCP_SERVER,
206212
resourceId: serverId,

apps/sim/app/api/mcp/workflow-servers/route.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ export const GET = withMcpAuth('read')(
8686
* POST - Create a new workflow MCP server
8787
*/
8888
export const POST = withMcpAuth('write')(
89-
async (request: NextRequest, { userId, workspaceId, requestId }) => {
89+
async (request: NextRequest, { userId, userName, userEmail, workspaceId, requestId }) => {
9090
try {
9191
const body = getParsedBody(request) || (await request.json())
9292

@@ -192,6 +192,8 @@ export const POST = withMcpAuth('write')(
192192
recordAudit({
193193
workspaceId,
194194
actorId: userId,
195+
actorName: userName,
196+
actorEmail: userEmail,
195197
action: AuditAction.MCP_SERVER_ADDED,
196198
resourceType: AuditResourceType.MCP_SERVER,
197199
resourceId: serverId,

apps/sim/app/api/webhooks/[id]/route.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,8 @@ export async function DELETE(
265265
recordAudit({
266266
workspaceId: webhookData.workflow.workspaceId || null,
267267
actorId: userId,
268+
actorName: auth.userName,
269+
actorEmail: auth.userEmail,
268270
action: AuditAction.WEBHOOK_DELETED,
269271
resourceType: AuditResourceType.WEBHOOK,
270272
resourceId: id,

0 commit comments

Comments
 (0)