MySQL5.7--------proxy实现rols管理
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,1. 背景* 角色的概念管理数据库访问权限。 根据角色自身的设置不同,一个角色可以看做是一个数据库用户,或者一组数据库用户。 角色可以拥有数据库对象(比如,表)以及可以把这些对象上的权限赋予其它角色,
千家信息网最后更新 2026年11月02日MySQL5.7--------proxy实现rols管理
1. 背景
* 角色的概念管理数据库访问权限。 根据角色自身的设置不同,一个角色可以看做是一个数据库用户,或者一组数据库用户。 角色可以拥有数据库对象(比如,表)以及可以把这些对象上的权限赋予其它角色, 以控制谁拥有访问哪些对象的权限。另外,我们也可以把一个角色的成员 (membership)权限赋予其它角色,这样就允许成员角色使用它被赋予成员权限的角色之权限。
* MySQL 5.7开始利用 'proxy' 代理实现类似 'rols' 角色管理功能。
2. 环境
* MySQL Server
Server version: 5.7.18 MySQL Community Server (GPL)Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> select version();+-----------+| version() |+-----------+| 5.7.18 |+-----------+1 row in set (0.00 sec)
3. 实现
* 启用代理用户映射
mysql> SET @@global.check_proxy_users = ON;Query OK, 0 rows affected (0.00 sec)mysql> SET @@global.mysql_native_password_proxy_users = ON;Query OK, 0 rows affected (0.00 sec)
* 创建角色(rols) 用户
mysql> create user 'rols_it'@'127.0.0.1';Query OK, 0 rows affected (0.01 sec)
* 创建普通用户tom
mysql> create user 'tom'@'127.0.0.1' identified by '123456';Query OK, 0 rows affected (0.00 sec)
* 通过proxy方式添加tom用户到角色
mysql> grant proxy on 'rols_it'@'127.0.0.1' to 'tom'@'127.0.0.1';Query OK, 0 rows affected (0.00 sec)
4. 测试
* 创建测试数据库 it
mysql> create database it;Query OK, 1 row affected (0.00 sec)
* 给角色 (rols) 添加数据库 it 的查看权限
mysql> grant select ON it.* TO 'rols_it'@'127.0.0.1';Query OK, 0 rows affected (0.00 sec)
* 查看角色权限
mysql> show grants for 'rols_it'@'127.0.0.1';+-------------------------------------------------+| Grants for rols_it@127.0.0.1 |+-------------------------------------------------+| GRANT USAGE ON *.* TO 'rols_it'@'127.0.0.1' || GRANT SELECT ON `it`.* TO 'rols_it'@'127.0.0.1' |+-------------------------------------------------+2 rows in set (0.01 sec)
* 查看tom用户权限
mysql> show grants for 'tom'@'127.0.0.1';+-----------------------------------------------------------+| Grants for tom@127.0.0.1 |+-----------------------------------------------------------+| GRANT USAGE ON *.* TO 'tom'@'127.0.0.1' || GRANT PROXY ON 'rols_it'@'127.0.0.1' TO 'tom'@'127.0.0.1' |+-----------------------------------------------------------+2 rows in set (0.00 sec)
* 通过tom用户登陆连接MySQL
[root@MySQL mysql_data]# mysql -utom -p123456 -h227.0.0.1mysql: [Warning] Using a password on the command line interface can be insecure.Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 14Server version: 5.7.18-log MySQL Community Server (GPL)Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> show databases;+--------------------+| Database |+--------------------+| information_schema || it |+--------------------+2 rows in set (0.00 sec)
5. 总结
以需求驱动技术,技术本身没有优略之分,只有业务之分。
角色
权限
用户
数据
数据库
对象
成员
管理
技术
代理
测试
不同
普通
业务
功能
只有
方式
概念
环境
背景
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
百单网互联网科技有限公司怎么样
科技和互联网公司
科技互联网政务服务
互联网未来科技
紫鲸互联网科技
奇士达互联网科技
互联网科技ppt模板
互联网科技有限公司 翻译
哈尔滨新华互联网科技
恒生科技互联网指数分析
科技与互联网的利与弊
天速互联网络科技有限公司
港股科技和互联网
玉溪互联网科技怎么选
恒生互联网科技指数跳水
996高科技互联网公司
陕西九四连强互联网科技有限公司
互联网金融金融科技
网互联网络科技
科技互联网企业在行动
科技创新与互联网经济
互联网与新科技
艾特科技互联网
深圳天众互联网科技公司
一五八零互联网科技
互联网实体化科技化
北京华百购互联网科技有限公司
互联网科技商业
国大互联网教育科技有限公司薪资
南通创西澳互联网科技有限公司