文档中心

运维管理

用户升级指南

SequoiadDB 的用户在旧版本中仅有角色adminmonitor

升级到基于角色的访问控制版本后,为保证兼容性,用户的角色有如下几个规则:

  1. 已有的旧版本的用户角色admin,被视作拥有内建角色为_root; 旧版本的用户角色monitor,被视作拥有内建角色为_clusterMonitor
  2. 新版本中createUsr()命令仍然支持通过 Options.Role 字段为用户指定旧版本角色,视作拥有内建角色为_root_clusterMonitor
  3. 删除用户时,如果集群中除待删除用户外,不存在任何一个用户拥有内建角色_root或者旧版本admin, 将会删除失败

用户升级的流程

假设在旧版本中有admin用户与monitor用户。

  1. 升级节点并重启,节点的--privilegecheck配置项默认应为关闭。
  2. 使用admin用户连接,创建新用户su,并为其授予内建角色_root

    > db = Sdb( <hostname>, <port>, "admin", <pwd>)
    > db.createUsr("su", <pwd>, {Roles: ["_root"]})
  3. 更新节点配置,开启--privilegecheck配置项,重启节点。

  4. 业务系统使用旧版本中的用户仍然拥有与旧版本中相同的权限,业务系统不会受到影响。

  5. 使用su用户连接,根据业务系统的实际需求,创建更多基于角色的访问控制用户。

  6. 迁移业务系统到新版本,使用新版本中的用户进行操作。

  7. 业务系统迁移完成后,删除旧版本中的用户adminmonitor

回到顶部