更新时间:2024-10-18 GMT+08:00

创建用户

当同一数据库实例或同一数据库需要不同权限的用户访问时,可创建多个用户,但创建的用户权限不能超出该账号所具备的操作权限。

操作步骤

  1. 登录管理控制台
  2. 单击管理控制台左上角的,选择区域和项目。
  3. 单击页面左上角的,选择“数据库 > 数据管理服务 DAS”,进入数据管理服务页面。
  4. 在左侧导航栏中,单击“开发工具”,进入开发工具页面。

    您也可以在产品概览页面,单击“进入开发工具”,进入开发工具页面。

  5. 选择需要登录的目标数据库实例,单击操作列表中的“登录”,登录目标数据库实例。
  6. 在顶部菜单栏选择“账号管理”>“用户管理”,进入用户管理页面。

    图1 用户管理

  7. 单击“新建用户”,进入用户信息编辑页面。

    图2 新建用户

    参考表1填写用户基本信息、高级选项、全局权限、对象权限、角色等内容。

    表1 参数说明

    参数类型

    参数名称

    配置说明

    基本信息

    用户名

    新建用户的名称。

    主机

    允许通过此用户访问数据库服务器的客户端IP地址白名单。

    • 不填或填%表示允许该用户访问所有IP地址。
    • 支持同时设置多个主机,多个主机之间用英文逗号分隔。

      例如:用户“user”可将IP地址“192.%,193.%”添加到用户主机中,可创建出用户名为“user”主机为“192.%”和“193.%”的两个用户。

    • 您可以通过“添加DAS IP地址”将DAS服务器的IP地址,加入到用户主机中。

    密码

    新建用户的密码,密码复杂度要求如下。

    • 长度为8~32个字符
    • 至少包含三种字符组合:小写字母、大写字母、数字、特殊字符 ~ ! @ # $ % ^ * - _ = + ? , ( ) & . |
    • 不能与用户名或倒序的用户名相同
    • 不能与弱密码相同

    确认密码

    必须与设置的用户密码保持一致。

    高级选项

    每小时最多查询数

    限制此用户在一个小时内最多可以执行多少次查询,不填或填0表示不限制。

    每小时最多更新数

    限制此用户在一个小时内最多可以执行多少次更新,不填或填0表示不限制。

    每小时最多连接数

    限制此用户在一个小时内最多可以连接多少次到服务器,不填或填0表示不限制。

    最多用户连接数

    限制此用户同时连接到服务器的最大数量,不填或填0表示不限制。

    SSL类型

    用户连接至服务器的认证方式。

    颁发者

    用户连接至服务器时提供的X.509证书的颁发者。

    主题

    用户连接至服务器时提供的X.509证书的主题。

    算法

    用户连接至服务器时加密方式。

    全局权限

    赋予此用户对该实例下所有数据库的操作权限。

    目前支持配置的全局权限请参见表2,具体权限用法和解释请参考官网

    对象权限

    赋予此用户对具体对象的权限。

    目前支持配置的对象权限请参见表2,具体权限用法和解释请参考官网

    示例:

    设置表示赋予该用户对db_test数据库中的表user_test的id这一列的查询权限。

    图3 新增对象权限

    在“对象权限”页签中,可进行新增和删除权限信息,单击“保存”,并在SQL预览弹出框中单击“确定”

    角色

    用户所属的角色。此功能目前仅支持MySQL8.0版本。

    • 角色名:可选择该实例下其他已经创建的用户名。
    • 是否可以授权给其他用户:是否允许新创建的用户将已经创建的用户的权限授权给其他用户。
    • 是否是默认角色:是否允许已经创建的用户的权限授权新创建的用户。
    说明:

    使用DAS角色管理需要当前数据库用户具有ROLE_ADMIN权限。如果当前账号不具有ROLE_ADMIN权限,需要您手动赋权。以root账号为例,执行GRANT ROLE_ADMIN on *.* TO 'root'@'%'命令后,即可使用DAS角色管理。

    示例:

    设置表示允许将用户“user@”的权限授权给新用户“user_2”,也允许新用户“user_2”将用户“user@”的权限授权给其他用户。

    图4 权限授权
    表2 权限描述

    权限名

    说明

    SELECT

    对于指定对象(例如:全局或者单库)的查询权限。

    INSERT

    对于指定对象插入数据的权限。

    UPDATE

    对于指定对象更新数据的权限。

    DELETE

    对于指定对象删除数据的权限。

    CREATE

    对于指定对象创建数据库和表的权限。

    DROP

    对于指定对象删除数据库,表和视图的权限。

    RELOAD

    执行FLUSH操作的权限。

    PROCESS

    执行查看所有进程(SHOW PROCESSLIST)的权限。

    GRANT

    对于指定对象授予其他账户权限或从其他账户中删除权限的权限。

    REFERENCES

    对于指定对象创建外键的权限。

    INDEX

    对于指定对象创建或删除索引的权限。

    ALTER

    对于指定对象执行ALTER TABLE的权限。

    SHOW DATABASES

    执行显示所有数据库指令(SHOW DATABASES)的权限。

    CREATE TEMPORARY TABLES

    对于指定对象执行CREATE TEMPORARY TABLE指令的权限。

    LOCK TABLES

    对于指定对象,在拥有SELECT权限的表上执行LOCK TABLES的权限。

    EXECUTE

    对于指定对象执行存储过程的权限。

    REPLICATION SLAVE

    使副本能够从源读取二进制日志事件的权限。

    REPLICATION CLIENT

    使用户能够查询源服务器或副本服务器的位置。

    CREATE VIEW

    对于指定对象创建和更改视图的权限。

    SHOW VIEW

    对于指定对象执行SHOW CREATE VIEW指令的权限。

    CREATE ROUTINE

    对于指定对象创建存储过程的权限。

    ALTER ROUTINE

    对于指定对象更改和删除存储过程的权限。

    CREATE USER

    对于指定对象执行CREATE USERDROP USERRENAME USERREVOKE ALL PRIVILEGES的权限。

    EVENT

    对于指定对象执行创建、更改、删除或显示事件调度器的权限。

    TRIGGER

    对于指定对象执行触发器操作的权限。具有此权限才能创建、删除、执行或显示该表的触发器。

  8. 用户信息设置完成后,单击“保存”,并在SQL预览窗口中单击“确定”
  9. 页面返回至用户管理列表页面。

    在用户管理列表中,您可对已创建的用户信息进行查询、编辑及删除操作。