Skip to content

Commit f7492ea

Browse files
gerrod3cursoragent
andcommitted
Scope distribution content access to registry-pushed repos only.
Model-level view_containerdistribution must not grant repository_version filtering on synced container repositories that have a remote. Co-authored-by: Cursor <cursoragent@cursor.com>
1 parent 6dfb489 commit f7492ea

1 file changed

Lines changed: 11 additions & 8 deletions

File tree

pulp_container/app/viewsets.py

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -173,16 +173,19 @@ def _repo_query_params(self, request, view, push_perm, mirror_perm):
173173
mirror_perm, repo
174174
):
175175
repo_pks.append(repo.pk)
176-
elif request.user.has_perm(push_perm) or any(
177-
request.user.has_perm(push_perm, dist.cast())
178-
or (
179-
dist.cast().namespace
180-
and request.user.has_perm(
181-
"container.namespace_view_containerdistribution",
182-
dist.cast().namespace,
176+
elif not repo.remote and (
177+
request.user.has_perm(push_perm)
178+
or any(
179+
request.user.has_perm(push_perm, dist.cast())
180+
or (
181+
dist.cast().namespace
182+
and request.user.has_perm(
183+
"container.namespace_view_containerdistribution",
184+
dist.cast().namespace,
185+
)
183186
)
187+
for dist in repo.distributions.all()
184188
)
185-
for dist in repo.distributions.all()
186189
):
187190
repo_pks.append(repo.pk)
188191
return repo_pks

0 commit comments

Comments
 (0)