用户组使用指南

简介

平凯数据库在 V7.1.8 版本开始支持用户组,该功能是 Role (角色) 的同义词,基本可以和 Role 关键字混合使用。

创建用户

CREATE USER 'testug'@'%' identified by 'testug';

创建表

CREATE DATABASE testug; USE testug; CREATE TABLE t1 (a int);

创建用户组

CREATE GROUP group1;

赋予用户组库的查询权限

GRANT SELECT ON testug.* TO group1;

权限检查

使用 'testug'@'%' 登录数据库,查询 testug.t1 发现没有权限。

mysql -ulinpin -hxxx -plinpin -Pxxx select * from linpin.t1; ERROR 1142 (42000): SELECT command denied to user 'testug'@'%' for table 't1'

将用户组赋予特定用户

把 group1 赋权给用户 'testug'@'%',再次查询 testug.t1,有权限了。

-- 高权用户执行 grant group1 to 'testug'@'%'; -- testug 用户执行 set Group group1; -- testug 用户执行,执行成功 select * from testug.t1

权限回收后验证

把 group1 从用户 'testug'@'%' revoke 掉,再次查询 testug.t1,没有权限了。

-- 高权用户执行 REVOKE SELECT ON testug.* FROM group1; -- testug 用户执行 select * from testug.t1; ERROR 1142 (42000): SELECT command denied to user 'testug'@'%' for table 't1

删除用户组

drop group group1;