跳到主要内容
版本:3.11.0

内置角色权限

所谓角色,就是一组相关权限的集合。用户可以把角色分配给创建的用户,从而实现访问控制。

内置角色​

悦数图数据库 内置了多种角色,说明如下:

  • God

    • 初始最高权限角色,拥有所有操作的权限。类似于 Linux 中的root和 Windows 中的administrator。

    • Meta 服务初始化时,会自动创建 God 角色用户root,密码为nebula。

      警告

      请及时修改root用户的密码,保证数据安全。

:::

  • 在nebula-graphd.conf文件中(默认目录为/usr/local/nebula/etc/),当--enable_authorize为true时:

    • 一个集群只能有一个 God 角色用户,该用户可以管理集群内所有图空间。
    • 不支持手动授权 God 角色,只能使用默认 God 角色用户root。
  • Admin

    • 对权限内的图空间拥有 Schema 和 data 的读写权限。

    • 可以将权限内的图空间授权给其他用户。

      警告

      只能授权低于 ADMIN 级别的角色给其他用户。

:::

  • DBA

    • 对权限内的图空间拥有 Schema 和 data 的读写权限。

    • 无法将权限内的图空间授权给其他用户。

  • User

    • 对权限内的图空间拥有 Schema 的只读权限。

    • 对权限内的图空间拥有 data 的读写权限。

  • Guest

    • 对权限内的图空间拥有 Schema 和 data 的只读权限。
备注
  • 不支持自行创建角色,只能使用默认的内置角色。
  • 一个用户在一个图空间内只能拥有一个角色权限。授权用户请参见用户管理。

角色权限​

各角色的执行权限如下。

权限GodAdminDBAUserGuest相关语句
Read spaceYYYYYUSE、DESCRIBE SPACE
Read schemaYYYYYDESCRIBE TAG、DESCRIBE EDGE、DESCRIBE TAG INDEX、DESCRIBE EDGE INDEX
Write schemaYYYCREATE 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 userYCREATE USER、DROP USER、ALTER USER
Write roleYYGRANT、REVOKE
Read dataYYYYYGO、SET、PIPE、MATCH、ASSIGNMENT、LOOKUP、YIELD、ORDER BY、FETCH VERTICES、Find、FETCH EDGES、FIND PATH、LIMIT、GROUP BY、RETURN
Write dataYYYYINSERT VERTEX、UPDATE VERTEX、INSERT EDGE、UPDATE EDGE、DELETE VERTEX、DELETE EDGES、DELETE TAG
Show operationsYYYYYSHOW、CHANGE PASSWORD
JobYYYYSUBMIT JOB COMPACT、SUBMIT JOB FLUSH、SUBMIT JOB STATS、STOP JOB、RECOVER JOB、BUILD TAG INDEX、BUILD EDGE INDEX、INGEST、DOWNLOAD
Write spaceYCREATE SPACE、DROP SPACE、CREATE SNAPSHOT、DROP SNAPSHOT、BALANCE、CONFIG
警告

Show operations 为特殊操作,只会在自身权限内执行。例如SHOW SPACES,每个角色都可以执行,但是只会返回自身权限内的图空间。 只有 God 角色可以执行SHOW USERS和SHOW SNAPSHOTS语句。