fix(backend): harden principal child isolation
This commit is contained in:
@@ -397,7 +397,7 @@ export function sessionRoutes(
|
||||
try {
|
||||
const settings = await d.getSettings(principal);
|
||||
if (!await authorize(principal, id, settings.workspace)) return reply.code(404).send({ error: "session not found" });
|
||||
await runnerFor(principal).setName(id, (req.body as any).name);
|
||||
await runnerFor(principal).setName(id, (req.body as any).name, settings.workspace);
|
||||
} catch { return storageFailure(reply); }
|
||||
return reply.code(204).send();
|
||||
});
|
||||
@@ -407,7 +407,7 @@ export function sessionRoutes(
|
||||
try {
|
||||
const settings = await d.getSettings(principal);
|
||||
if (!await authorize(principal, id, settings.workspace)) return reply.code(404).send({ error: "session not found" });
|
||||
await runnerFor(principal).setGroup(id, (req.body as any).group);
|
||||
await runnerFor(principal).setGroup(id, (req.body as any).group, settings.workspace);
|
||||
} catch { return storageFailure(reply); }
|
||||
return reply.code(204).send();
|
||||
});
|
||||
@@ -417,7 +417,7 @@ export function sessionRoutes(
|
||||
try {
|
||||
const settings = await d.getSettings(principal);
|
||||
if (!await authorize(principal, id, settings.workspace)) return reply.code(404).send({ error: "session not found" });
|
||||
await runnerFor(principal).archive(id);
|
||||
await runnerFor(principal).archive(id, settings.workspace);
|
||||
} catch { return storageFailure(reply); }
|
||||
return reply.code(204).send();
|
||||
});
|
||||
@@ -427,7 +427,7 @@ export function sessionRoutes(
|
||||
try {
|
||||
const settings = await d.getSettings(principal);
|
||||
if (!await authorize(principal, id, settings.workspace)) return reply.code(404).send({ error: "session not found" });
|
||||
await runnerFor(principal).unarchive(id);
|
||||
await runnerFor(principal).unarchive(id, settings.workspace);
|
||||
} catch { return storageFailure(reply); }
|
||||
return reply.code(204).send();
|
||||
});
|
||||
@@ -458,7 +458,7 @@ export function sessionRoutes(
|
||||
try {
|
||||
const settings = await d.getSettings(principal);
|
||||
if (!await authorize(principal, id, settings.workspace)) return reply.code(404).send({ error: "session not found" });
|
||||
return await runnerFor(principal).documents(id);
|
||||
return await runnerFor(principal).documents(id, settings.workspace);
|
||||
} catch { return storageFailure(reply); }
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user