【问题标题】:How to stop mySQL users calling "show" functions如何阻止 mySQL 用户调用“显示”函数
【发布时间】:2012-01-18 23:41:19
【问题描述】:

我们怎样才能防止查询“显示数据库;”或“显示表格”;在任何非root用户的mysql中。这可能吗。如果是这样,请提供一个示例或适当的链接...表明这一点..

提前谢谢........

【问题讨论】:

    标签: mysql database-permissions


    【解决方案1】:

    只有拥有全局权限的非 root 用户才能看到所有数据库(例如 GRANT something ON *.*)。因此,解决方案是始终授予所有内容 ON databasename.* ,而不是全局。

    【讨论】:

      【解决方案2】:

      我会试试show_db_priv

      http://dev.mysql.com/doc/refman/5.1/en/grant-table-structure.html

      但是,有报道称这不起作用。请参阅此错误条目:

      http://bugs.mysql.com/bug.php?id=1048

      【讨论】:

        【解决方案3】:

        目前无法为您提供链接,但这本质上是一个权限问题,并且控制了对 root 用户的访问。

        在 phpmyadmin 或其他工具上,您希望撤销除根管理员之外的所有用户对这两个数据库(以及任何其他数据库)的权限。如果您在一个共享服务器上,您通常会为您的一个数据库获得一个用户,您需要与您的主机交谈。

        我的一般规则(如果我对 db 服务器有权限控制)是为特定数据库或(表的子集)创建一个新用户,并且始终只使用来自 web 或其他与之通信的应用程序的用户分贝。最初需要更多设置,但一旦设置完成,您将获得更多控制权,并且知道一个应用程序不会干扰另一个应用程序。

        根本不允许根访问权限用于应用程序使用 - 仅用于维护。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-04-13
          • 2016-10-31
          相关资源
          最近更新 更多