MYSQL在my.ini文件中添加skip-grant-tables启动参数的副作用(安全隐患)

运行环境:Mysql5.7.20.

为了说明情况,首先创建一个普通用户,名字'wxf',密码123。如图:

MYSQL在my.ini文件中添加skip-grant-tables启动参数的副作用(安全隐患)_第1张图片

可以看到,仅授权查询权限。现在退出root用户,使用创建的用户登陆mysql。如图:

MYSQL在my.ini文件中添加skip-grant-tables启动参数的副作用(安全隐患)_第2张图片

可以看到,正常登陆。现在执行相关操作,发现奥秘。如图:

MYSQL在my.ini文件中添加skip-grant-tables启动参数的副作用(安全隐患)_第3张图片

明显UPDATE操作不能成功。现在,就是见证奇迹的时刻了,在my.ini文件中添加skip-grant-tables启动参数,然后重启MYSQL服务。如图:


然后,使用该用户重新登录MYSQL,查看相关权限。如图:

MYSQL在my.ini文件中添加skip-grant-tables启动参数的副作用(安全隐患)_第4张图片

明显没有插入和更新权限,现在我们尝试更新和插入数据到刚才的表格。如图:

MYSQL在my.ini文件中添加skip-grant-tables启动参数的副作用(安全隐患)_第5张图片

MYSQL在my.ini文件中添加skip-grant-tables启动参数的副作用(安全隐患)_第6张图片

可以看到,插入和更新都成功了。但是并没有为该普通用户授权UPDATE和INSERT,如果是这样,那就会产生很大的安全隐患。

skip-grant-tables作为启动参数的作用:MYSQL服务器不加载权限判断,任何用户都能访问数据库。

一般的使用情况是当root用户密码丢失时以此参数作为启动项。所以,慎用之。






你可能感兴趣的:(Mysql)