关于全局权限create 是否包括create user权限

【 使用环境 】生产环境
【 OB or 其他组件 】
【 使用版本 】v4.2.1.11
【问题描述】创建用户的时候再全局权限中选择create权限,请问这个权限中是否包含create user?

@论坛小助手

根据文档库中的信息,CREATE 全局权限并不直接等同于 CREATE USER 权限。在OceanBase数据库中,CREATE 系统权限通常指的是创建数据库对象(如表、视图、索引等)的能力。而 CREATE USER 是一个特定的系统权限,它允许用户创建新的用户账户。

若要在OceanBase数据库中创建新用户,用户必须明确被授予 CREATE USER 的权限。这个权限是独立于一般的 CREATE 权限存在的。因此,在全局权限里选择了 CREATE 权限,并不意味着该用户获得了创建其他用户的权利。

为了使用户能够创建新用户,您需要单独执行如下SQL命令来授予权限:

GRANT CREATE USER ON *.* TO '用户名'@'主机名';

以上说明基于以下事实:

  • 创建不同的用户并赋予相应权限是常见的需求。
  • 仅拥有 CREATE 权限的用户不可以创建新用户;必须具有 CREATE USER 特权才行。
  • 默认情况下,只有集群管理员和租户管理员才自动拥有创建用户的权限。

请确保遵循最小权限原则,只给确实需要此功能的用户分配 CREATE USER 权限。希望这解决了您的疑问!如果还有更多关于权限管理或其他方面的问题,请随时询问。

具体信息可参考以下文档:

  1. 访问控制
  2. 创建 DML 触发器
  3. 创建用户
  4. 用户和权限概述
  5. 使用 MySQL 租户做常见数据库开发
  6. 修改用户权限
  7. information_schema.USER_PRIVILEGES
  8. 查看用户权限