Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Права на столбцы не действуют: пользователь читает всю таблицу! [ MySQL 5.5.17]  (Прочитано 7369 раз)
0 Пользователей и 4 Гостей смотрят эту тему.
malor
Опытный

ru
Offline Offline

« : 24-11-2011 06:12 » 

GRANT SELECT (name, password) ON noderu.user TO 'nodeuser'@'%' IDENTIFIED BY '123456'







Прочел поле ID.

MySQL 5.5.17

* Priv_1.png (9.32 Кб - загружено 828 раз.)
Записан
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 24-11-2011 06:24 » 

Код: (MySQL)
SHOW GRANTS FOR 'nodeuser'@'%';

Результат в студию!
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
malor
Опытный

ru
Offline Offline

« Ответ #2 : 24-11-2011 06:41 » 

Я работаю на localhost:

* Priv_4.png (5.25 Кб - загружено 804 раз.)
Записан
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #3 : 24-11-2011 07:34 » 

А для 'nodeuser'@'%' ?
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
malor
Опытный

ru
Offline Offline

« Ответ #4 : 24-11-2011 07:42 » new

После написания первого поста я  уничтожил пользователя 'nodeuser'@'%', чтоб он нас не отвлекал.
Поэтому вид такой:
Записан
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #5 : 24-11-2011 07:58 » 

Мой тест.

Версия:

mysql> SELECT VERSION();
+------------+
| VERSION()  |
+------------+
| 5.5.17-cll |
+------------+
1 row in set (0.00 sec)

Подготовка теста:

mysql> CREATE USER 'test'@'%' IDENTIFIED BY 'test';
Query OK, 0 rows affected (0.00 sec)

mysql> CREATE TABLE t (id INT PRIMARY KEY, a VARCHAR(10), b INT);
Query OK, 0 rows affected (0.11 sec)

mysql> INSERT INTO t VALUES (1, 'aaa', 111), (2, 'bbb', 222);
Query OK, 2 rows affected (0.00 sec)
Records: 2  Duplicates: 0  Warnings: 0

mysql> GRANT SELECT (a) ON test.t TO 'test'@'%';
Query OK, 0 rows affected (0.00 sec)

mysql> SHOW GRANTS FOR 'test'@'%';
+-----------------------------------------------------------------------------------------------------+
| Grants for test@%                                                                                   |
+-----------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'test'@'%' IDENTIFIED BY PASSWORD '*94BDCEBE19083CE2A1F959FD02F964C7AF4CFC29' |
| GRANT SELECT (a) ON `test`.`t` TO 'test'@'%'                                                        |
+-----------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)

Тест под юзером:

mysql> SHOW TABLES;
+----------------+
| Tables_in_test |
+----------------+
| t              |
+----------------+
1 row in set (0.00 sec)

mysql> SELECT * FROM t;
ERROR 1143 (42000): SELECT command denied to user 'test'@'192.168.0.1' for column 'id' in table 't'
mysql> SELECT id FROM t;
ERROR 1143 (42000): SELECT command denied to user 'test'@'192.168.0.1' for column 'id' in table 't'
mysql> SELECT b FROM t;
ERROR 1143 (42000): SELECT command denied to user 'test'@'192.168.0.1' for column 'b' in table 't'
mysql> SELECT a FROM t;
+------+
| a    |
+------+
| aaa  |
| bbb  |
+------+
2 rows in set (0.00 sec)

Проверяй себя. Исследуй схему mysql в таом порядке:
user(user, host, password),
host(host, db),
db(user, host, db),
tables_priv(user, host, db, Table_name)
columns_priv(user, host, db, Table_name, Column_name)

Не изменяй этих таблиц напрямую, но если все таки изменил, выполни FLUSH PRIVILEGES.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines