it-swarm.asia

إضافة مستخدم جديد مباشرة في قاعدة البيانات

لقد أعطيت الملفات إلى موقع Drupal حتى أتمكن من إنشاء سمة جديدة. ومع ذلك ، لم يتم إعطائي Drupal/كلمة المرور حتى لا يمكنني تسجيل الدخول إلى منطقة المشرف. هل هناك طريقة يمكنني من خلالها إنشاء مستخدم جديد مباشرةً في قاعدة البيانات أو بطريقة أخرى؟

13
Jane

يمكنك إنشاء مستخدم جديد بإضافة صف إلى جدول المستخدمين. يجب أن يحتوي حقل كلمة المرور على كلمة مرور مجزأة MD5. يمكنك استخدام مولدات MD5 عبر الإنترنت أو ، إذا كنت تستخدم PHPMyAdmin ، حدد وظيفة MD5 بجوار مربع النص حيث تقوم بإدخال كلمة المرور العادية. دوّن معرف المستخدم (uid) للمستخدم الذي تم إنشاؤه حديثًا. بعد ذلك ، تحتاج إلى العثور على دور له أذونات كافية في جدول الدور. ابحث عن معرف الدور (تخليص) وأدخل uid وقم بالتخلص في صف جديد في جدول users_roles.

إذا لم يكن هناك دور يمنح وصول المسؤول ، لأن العميل يفعل كل شيء مع المستخدم 1 ، فأنت بحاجة إلى تنفيذ خدعة أكثر قذارة قليلاً. احفظ تجزئة كلمة المرور للمستخدم 1 في مكان ما وأضف مؤقتًا كلمة مرور جديدة للمستخدم 1. ثم سجل الدخول باستخدام المستخدم 1 ، وأنشئ حسابًا جديدًا لنفسك ، ودورًا جديدًا بأذونات كافية ، وأضف نفسك إلى هذا الدور. بعد ذلك ، قم بتحرير المستخدم 1 في قاعدة البيانات واستعادة كلمة المرور. يمكنني أن أوصي دور المشرف لإجبار الدور على امتلاك جميع الأذونات في جميع الأوقات.

10
Jorrit Schippers

هناك طريقة أسهل بكثير.

  1. انتقل إلى قاعدة البيانات وقم بتغيير حقل عنوان البريد الإلكتروني للمستخدم بالمعرف 1 وقم بتعيينه على عنوان بريدك الإلكتروني.
  2. اذهب إلى http://mysite/user وانقر على رابط استعادة كلمة المرور.
  3. أدخل عنوان بريدك الإلكتروني وستحصل على رابط استعادة كلمة المرور.

بالطبع هذا يفترض أن أنظمة ديف الخاصة بك تسمح drupal بإرسال رسائل خارج الصندوق. هذا صحيح بالنسبة لمعظم صناديق لينكس و OSX ولكن ليس لـ Windows.

13
BetaRide

يمكنك أيضًا إنشاء مستخدمين وتعيين أدوار باستخدام Drush ، بالإضافة إلى تغيير كلمات المرور للمستخدمين الحاليين.

Drush عبارة عن واجهة سطر أوامر ونص برمجي لـ Drupal ، سكين حقيقي للجيش السويسري مصمم لتسهيل الحياة بالنسبة لنا الذين يقضون بعض ساعات العمل لدينا في الاختراق في موجه الأوامر.

9
mpdonadio

إذا كان لديك حق الوصول إلى قاعدة البيانات ، فقم بتشغيل الاستعلام التالي

UPDATE users 
SET name='admin', 
pass='$S$Drl0vgZ9yuU9uc4JyaTMHxMPriC7q/PsOUOx52fCrVQSTpI/Tu4x',
status=1 
WHERE uid = 1;

ستكون تفاصيل تسجيل الدخول:

اسم المستخدم = admin

كلمة المرور = دروبال


المشار إليها هنا:

https://knackforge.com/blog/sivaji/different-ways-reset-drupal-admin-password

5
Craig Wayne
$user = array();
$user['status'] = 1; //for active user
$user['mail'] = '[email protected]';
//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;
}

جرب الرمز أعلاه.

2
Satya

إذا كنت تستخدم drush يمكنك استخدام drush upwd [user] --password="[newpassword]" الذي (يعيد) تعيين كلمة المرور للمستخدم بالاسم المحدد. (upwd هو إصدار الأمر المختصر لـ user-password)

مثال من الثمار: drush user-password someuser --password="correct horse battery staple" التي تحدد كلمة المرور المحددة لاسم المستخدم "someuser".

2
baikho

ما يمكنك فعله هو الدخول إلى قاعدة البيانات وحفظ كلمة مرور المسؤول القديمة وإعادة تعيين كلمة مرور المسؤول ثم تسجيل الدخول وإنشاء مستخدم جديد ثم إعادة تعيين كلمة مرور المسؤول إلى ما كانت عليه قبل البدء.

إذا كان لديك حق الوصول إلى السحق ، فيمكنك القيام بذلك:

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

الذي عليه أن يقوم بالخدعة.

( المصدر )

1
EddieN120