您的位置:首页 > 数据库 > MySQL

MySQL 密码安全

2015-11-13 15:26 399 查看
当执行的SQL语句中包含密码的时候(例如执行  CREATE USER,  GRANT ,   SET PASSWORD),或者调用PASSWORD() 函数时,这些语句都可能被MYSQL服务器日志所记录,如此一来任何可以访问日志的人都可以看到这些密码,这是非常危险的。

好在在MySQL 5.6.3之后,上述涉及密码的语句日志会被重写处理,将密码部分用...代替。但是不幸的是,INSERT、UPDATE等语句日志并不会被特殊处理,因此如果对mysql.user表进行INSERT/UPDATE等操作日志仍旧会明文记录密码,所以必须避免此类操作。

刚才说了,5.6.3版本以后会对用户密码语句的日志进行重写处理,但是如果在启动MYSQL的时候使用了  --log-raw选项,那么MYSQL就不会进行密码重写了,所以这个选项不要在生产环境使用,仅作为开发调试诊断时使用。

另一方面就是对日志本身的保护,控制日志文件的访问权限,如果日志不是以文件形式,而是存储在mysql库的日志表中,则要控制对此表的访问权限。主从环境下,slave也会存储密码用于同步master数据,也是存储在文件或者表中,需要同样加以保护。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: