Как настроить phpMyAdmin для нескольких пользователей - каждый из которых имеет доступ только к своей базе данных - PullRequest
5 голосов
/ 08 сентября 2010

Я хочу настроить phpMyAdmin так, чтобы он мог принимать один из нескольких различных входов в учетную запись пользователя. Каждому пользователю будет назначена определенная база данных, и он будет иметь доступ только к ней.

Конфигурацией по умолчанию с phpMyAdmin является один суперпользователь, например root, который имеет доступ ко всем базам данных на сервере.

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

Не могли бы вы или

  1. предложить решение
  2. прокомментируйте мои выводы с помощью приведенного ниже решения, которое необходимо настроить для правильной работы

Следующее решение работает - с дополнительным шагом (описанным ниже): http://alandoyle.com/tutorials/configuring-phpmyadmin-for-multiple-users/

Дополнительные шаги - сначала предположить, что вы установили пользователя и пароль mysql, например, 'anotheruser' и связал этого пользователя с базой данных - то есть добавил этого пользователя в список пользователей, которые могут получить доступ к этой базе данных.

2-й дополнительный шаг - снова запустить блок SQL-запроса, указанный на странице вышеупомянутого решения (после того, как он уже был запущен один раз, как указано в исходном тексте, почти так же, как в кавычках (очевидно, убедившись, что используется правильный пароль) )) но на этот раз для реального пользователя вы хотите дать доступ. Поэтому, если ваше имя пользователя - «другой пользователь», то вы заменяете pma на другого пользователя, а pmapassword на пароль для другого пользователя.

Так что вместе со всеми инструкциями это, кажется, работает. Тогда может показаться, что каждый раз при добавлении нового пользователя один и тот же запрос SQL должен выполняться для нового пользователя. Но у меня сложилось впечатление, что это было одноразовым запросом SQL для поддержки добавления любого количества пользователей и добавления их в базы данных через пользовательский интерфейс phpmyadmin. Мысли?

Другие решения смотрели на SO (но не совсем то, что мне нужно):

Ответы [ 2 ]

1 голос
/ 11 июля 2012

используйте это

  $cfg['Servers'][$i]['auth_type'] = 'cookie';

вместо

  $cfg['Servers'][$i]['auth_type'] = 'config';

в вашем config.inc.php и перезапустите сервисы, тогда процесс аутентификации начнется для всех пользователей, и они могут выполнять работу в соответствии с предоставленными грантами.

0 голосов
/ 24 июня 2015

Если вы хотите добавить другой хост с определенными пользователем и паролем, вы можете сделать это, добавив следующие строки в config.inc.php

первый элемент параметра auth_type устанавливается как cookie

$cfg['Servers'][$i]['auth_type'] = 'cookie';

и второе соединение изменяется как config (увеличивает переменную i)

$i++;
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'user';
$cfg['Servers'][$i]['password'] = 'password';
$cfg['Servers'][$i]['host'] = 'anotherhost';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...