P0 hosted: per-user session issuance replaces the single shared local-user token #71
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
priority:P1
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
nsaspy/quasar#71
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
quasar.app:startregisters exactly ONE websocket session (principallocal-user, workspacedefault) and injects that single token into every served page viaquasar.ui:inject-session-token. The desktop security model is single-user; on a hosted deployment every visitor would share the same principal and full write authority to the shared workspace.The enforcement layer is already multi-principal (
register-websocket-sessioncarries principal / authority-kind / workspaces / capabilities; every command is workspace-gated withsecurity.forbidden; unknown tokens are rejected 401 at handshake). The gap is issuance only.Required
local-usersession for hosted deployments (flag or init config), and an API to unregister/expire a registered session token (onlyregister-websocket-sessionexists today).quasar.app:startshould exposeallowed-originsandcapabilitiesofmake-websocket-server(currently hard-wired to localhost dev origins, so a production origin is denied even with a valid token).Non-goals
Acceptance