Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Привилегии, есть ли возможность скрыть таблицы 
:(
    Опции темы
Сириус
Дата 1.5.2009, 21:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 80
Регистрация: 26.11.2005

Репутация: нет
Всего: нет



Здравствуйте.
Я хотел бы узнать, имеется ли возможность скрыть таблицы от списка таблиц в information_schema.tables ?
То есть я хочу, чтоб некоторые таблицы выводились при запросе select table_name from information_schema.tables , 
а некоторые оставались невидимыми. Это возможно? 


Скажем у меня есть сайт, в нем имеются две папки
folder1,
folder2,
я хочу, чтоб в папке folder1 выводился один список таблиц, (в information_schema.tables)
а в папке folder2 - другой список таблиц,

Вообщем, имеется ли возможность такого контроля ?
Мне просто нужно скрыть имена и данные некоторых таблиц (в таблицах tables, columns, ..), даже в случае, если человек будет иметь доступ к базе через sql иньекции к примеру, но я не хочу запрещать доступ к information_schema вообще, я просто хочу скрыть некоторые таблицы.
PM MAIL   Вверх
Gwire
Дата 2.5.2009, 02:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 216
Регистрация: 7.8.2007
Где: Николаев

Репутация: 1
Всего: 4



То есть ты хочешь, чтобы
в таблице TABLE_PRIVILEGES появились записи типа:
Код
INSERT INTO FROM `TABLE_PRIVILEGES`
  VALUES ('user', NULL, 'your_schema', 'your_table', 'SELECT', 'NO')
 smile Незнаю. Сам както мучился...

Другой вопрос
Цитата(Сириус @  1.5.2009,  21:37 Найти цитируемый пост)
человек будет иметь доступ к базе

Какими правами обладает этот человек?
Если этот человек "GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' IDENTIFIED BY '***'" то исли он захочет посмотреть - он посмотрит. Вплоть до удаления этих установок. 
А если он "GRANT ALL PRIVILEGES ON other_schema.* TO 'user'@'%' IDENTIFIED BY '***'" то он будет видеть только "information_schema" и "other_schema".
Драйвер MySQL не будет выбирать для него в "TABLES" или "COLUMNS" не разрешенные схемы.



PM MAIL   Вверх
Сириус
Дата 2.5.2009, 03:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 80
Регистрация: 26.11.2005

Репутация: нет
Всего: нет



У нас есть таблица information_schema.tables
Если сделать запрос вида SELECT table_name FROM information_schema.tables
то мы получим список всех существующих таблиц из всех баз.
Так вот, мой вопрос очень простой, как можно сделать так, чтобы некоторые таблицы в этом списке не появлялись?
То есть, если запрос выдает 
SELECT table_name FROM information_schema.tables
результат:
table1
table2
table3
table4
table5
table6
---------
И скажем я хочу скрыть таблицу table2, чтоб если кто-то извне, найдя какую-то багу в моем сайте, выполнит SQL иньекцию с запросом
SELECT table_name FROM information_schema.tables
чтоб результат ему выдался такой
table1
table3
table4
table5
table6
---------
То есть, как можете заметить, таблицы table2 нет в списке. 
Так вот, это возможно, или нет?
PM MAIL   Вверх
Gwire
Дата 13.5.2009, 17:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 216
Регистрация: 7.8.2007
Где: Николаев

Репутация: 1
Всего: 4



Исли ты хочешь скрыть свою базу - убери права у всех пользователей на твою базу.
Конечно эта затея очень стрёмная.
А если желаемый объект - таблица...
smile Увы, я с такими примочками не знаком и другие похоже тоже.
Скорее всего такой функции не имеется в MySQL. smile 

PM MAIL   Вверх
zav74
Дата 14.5.2009, 23:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 113
Регистрация: 19.7.2006

Репутация: нет
Всего: нет



Если глобально скрыть все права, то можно устанавливать права на каждую из таблиц. У меня есть разграничения по базам-то есть в information_schema база появляется только в том случае, если у пользователя есть какие-то привелегии на нее. Думаю, с таблицами тоже самое.
http://www.mysql.ru/docs/man/Privileges.html
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MySQL | Следующая тема »


 




[ Время генерации скрипта: 0.0624 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.