Files
plane/apps/web/core
sriram veeraghanta fbb96fc66a fix(api): require token to view workspace invitation (GHSA-gf48-p6jp-cwc4)
The unauthenticated GET /api/workspaces/<slug>/invitations/<pk>/join/
endpoint serialized the invitation with `fields = "__all__"`, exposing
the secret invitation `token` (and an `invite_link` containing it) to
any caller who could guess a workspace slug + invitation id.

Reject GET requests that don't supply the matching `?token=` from the
emailed invite link, comparing in constant time, and additionally strip
`token` and `invite_link` from the response as defense in depth.

Frontend callers (`/workspace-invitations` page, auth header) now thread
the token from the URL through `getWorkspaceInvitation`. Auth pages
visited without an invite token simply skip the invitation banner SWR
call — they have no proof of access and shouldn't see invitation data.
2026-05-05 01:00:09 +05:30
..
2026-01-27 13:54:22 +05:30
2026-01-27 13:54:22 +05:30