php myadmin — добавление пароля для аутентификации

#phpmyadmin

#phpmyadmin

Вопрос:

По умолчанию пароль для доступа к php myadmin не требуется, но я хотел добавить пароль для входа.

Прочитав несколько сообщений, я внес следующие изменения в config.inc.php файл :

1) Изменен

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

  to  
   $cfg['Servers'][$i]['auth_type'] = 'http';
 

2) Вставил пароль в строку $cfg[‘Servers’][$i][‘password’] = «;

3) $cfg[‘Servers’][$i][‘AllowNoPassword’] = true;

После внесения этих изменений я получаю форму входа в систему, но когда я вхожу с именем пользователя «root» и сохраненным паролем, вход в систему не работает.

Пожалуйста, предложите решение. Благодарю вас в ожидании.

Ответ №1:

Вам не нужно делать это вручную. Просто войдите в систему без пароля, перейдите к пользователям, выберите root и измените пароль там! Пользовательский интерфейс)

Комментарии:

1. После перехода на страницу пользователя я нажимаю «Редактировать предварительный просмотр» для пользователя root. На этой странице есть два раздела «Изменить пароль» и «Изменить регистрационную информацию / Скопировать пользователя». Я попытался сменить пароль с помощью обоих, но ни один из них не работает. Есть идеи.

2. Раздел смены пароля отлично работает для меня) убедитесь, что root имеет все привилегии и попробуйте еще раз

3. Затем попробуйте это: перейдите в терминал (или cmd в Windows), подключитесь к mysql и введите: УСТАНОВИТЕ ПАРОЛЬ ДЛЯ root@localhost = PASSWORD(‘yourpassword’);

Ответ №2:

После внесения этих изменений я получаю форму входа в систему, но когда я вхожу с именем пользователя «root» и сохраненным паролем, вход в систему не работает.

Это потому, что он запрашивает пароль корневого пользователя MySQL, а не пароль, который вы установили $cfg['Servers'][$i]['password'] = ''; .

phpMyAdmin не имеет явных разрешений для себя; он просто передает любое имя пользователя и пароль, которые вы предоставляете серверу MySQL. См. http://docs.phpmyadmin.net/en/latest/intro.html#a-word-about-users

При использовании конфигурации auth_type имя пользователя и пароль, которые вводятся в ваш config.inc.php for $cfg['Servers'][$i]['user'] = ''; и $cfg['Servers'][$i]['password'] = ''; используются для входа в MySQL. При использовании других auth_types (cookie и http) эти поля полностью игнорируются, и все, что вы вводите в приглашении для входа при подключении к phpMyAdmin, передается непосредственно на сервер MySQL.

Таким образом, вы можете удалить строку «пароль», поскольку она ничего не делает. То, что вы, вероятно, намерены сделать, это, как указал Джахонгир, и изменить пароль пользователя root. Обратите внимание, что у вас почти наверняка есть как минимум два пользователя root, и вам, вероятно, следует изменить пароль для каждого из них. Какой из них вы на самом деле пытаетесь войти в систему, зависит от типа вашего соединения (tcp или сокеты) и от того, получаете ли вы доступ с другого компьютера в сети полностью. Так что проще всего просто изменить их все и не беспокоиться об этом.