GBase 8a
运维管理
文章

GBase8a用户权限精细化配置步骤(含角色管理)

发表于2025-12-25 17:23:5047次浏览1个评论

一、核心需求:

创建3类用户:报表只读用户(read_only)、业务读写用户(biz_rw)、运维管理员(ops_admin),实现权限隔离。

二、配置步骤:

1. 创建角色(简化权限管理):

① 创建只读角色:create role role_read; 

② 创建读写角色:create role role_rw; 

③ 授权角色权限:grant select on business_db.* to role_read; grant select,insert,update,delete on business_db.* to role_rw; grant all privileges on *.* to ops_admin_role;。

2. 创建用户并关联角色:

① 报表用户:create user 'read_only'@'%' identified by 'Read@123456'; grant role_read to 'read_only'@'%'; 

② 业务用户:create user 'biz_rw'@'192.168.1.%' identified by 'Biz@123456'; grant role_rw to 'biz_rw'@'192.168.1.%'; 

③ 运维用户:create user 'ops_admin'@'192.168.1.100' identified by 'Ops@123456'; grant ops_admin_role to 'ops_admin'@'192.168.1.100';。

3. 权限验证:

① 登录read_only用户:gcluster -u read_only -p Read@123456 -e "insert into business_db.order_table values(1);" → 提示“permission denied”(正确);

② 登录biz_rw用户:执行相同insert语句,执行成功(正确)。

4. 权限回收:若业务用户离职,执行:revoke role_rw from 'biz_rw'@'192.168.1.%'; drop user 'biz_rw'@'192.168.1.%';。

三、关键参数:

1. sql_mode:建议开启STRICT_TRANS_TABLES,避免权限绕过;

2. skip_name_resolve:开启后禁止DNS解析,提升用户登录效率,需在配置文件中设置。四、经验总结:使用角色管理权限可简化运维,用户授权遵循“最小权限+IP限制”原则,定期执行“show grants for 用户名;”核查权限。

评论

登录后才可以发表评论
崔哥发表于 4个月前
暖雨晴风初破冻,柳眼梅腮,已觉春心动。酒意诗情谁与共,泪融残粉花钿重。乍试夹衫金缕缝,山枕斜欹,枕损钗头凤。独抱浓愁无好梦,夜阑犹剪灯花弄。