Відповіді:
Ви можете створити нового користувача, додавши рядок до таблиці користувачів. Поле пароля повинно містити хешований пароль MD5. Ви можете використовувати онлайн-генератори MD5 або, якщо ви використовуєте PHPMyAdmin, вибрати функцію MD5 поруч із текстовим полем, де ви вводите звичайний пароль. Візьміть на замітку ідентифікатор користувача (uid) новоствореного користувача. Після цього потрібно знайти роль, яка має достатню кількість дозволів у таблиці ролей. Знайдіть ідентифікатор ролі (позбавлення) та введіть uid та rid у новий рядок у таблиці users_roles.
Якщо немає ролі, яка надає адміністратору доступ, оскільки клієнт робить все з користувачем 1, вам потрібно виконати трохи брудніший трюк. Збережіть хеш-код користувача 1 десь і тимчасово додайте новий пароль для користувача 1. Потім увійдіть із користувачем 1, створіть для себе новий обліковий запис, нову роль з достатніми дозволами та додайте себе до цієї ролі. Після цього відредагуйте користувача 1 у базі даних та відновіть пароль. Я можу порекомендувати роль адміністратора, щоб змусити роль мати всі дозволи постійно.
Існує набагато простіший спосіб.
http://mysite/user
та натисніть посилання відновлення пароля.Звичайно, це передбачає, що ваші системи розробників дозволяють друпал надсилати пошту з коробки. Це справедливо для більшості вікон Linux та OSX, але не для Windows.
drush uli
для входу як користувач 1.
Ви також можете створювати користувачів та призначати ролі за допомогою Drush , а також змінювати паролі для існуючих користувачів.
Drush - це командний рядок оболонки та інтерфейс сценаріїв для Drupal, справжнього ножа швейцарської армії, покликаного полегшити життя тим з нас, хто проводить частину своїх робочих годин на злому в командному рядку.
drush help uli
Якщо у вас є доступ до бази даних, запустіть наступний запит
UPDATE users
SET name='admin',
pass='$S$Drl0vgZ9yuU9uc4JyaTMHxMPriC7q/PsOUOx52fCrVQSTpI/Tu4x',
status=1
WHERE uid = 1;
реквізити для входу будуть:
ім'я користувача = адміністратор
пароль = drupal
ДОВІДКА ТУТ:
https://knackforge.com/blog/sivaji/different-ways-reset-drupal-admin-password
$user = array();
$user['status'] = 1; //for active user
$user['mail'] = 'test@test.com';
//profile field $user['profile_field_fname'] = 'Vikrant';
$user_account = array();
if($user_uid = module_name_get_uid_by_email($user['mail'])) { //It will use for update.
$user_account = user_load(array(uid => $user_uid));
}
//save or update user information.
user_save($user_account, $user);
//Check existing record by email.
function module_name_get_uid_by_email($email){
$query = db_query("SELECT uid FROM {users} WHERE mail = '%s'",$email);
$result = db_fetch_object($query);
return $result->uid;
}
Спробуйте вказаний вище код.
Якщо ви випадково використовуєте друк, ви можете використовувати, drush upwd [user] --password="[newpassword]"
який (повторно) встановлює пароль для користувача з вказаним іменем. ( upwd
це коротка версія команди для user-password
)
Приклад з drush: drush user-password someuser --password="correct horse battery staple"
який встановлює вказаний пароль для імені користувача "someuser".
Що ви можете зробити, це зайти в базу даних, зберегти старий пароль адміністратора, скинути пароль адміністратора, а потім увійти, створити нового користувача, а потім відновити пароль адміністратора до того, яким він був до початку роботи.
Якщо у вас є доступ до друку, ви можете зробити це:
cd <drupal root directory>
php scripts/password-hash.sh 'drupal'
потім візьміть генерований вище хеш-код MD5 та:
drush sql-cli
update users set name='admin', pass='pasted_big_hash_from_above' where uid=1;
quit
Це повинно зробити трюк.
( джерело )