内置角色权限¶
所谓角色,就是一组相关权限的集合。用户可以把角色分配给创建的用户,从而实现访问控制。
内置角色¶
Nebula Graph 内置了多种角色,说明如下:
-
God
- 初始最高权限角色,拥有所有操作的权限。类似于 Linux 中的
root和 Windows 中的administrator。
-
Meta 服务初始化时,会自动创建 God 角色用户
root,密码为nebula。注意
请及时修改
root用户的密码,保证数据安全。
- 一个集群只能有一个 God 角色用户,该用户可以管理集群内所有图空间。
- 不支持手动授权 God 角色,只能使用默认 God 角色用户
root。
- 初始最高权限角色,拥有所有操作的权限。类似于 Linux 中的
-
Admin
- 对权限内的图空间拥有 Schema 和 data 的读写权限。
-
可以将权限内的图空间授权给其他用户。
注意
只能授权低于 ADMIN 级别的角色给其他用户。
-
DBA
- 对权限内的图空间拥有 Schema 和 data 的读写权限。
- 无法将权限内的图空间授权给其他用户。
-
User
- 对权限内的图空间拥有 Schema 的只读权限。
- 对权限内的图空间拥有 data 的读写权限。
-
Guest
- 对权限内的图空间拥有 Schema 和 data 的只读权限。
Note
- 不支持自行创建角色,只能使用默认的内置角色。
- 一个用户在一个图空间内只能拥有一个角色权限。授权用户请参见用户管理。
角色权限¶
各角色的执行权限如下。
| 权限 | God | Admin | DBA | User | Guest | 相关语句 |
|---|---|---|---|---|---|---|
| Read space | Y | Y | Y | Y | Y | USE、DESCRIBE SPACE |
| Read schema | Y | Y | Y | Y | Y | DESCRIBE TAG、DESCRIBE EDGE、DESCRIBE TAG INDEX、DESCRIBE EDGE INDEX |
| Write schema | Y | Y | Y | CREATE TAG、ALTER TAG、CREATE EDGE、ALTER EDGE、DROP TAG、DELETE TAG、DROP EDGE、CREATE TAG INDEX、CREATE EDGE INDEX、DROP TAG INDEX、DROP EDGE INDEX |
||
| Write user | Y | CREATE USER、DROP USER、ALTER USER |
||||
| Write role | Y | Y | GRANT、REVOKE |
|||
| Read data | Y | Y | Y | Y | Y | GO、SET、PIPE、MATCH、ASSIGNMENT、LOOKUP、YIELD、ORDER BY、FETCH VERTICES、Find、FETCH EDGES、FIND PATH、LIMIT、GROUP BY、RETURN |
| Write data | Y | Y | Y | Y | INSERT VERTEX、UPDATE VERTEX、INSERT EDGE、UPDATE EDGE、DELETE VERTEX、DELETE EDGES、DELETE TAG |
|
| Show operations | Y | Y | Y | Y | Y | SHOW、CHANGE PASSWORD |
| Job | Y | Y | Y | Y | SUBMIT JOB COMPACT、SUBMIT JOB FLUSH、SUBMIT JOB STATS、STOP JOB、RECOVER JOB、BUILD TAG INDEX、BUILD EDGE INDEX |
|
| Write space | Y | CREATE SPACE、DROP SPACE、CREATE SNAPSHOT、DROP SNAPSHOT、BALANCE、ADMIN、CONFIG、INGEST、DOWNLOAD |
Caution
Show operations 为特殊操作,只会在自身权限内执行。例如SHOW SPACES,每个角色都可以执行,但是只会返回自身权限内的图空间。
只有 God 角色可以执行SHOW USERS和SHOW SNAPSHOTS语句。
最后更新:
March 7, 2023