docker基础:私库系列:再探Harbor:(3) 基于角色的权限管理

版权声明:本文为博主原创文章,未经博主允许欢迎转载,但请注明出处。 https://blog.csdn.net/liumiaocn/article/details/81813666

这篇文章来看一下harbor的相关权限管理。

RBAC(Role Based Access Control)

项目级别角色

Harbor基于角色的访问控制,与project关联的角色简单地分为Guest/Developer/Admin三类,角色/project/镜像三者之间进行关联,不同角色的权限不同:
这里写图片描述

角色 权限说明
Guest 对于指定项目拥有只读权限
Developer 对于指定项目拥有读写权限
ProjectAdmin 除了读写权限,同时拥有用户管理/镜像扫描等管理权限

基本权限信息

Harbor的数据库的信息非常简单,从Access表中可以看到其将访问权限进行地划分:

MariaDB [registry]> select * from access;
+-----------+-------------+-------------------------------+
| access_id | access_code | comment                       |
+-----------+-------------+-------------------------------+
|         1 | M           | Management access for project |
|         2 | R           | Read access for project       |
|         3 | W           | Write access for project      |
|         4 | D           | Delete access for project     |
|         5 | S           | Search access for project     |
+-----------+-------------+-------------------------------+
5 rows in set (0.00 sec)

MariaDB [registry]>

项目级别的角色目前的5种细粒度的访问权限分别为:M/R/W/D/S

访问权限 说明
M 管理操作的权限
R 读操作的权限
W 写操作的权限
D 删除访问权限的权限
R 查询权限

角色的访问权限

项目级别的三种角色,对于上述5种粒度的访问权限,具体的结合为:

MariaDB [registry]> select * from role;
+---------+-----------+-----------+--------------+
| role_id | role_mask | role_code | name         |
+---------+-----------+-----------+--------------+
|       1 |         0 | MDRWS     | projectAdmin |
|       2 |         0 | RWS       | developer    |
|       3 |         0 | RS        | guest        |
+---------+-----------+-----------+--------------+
3 rows in set (0.00 sec)

MariaDB [registry]>

系统级别角色

除了以上也项目关联的角色,还有两种系统级别的角色,相关权限信息如下:

角色 权限说明
SysAdmin 具有最多的权限,除了以上提及的权限,可以跨项目操作,查询所有项目,设定某个用户作为管理员以及扫描策略等
Anonymous: 没有登录的用户被视作匿名用户。匿名用户对private的项目不具访问权限,对public的项目具有只读权限

从数据库中也可以看到,这两种基本的用户在创建之初就被自动创建出来了

MariaDB [registry]> select user_id, username from user;
+---------+-----------+
| user_id | username  |
+---------+-----------+
|       1 | admin     |
|       2 | anonymous |
+---------+-----------+
2 rows in set (0.00 sec)

MariaDB [registry]>

猜你喜欢

转载自blog.csdn.net/liumiaocn/article/details/81813666