Repository navigation
Check storage-admission observation ownership - #1206
Conversation
|
|
Downstream consumer review of Installed consumer acceptance is still pending: it must demonstrate each replacement's descriptor owner/mode, trusted non-symlinked/non-writable ancestors, the actual container UID mapping, and missing/stale refusal against the exact published image. This review does not certify an enabled downstream native mapping or end-to-end adoption; those consumer gates remain open. No draining completion-upload acceptance is inferred. |
|
Security source review: PASS (content) at exact head The trust decision is applied to the already-open observation descriptor: the final component is opened with The root/current-user/foreign-user and atomic-replacement controls exercise the policy both through the production snapshot path and directly as an unprivileged reader. The documented deployment boundary is also accurate: trusted, non-untrusted-writable, non-symlinked ancestors remain an operator requirement and are not claimed as native runtime enforcement. This avoids overstating what the final-component I found no draining-upload authority, route-classification, schema, 3.9.1, or Cloud deployment change in this two-file delta; Merge remains held for the current exact-head required CI aggregate. This is not #951 closure or installed Cloud acceptance: Cloud still needs an admitted native observation bind and exact in-container UID/ancestor/missing/stale mapping under #752 before deployment. No live ancestor or user-namespace trust is inferred from this source review. |
|
Security source review PASS for exact head The ownership check is applied to metadata from the same already-opened, The focused regression covers production The documentation correctly keeps trusted ancestors as an operator requirement and explicitly states that native only refuses a symlink in the final component and does not establish parent-directory trust. This PASS therefore does not claim runtime ancestor enforcement, physical-capacity qualification, Cloud/container UID mapping acceptance, draining-upload authority, a #951 closure, or inclusion in immutable 3.9.1. Those remain separate gates as recorded. |



A storage-admission record owned by an unrelated UID can currently look trustworthy because its mode is 0644. Check ownership on the same opened descriptor as type, mode and size: accept root or the Server effective UID, and turn a foreign-owned record into the existing fenced
storage_admission_unavailablesnapshot.Document collector ownership, atomic replacement, container UID mapping and trusted parent directories. Final-component no-follow checks require trusted ancestors; the documentation makes that operational boundary explicit.
Validation: all four focused storage-admission tests pass, including real foreign-owned production readback, root/same-UID acceptance and atomic replacement. The ownership regression also passes separately as unprivileged UID 65534. Full exact-head required CI and Security review pass at
cd59a48a; whitespace, public-boundary and added-source credential-pattern checks pass.Follow-up to #951/#1192. The per-lease draining-upload slice remains on #951, and Cloud owns installed native mapping/file/missing/stale acceptance under Cloud#752. Immutable 3.9.1 is unchanged; this source fix ships in a later qualified release.