ترحيل كلمة مرور Drupal إلى Discourse باستخدام المكون الإضافي discourse-migrate-password

١. تثبيت وتفعيل المكون الإضافي:

  • ابدأ بتثبيت مكون Discourse Migrate Password الإضافي من الرابط التالي:

مكون Discourse Migrate Password الإضافي
الرابط:
(discourse-migratepassword/plugin.rb at master · communiteq/discourse-migratepassword · GitHub).

  • بمجرد التثبيت، قم بتفعيل المكون الإضافي ضمن إعدادات Discourse الخاصة بك. هذا يتيح ترحيل كلمات المرور غير الآمنة إلى Discourse.

٢. إنشاء حقل مخصص:

  • ضمن Discourse، انتقل إلى إعدادات تخصيص المستخدم.
  • هنا، قم بإنشاء حقل مخصص باسم “import_pass”.

٣. استيراد المستخدمين:

  • قم باستيراد مستخدم واحد أو أكثر إلى Discourse باستخدام طريقتك المفضلة.
  • أثناء عملية الاستيراد، تأكد من تضمين سلسلة تجزئة (hash string) في حقل “import_pass” لكل مستخدم.

٤. محاولة تسجيل الدخول:

  • حاول تسجيل الدخول إلى Discourse باستخدام مزيج من اسم المستخدم المستورد وسلسلة التجزئة.
  • ومع ذلك، قد تواجه رسالة خطأ تفيد بأن “اسم المستخدم وكلمة المرور غير صحيحين”.

٥. تسجيل الدخول القياسي:

  • كبديل، يمكنك تسجيل الدخول بنجاح إلى Discourse باستخدام اسم المستخدم وكلمة المرور المرتبطين بالحساب.

يرجى مشاركة حل لاستخدام هذا المكون الإضافي في Discourse لترحيل كلمات مرور Drupal إلى Discourse
@Discourse

إعجاب واحد (1)

لكي يكون لدى Drupal دعم للمستخدمين المستوردين، من الضروري تعديل مستوردي Drupal الحاليين بحيث يقومون بملء حقل import_pass. المستورد الأساسي لديه دعم لهذا، لذا كل ما تحتاجه هو تغذية حقل قاعدة البيانات المطبق في الهيكل الذي تغذيه إلى create_users بالمفتاح password. على سبيل المثال، يقوم مستورد VBulletin بذلك هنا.

بالنسبة لمستوردي Drupal، هذا هنا و هنا.

الخطوة 2 هي شيء غير مطلوب أو ضروري ولن يكون كذلك أبدًا. من أين حصلت على ذلك؟

يجب عليك تمكين المكون الإضافي بعد الاستيراد وتركه معطلاً أثناء الاستيراد.

لذلك، فإن الخطوات الصحيحة هي:

  • استيراد المستخدمين
  • تثبيت وتمكين المكون الإضافي
إعجابَين (2)

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

سأكون ممتنًا جدًا إذا كان بإمكانك تزويدي بمزيد من الأفكار حول هذا الأمر. شكرًا مقدمًا على مساعدتك.

تعمل الإضافة عن طريق تجاوز الدالة confirm_password? الخاصة بفئة المستخدم.
تقوم أولاً باستدعاء فحص كلمة المرور الأصلي ولا تفعل شيئًا عندما يتم قبول كلمة المرور بواسطة منطق Discourse الأساسي.

إذا لم يكن الأمر كذلك، فإنها تتحقق مما إذا كان لدى المستخدم حقل مخصص import_pass وإذا كان الأمر كذلك، فإنها تستخدم جميع الخوارزميات المتاحة للتحقق من كلمة المرور المدخلة مقابل تجزئة import_pass.

إذا وجدت تطابقًا، فإنها تحفظ كلمة المرور المدخلة ككلمة مرور للمستخدم وتسمح للمستخدم بتسجيل الدخول.

3 إعجابات

لقد أنشأت طلب سحب (PR) يضيف دعم لتجزئات Drupal 6 التي تم ترحيلها إلى Drupal 7.

قد يكون هذا سببًا لاعتبار بيانات الاعتماد غير صالحة كما هو موضح في هذا الموضوع.

إعجاب واحد (1)