Read-only space membership via <space>-ro IdP groups (#64) #67
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/ro-spaces"
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?
Closes #64. The auditor/viewer persona from docs/PUBLIC-SECTOR.md, following the directory-is-the-source-of-truth philosophy — no parallel permission system.
<space>-ro(suffix configurable viaauth.spaceReadOnlySuffix) grants read-only access to/spaces/<space>: reads, stats, and listings work; every mutation (write/delete/mkdir/rename-into-or-out/copy-into) returns the newstorage.ErrReadOnly→ 403 on REST. Copy OUT of a read-only space to one's home is allowed (it's a read)./spacesoverlay lists an ro space under its real name (suffix stripped).allowUploadlinks from read-only members (scope.Driver.ReadOnlychecked via optional interface).Note: WebDAV surfaces ErrReadOnly as a generic error rather than a mapped 403 for now — enforcement holds; status-code polish is a follow-up alongside the UI viewer-badge affordance.
Tests: read/list/stat allowed, all mutations rejected, spaces listing under real name, copy-in vs copy-out, dual-membership write wins, non-member invisibility, configurable suffix. Green on the runner.