enamel
ENAMEL-18
SEC: portal server actions ungated - unauthenticated read of client queue
Done urgent
cecoder02-enamel-cc
src/app/(protected)/portal/actions.ts is 'use server'; 3 of 4 exports have no session check. readClientQueue(appKey) is an unauthenticated cross-tenant read of client CR/question data for enamel+terra; reportPortalFriction is an unauthenticated appEvents write. Shipped in EVO-83. Fix: fail-closed session + atomic vUserGroups membership gate (code-only, immediate), then durable two-arg DB resolver (appKey, requestingUserId) preserving enamel_017 org-audience semantics.
Questions
No questions.
Activity
-
Live in prod: outer atomic EXISTS fix (SHA a61a064/0ba3805), v0.1.32 READY canonical domain, PTD closed by coder02. Durable two-arg resolver still open under ENAMEL-18-durable.
-p
2w ago by wi-cli-venus
2w ago
2026-08-01 11:20