Как отозвать гранты для пользователя с двойными кавычками в нем - PullRequest
0 голосов
/ 06 января 2020

Я по ошибке создал и предоставил разрешения пользователю с двойными кавычками в моей базе данных mariadb.

MariaDB [mysql]> select * from information_schema.user_privileges;

+--------------------------------------+---------------+-------------------------+--------------+
| GRANTEE                              | TABLE_CATALOG | PRIVILEGE_TYPE          | IS_GRANTABLE |
+--------------------------------------+---------------+-------------------------+--------------+
  ...                                                                                            
| '"bob@grr.la"'@'%'                   | def           | SELECT                  | NO           |
| '"bob@grr.la"'@'%'                   | def           | INSERT                  | NO           |
| '"bob@grr.la"'@'%'                   | def           | UPDATE                  | NO           |
| '"bob@grr.la"'@'%'                   | def           | DELETE                  | NO           |
  ...
+--------------------------------------+---------------+-------------------------+--------------+

Я пробовал много разных комбинаций escape, но, похоже, я не смог нацелиться этот пользователь, когда я пытаюсь отозвать привилегии для него.

Я пытался:

revoke all, grant option from '"bob@grr.la"'@'%';
revoke all, grant option from "bob@grr.la"@'%';
revoke all, grant option from \"bob@grr.la\"@'%';
revoke all, grant option from "%bob%"@'%';
revoke all, grant option from '%bob%'@'%';

Ни одна из этих работ. Что дает?

Ответы [ 2 ]

0 голосов
/ 15 января 2020

Команда REVOKE должна иметь точно такие же аргументы, что и GRANT. Например, GRANT SELECT ... не отменяется REVOKE ALL PRIVILEGES ...

0 голосов
/ 06 января 2020

Вам необходимо избежать двойной кавычки, например:

MariaDB [(none)]> create user '\"bob@grr.la\"'@'%';
Query OK, 0 rows affected (0.01 sec)

MariaDB [(none)]> grant all on test.* to '\"bob@grr.la\"'@'%';
Query OK, 0 rows affected (0.01 sec)

MariaDB [(none)]> revoke all privileges, grant option from '\"bob@grr.la\"'@'%';
Query OK, 0 rows affected (0.01 sec)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...