أحتاج إلى تطبيق تغييرات مخصصة على مستوى التعليمات البرمجية وعلى مستوى قاعدة البيانات في تطبيق Discourse Rails الخاص بي لتلبية متطلباتي المحددة.
تحديث طريقة تشفير كلمة المرور. حاليًا، يستخدم Discourse “PBKDF2” لتشفير كلمة المرور.
وفقًا لمتطلباتي، أحتاج إلى التبديل إلى “MD5” بدلاً من “PBKDF2”.
لقد قمت بإعداد التعليمات البرمجية في بيئتي المحلية وقمت أيضًا بنشر Discourse في بيئة الإنتاج باستخدام Docker.
عندما أقوم بتحديث التعليمات البرمجية المحلية بناءً على متطلباتي، أحتاج إلى إعادة نشر التعليمات البرمجية المحدثة الخاصة بي في بيئة الإنتاج، ولكن حاليًا، قمت بتعيين ملف Docker الرسمي لـ Discourse في بيئة الإنتاج، لذا أحتاج إلى إنشاء ملف Docker جديد. كيف يمكنني إنشاء ملف Docker جديد وكيف يمكنني الوصول إلى قاعدة بيانات PostgreSQL لتطبيق Discourse في بيئة الإنتاج؟
يبدو هذا تدهورًا أمنيًا كبيرًا. MD5 غير مناسب لتجزئة كلمات المرور. لن يؤثر هذا التغيير على جزء حاسم من Discourse فحسب، بل ستحتاج أيضًا إلى صيانته لجميع الإصدارات المستقبلية.
ربما يمكننا اقتراح نهج أفضل إذا كان بإمكانك شرح ما تحاول تحقيقه.
تريد إجراء تغييراتك في إضافة. إذا كنت ترغب في عمل نسخة من Discourse ومحاولة صيانتها بشكل منفصل، فسوف تندم بشدة، إذا كان التاريخ مؤشرًا.
ما المشكلة التي تحاول حلها باستخدام كلمات المرور المخزنة كـ MD5 hash؟ كما تم اقتراحه بالفعل، يبدو أن الإنترنت بأكمله يتفق على أن MD5 ليس تشفيرًا وغير مناسب لتخزين كلمات المرور.
أحتاج إلى مساعدة للعثور على حل. أحتاج إلى تغيير طريقة تشفير في ROR (Discourse). حاليًا، أستخدم تشفير MD5. لقد أجريت تغييرات على مستوى الكود في بيئتي المحلية. كيف يمكنني عكس هذه التغييرات على الخادم المباشر دون مساعدة Docker؟
حاليًا، تم إعداد بيئة الإنتاج باستخدام تكوين Docker
لم تقل بعد ما هي المشكلة التي تحاول حلها. هل يمكنك قول المزيد حول ما يحله MD 5؟
لا تزال بحاجة إلى تنفيذ أي تغييرات تجريها على إضافة (plugin). هل بدأت في تعلم كيفية عمل الإضافات (plugins)؟
لكن أراهن أن ما تريده حقًا هو المصادقة على Discourse مقابل تطبيقك الحالي، في حال كنت تحتاج فقط إلى تنفيذ discourse_connect ولن يحتاج Discourse إلى معرفة خياراتك في تخزين كلمات المرور.