Skip to content

DEN-2859: enforce private authorization on artifact digest reads - #125

Merged
the1mills merged 15 commits into
mainfrom
feat/DEN-2859-private-artifact-auth-current-main
Sep 27, 2026
Merged

the1mills merged 15 commits into
mainfrom
feat/DEN-2859-private-artifact-auth-current-main

Conversation

@the1mills

Copy link
Copy Markdown
Contributor

Stacks the current-main package-reader authentication from #123 with the canonical SHA visibility read from zed-lib-core#84.

Security behavior:

  • resolves all bounded canonical package references for an artifact SHA before serving bytes;
  • legacy-only digests retain the existing anonymous compatibility behavior;
  • if any canonical reference is public, the shared bytes remain anonymous/public;
  • if every canonical reference is private, requires the scoped Shared Auth CLI delegation from DEN-2859: salvage delegated CLI package-reader boundary #123;
  • maps the delegated principal to the canonical registry user, then requires org membership or direct project membership in at least one referencing package;
  • unauthorized private reads return 404 after authentication so membership failure does not confirm private artifact existence;
  • download/redirect happens only after authorization;
  • includes regression coverage for empty/public/shared-public/all-private digest policy.

This directly advances Zed backlog task 7 at the origin digest route. The Cloudflare capability/ACL path remains the next layer (#124 salvage).

@linear-code

linear-code Bot commented Sep 27, 2026

Copy link
Copy Markdown

DEN-2859

@the1mills
the1mills merged commit b251964 into main Sep 27, 2026
14 of 16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant