Mysql test开头的库,所有用户在这库上都有管理员权限

来源:互联网 发布:elsevier sd数据库 编辑:程序博客网 时间:2024/06/10 03:06

只针对test库和以test_为前缀的库:


select * from mysql.userwhere user='xx';

host:%

user:xx

pass:xxxxxxxxxxxxxxxxxx

看到只有select_priv:Y

其他都是N


但是在一台主机上登陆:

mysql -uxx -pxxxxxxxxxxxxxxxxxx -h192.168.100.20 -P3306

mysql>use test

可以在test下建表,删表以及其他写操作


用其他账号建立一个新库test2

再使用只读账号去写test2,则会提示权限不足


然后用其它账号删除test库后再建立test库,看只读账号是否可以写test

试验证明只读账号仍然可以写其他账号新建的test库【安全隐患


所以为了安全起见:

建议在安装MySQL之后,立即删除test库,同时不允许建立test库,删除mysql.db中关于test和以test_为前缀的系统安装时自带的两个规则


测试:





这是 mysql 的默认规则,文档上写得很清楚,凡是名字以 test 这 4 个字母开头的 db,所有用户在这个库上都有管理员权限。所以为了安全,一般在装好 mysql 以后,都会删除 test 库。


阅读全文
1 0
原创粉丝点击