1 (изменено: loadpoint, 2011-09-01 16:12:21)

Тема: Организация прав пользователей в phpmyadmin

Разобрался с config.inс.php . Настроил так, чтобы в pma ножно было попасть только введя пару логин-пароль. (доступ с любого компьютера)
Хочу сделать как в хостингах, чтобы было видна только  твоя БД, а остальные - невидно.
Начал делать так:
создал пользователя (прототип клиента хостинга)  дал полные права на  БД и таблицы, содержащие в названии имя пользователя. НАпример,  есть пользователь ohrana. Полный доступ у него к  БД ohrana_data, ohrana_persons,
а БД information_schema, phpmyadmin, mysql  - не  должны быть видны просто напросто.
Дак вот, все  было норм, кроме вот чего: БД information_schema все равно видна пользователю(правда он ее не может редактировать, но видет ее поля(

2

Re: Организация прав пользователей в phpmyadmin

Пропишите в config.inc.php строку:

$cfg['Servers'][$i]['hide_db'] = 'information_schema';

Это скроет БД information_schema из списка. Данные в БД information_schema принадлежат только пользователю и никаких данных других пользователей там нет, поэтому скрывать ее не обязательно.

3 (изменено: loadpoint, 2011-09-01 19:09:34)

Re: Организация прав пользователей в phpmyadmin

Hanut сказал:

Пропишите в config.inc.php строку:
Данные в БД information_schema принадлежат только пользователю и никаких данных других пользователей там нет, поэтому скрывать ее не обязательно.

Это хорошо!) спасибо за ответ.

а вот такой еще момент обнаружился:
чтобы пользователь сам себе мог создавать  БД я присвоил ему глобальную привелегию CREATE, и после этого этому пользователю стали видны все базы, но редактировать он их по прежнему не может. Это можно как то решить (чтобы  было видно только то, что создал сам пользователь)?

4

Re: Организация прав пользователей в phpmyadmin

Если при создании пользователя вы выбрали "Предоставить полные привилегии на базы данных подпадающие под шаблон (имя пользователя\_%)", то все должно работать, как надо. Тогда пользователь сможет создать БД только с префиксом и не будет видеть других.