Как остановить пользователей MySQL, вызывающих «показывать» функции - PullRequest
0 голосов
/ 01 декабря 2009

Как мы можем предотвратить запрос «показать базы данных»; или "показать таблицы"; в mysql для любого пользователя без полномочий root. Это возможно.

Заранее спасибо ........

Ответы [ 3 ]

1 голос
/ 01 декабря 2009

Пользователь без полномочий root видит все базы данных, только если у него есть глобальные права (например, GRANT что-то ON *. *). Таким образом, решение состоит в том, чтобы всегда предоставлять все ON databasename . *, А не глобальный.

0 голосов
/ 01 декабря 2009

Не могу получить ссылку прямо сейчас, но это проблема с разрешениями в глубине и контроль над доступом к пользователю root.

Для чего-то вроде phpmyadmin или другого инструмента вы хотите отозвать разрешения в этих двух базах данных (и любых других) всем пользователям, кроме вашего администратора root. Если вы находитесь на общем сервере, где вы обычно получаете одного пользователя для своей базы данных, вам нужно поговорить с вашим хостом.

Мое общее правило (если у меня есть права доступа к серверу БД) - создавать нового пользователя для конкретной базы данных или (подмножества таблиц) и всегда использовать этого пользователя только из Интернета или другого приложения, с которым происходит общение. дБ. Сначала это больше, но после того, как вы его настроите, у вас будет гораздо больше контроля и вы поймете, что одно приложение не может мешать другому.

Корневой доступ просто не разрешен для использования приложением - только для обслуживания.

0 голосов
/ 01 декабря 2009

Я бы дал show_db_priv попытку:

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

Но были сообщения, что это не работает. Смотрите эту запись об ошибке:

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...