欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

提高MySQL数据库的安全性(三)

程序员文章站 2022-04-09 09:45:12
...
从用户权限角度谈谈如何提高MySQL数据库的安全性

俗话说,知识就是力量。请确认你已经了解了MySQL的权限系统,以及授予特定权限的后果。请不要授予任何用户不必要的权限。应该查看garnt表来确认这一点。

特别的,如果不是绝对需要,请不要将PROCESS、FILE、SHUTDOWN和RELOAD等权限授予任何非管理员的用户。PROCESS权限可观察其他用户正在做什么,输入了什么,包括他们输入的密码。FILE权限可以用来读写操作系统中的文件,例如,包括UNIX系统中的/etc/password。

GRANT权限也要在授予的时候非常小心,因为他们准许用户将自己的权限分享给其他用户。

请确认在建立用户的时候,只授予他们从当前连接的主机访问数据库权限。有一个名为jane@localhost的用户,这没有问题,但是简单的jane是非常常见的,他可能从任何地方进行登录--这个jane可能不是你想象中的jane。同样的原因,我们应该避免在主机名中使用通配符。

可以通过在host表中使用IP地址而不是域名来提高安全性能。这可以在DNS位置避免错误问题或者黑客入侵。可以通过启动MySQL后台程序--skip-name-resolve选项加强它,该选项的意思是所有主机列的值必须是IP地址或本地主机。

此外,还应该防止非管理员用户访问Web服务器中的mysqladmin程序。因为这是从命令行运行的,它是操作系统权限的问题。


限制远程访问MySQL服务器

对于大多数用户来说,不需要通过不安全的开放网络来访问MySQL服务器。你可以通过配置防火墙或硬件,或者迫使MySQL只听从localhost来限制主机。此外,需要SSH隧道才能进行远程访问。

如果你想仅仅从本地主机来限制用户建立连接,你需要在在配置文件中添加bind-address=127.0.0.1。

【相关推荐】

提高MySQL数据库的安全性(一)

提高MySQL数据库的安全性(二)

提高MySQL数据库的安全性(四)

以上就是提高MySQL数据库的安全性(三)的详细内容,更多请关注其它相关文章!