GitLab:只允许某人访问 Container Registry?

GitLab: Give someone only access to the Container Registry?

我想从 GitLab 容器注册表 中将前端开发人员权限 仅授予 pull/read。为了在前端测试一些东西,他还需要后端容器。

但是我不想让他访问完整的 gitlab 项目,这样他就可以克隆整个 repo。我只想授予他从注册表中提取容器的权限(因为我的理解是,那时他将无法访问代码)。

GitLab 甚至可以做到这一点吗?似乎 Container Registry 访问需要整个项目访问? 如果这对于 GitLab 是不可能的,那么它应该可以通过 AWS Registry 来代替,或者? (如果对此用例有任何建议,我将不胜感激。)

虽然 GitLab 的用户权限方案缺乏一定的粒度,但您可以解决此限制。

一种方法是使项目 publicly/internally 通过其可见性设置可访问。用户只需要读取能力即可访问容器注册表。显然,如果您的图像旨在更多 private/secret.

,这可能是不可接受的

另一种授予容器注册表访问权限的可能机制可能是创建一个仅具有 read_registry 范围的 project access token,并将该令牌分发给需要读取项目镜像注册表的用户.

group access tokens 也可以这样做。如果您有很多项目有此需求,这可能有助于减少管理开销。