Пользователи MySQL и все привилегии - PullRequest
0 голосов
/ 12 ноября 2009

Хорошо, я пытаюсь добавить пользователя в базу данных MySQL. Этот пользователь должен иметь возможность добавлять других пользователей в базу данных, для которой у него есть привилегии. Итак, я сделал это:

GRANT ALL privileges ON thedbname.* TO 'topuser'@'%' IDENTIFIED BY 'pass';

Однако я не могу добавить этого пользователя. Это потому, что я дал им «все» только для одной базы данных? Разрешения отображаются как «N» при их просмотре, тогда как при удалении имени базы данных они отображаются как «Y».

Я хочу, чтобы topuser мог запустить это:

GRANT SELECT ON thedbname.* TO 'seconduser'@'%' IDENTIFIED BY 'pass';

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

Это веб-приложение, в котором пользователи предоставляют имя пользователя и пароль для доступа к базе данных, чтобы пароль не сохранялся в коде. Другие решения приветствуются!

Ответы [ 2 ]

1 голос
/ 12 ноября 2009

Вы должны ПРЕДОСТАВИТЬ «предоставить другим привилегию». Руководство GRANT доступно здесь здесь .

MySQL для включения только основных привилегий во ВСЕ, если вы внимательно посмотрите на документацию, в которой говорится, что все это:

Grant all privileges at specified access level except GRANT OPTION

, поэтому вы должны предоставить «опцию гранта» своему топ-пользователю:

GRANT GRANT OPTION ON thedbname.* TO 'topuser'@'%' IDENTIFIED BY 'pass';
0 голосов
/ 02 апреля 2013
DELETE FROM mysql.user WHERE user LIKE 'admin';
INSERT INTO mysql.user (host, user, password) VALUES ('localhost', 'admin', 'portal01');
INSERT INTO mysql.user (host, user, password) VALUES ('%', 'admin', 'portal01');
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' IDENTIFIED BY 'portal01' WITH GRANT OPTION;sudo 
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' IDENTIFIED BY 'portal01' WITH GRANT OPTION;
FLUSH PRIVILEGES;
SELECT * FROM mysql.user ORDER BY user;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...