denied: requested access to the resource is denied
解决方案
查看用户的权限
Harbor 用户角色权限速查
系统级角色:
- Harbor 系统管理员:“Harbor 系统管理员”拥有最多的权限。除了上述权限外,“Harbor 系统管理员”还可以列出所有项目、设置普通用户为管理员、删除用户以及为所有镜像设置漏洞扫描策略。公共项目“库”也归管理员所有。
- 匿名(非系统管理员):当用户未登录时,该用户被视为“匿名”用户。匿名用户无权访问私有项目,而对公共项目具有只读访问权限。
项目用户角色
Harbor
提供了“项目”(project)的概念,每个项目都对应一个和项目名相同的命名空间(namespace)来保存Artifact,各个命名空间都是彼此独立的授权单元,将Artifact 隔离开来。当使用 Docker等命令行工具向Harbor推送和拉取镜像等Artifact时,这个命名空间也是URI的一个组成部分。用户要对项目中的Artifact进行读写,就首先要被管理员添加为项目的成员,具体的权限由成员的角色决定。加入项目的成员可以有以下角色。
Harbor 通过项目管理镜像。通过将用户包含在项目中并向他们分配以下角色之一,你可以向用户提供对这些镜像的访问权限。
- 受限访客:受限访客没有项目的完全读取权限。他们可以拉取镜像但不能推送,而且他们看不到日志或项目的其他成员。例如,你可以为来自不同组织的共享项目访问权限的用户创建受限访客。
- 访客:访客对指定项目具有只读权限。他们可以拉取和重新标记镜像,但不能推送。
- 开发者:开发者拥有项目的读写权限。
- 维护者:维护者拥有超越“开发者”的权限,包括扫描镜像、查看复制作业以及删除镜像和helm charts的能力。
- 项目管理员:创建新项目时,你将被分配给项目的“ProjectAdmin”角色。“ProjectAdmin”除了读写权限外,还有一些管理权限,如添加和删除成员、启动漏洞扫描等。
不同角色权限的完整详细信息
用户具有不同的能力,具体取决于他们在项目中的角色。
在公共项目中,所有用户都可以查看存储库列表、镜像、镜像漏洞、helm charts和 helm charts版本、拉取镜像、重新标记镜像(需要目标镜像的推送权限)、下载 helm charts、下载 helm charts版本。
系统管理员拥有项目的所有权限。
项目成员权限
下表描述了项目中的各种用户权限级别。
操作 | 受限访客 | 访客 | 开发者 | 维护者 | 项目管理员 |
---|---|---|---|---|---|
查看项目配置 | ✓ | ✓ | ✓ | ✓ | ✓ |
编辑项目配置 | ✓ | ||||
查看项目成员列表 | ✓ | ✓ | ✓ | ✓ | |
创建/编辑/删除项目成员 | ✓ | ||||
查看项目日志列表 | ✓ | ✓ | ✓ | ✓ | |
查看项目复制列表 | ✓ | ✓ | |||
查看项目复制作业列表 | ✓ | ||||
查看项目标签列表 | ✓ | ✓ | |||
创建/编辑/删除项目标签 | ✓ | ✓ | |||
查看存储库列表 | ✓ | ✓ | ✓ | ✓ | ✓ |
创建存储库 | ✓ | ✓ | ✓ | ||
编辑/删除存储库 | ✓ | ✓ | |||
查看镜像列表 | ✓ | ✓ | ✓ | ✓ | ✓ |
重新标记镜像 | ✓ | ✓ | ✓ | ✓ | |
拉取镜像 | ✓ | ✓ | ✓ | ✓ | ✓ |
推送镜像 | ✓ | ✓ | ✓ | ||
扫描/删除镜像 | ✓ | ✓ | |||
将扫描器添加到 Harbor | |||||
在项目中编辑扫描器 | ✓ | ||||
查看镜像漏洞列表 | ✓ | ✓ | ✓ | ✓ | ✓ |
查看镜像构建历史 | ✓ | ✓ | ✓ | ✓ | ✓ |
添加/删除镜像标签 | ✓ | ✓ | ✓ | ||
查看 helm charts列表 | ✓ | ✓ | ✓ | ✓ | ✓ |
下载helm charts | ✓ | ✓ | ✓ | ✓ | ✓ |
上传 helm charts | ✓ | ✓ | ✓ | ||
删除helm charts | ✓ | ✓ | |||
查看 helm chart 版本列表 | ✓ | ✓ | ✓ | ✓ | ✓ |
下载 helm chart 版本 | ✓ | ✓ | ✓ | ✓ | ✓ |
上传 helm chart 版本 | ✓ | ✓ | ✓ | ||
删除 helm chart 版本 | ✓ | ✓ | |||
添加/删除 helm chart 版本的标签 | ✓ | ✓ | ✓ | ||
查看项目机器人列表 | ✓ | ✓ | |||
创建/编辑/删除项目机器人 | ✓ | ||||
查看配置的 CVE 许可名单 | ✓ | ✓ | ✓ | ✓ | ✓ |
创建/编辑/删除 CVE 许可名单 | ✓ | ||||
查看 webhook 事件 | ✓ | ✓ | |||
添加新的 webhook 事件 | ✓ | ||||
启用/禁用 webhook | ✓ | ||||
创建/删除标签保留规则 | ✓ | ✓ | ✓ | ||
启用/禁用标签保留规则 | ✓ | ✓ | ✓ | ||
创建/删除标签不变性规则 | ✓ | ✓ | |||
启用/禁用标签不变性规则 | ✓ | ✓ | |||
查看项目配额 | ✓ | ✓ | ✓ | ✓ | ✓ |
编辑项目配额 | ✓ |
* 只有 Harbor 系统管理员可以编辑项目配额和添加新的扫描器。