تقييد تسجيل الدخول للموظفين فقط؟

مرحبًا بالجميع،

هل توجد طريقة لتقييد تسجيل الدخول إلى المنتدى على دور معين مثل المشرفين أو المدراء؟

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

ظننت أنني سأرى خيارًا ما من قبل، لكن يبدو أنني لا أستطيع العثور عليه الآن.

يمكنك جعل المنتدى مدفوعًا بدعوة فقط حتى تصبح جاهزًا بالكامل. بعد ذلك، يمكنك تغيير الإعداد لقبول التسجيلات العامة بمجرد استعدادك. في لوحة التحكم، انتقل إلى تسجيل الدخول وحدد المربعات لتعيين الإعدادات بالطريقة التي ترغب فيها. بمجرد استعدادك، عد وقم بإجراء التغييرات اللازمة.

هذا لن يعمل بمجرد استيراد المستخدمين وتفعيل حساباتهم.

قد يعمل وكيل عكسي مؤقت مع المصادقة، لكنه يضيف تعقيدًا.

هل تغيير اسم DNS ممكن؟ وكيف تخطط لإدارة وقت التوقف؟

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

إذا كان ذلك غير كافٍ بأي شكل من الأشكال، فيمكنك تعديل nginx داخل الحاوية لطلب المصادقة الأساسية (basic auth) للوصول إلى الموقع.

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

@JimPas، كما ذكر @Stephen على حق، لن يعمل ذلك مع المستخدمين المستوردين.

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

يبدو أن المصادقة الأساسية عبر HTTP (HTTP Basic Auth) ستكون الطريقة الوحيدة لإضافة حماية إضافية ومنع المستخدمين من تسجيل الدخول. أحتاج إلى التحقق من كيفية عمل ذلك.

شكرًا لكم يا رفاق.

ليس تمامًا، فطالما لديك دائمًا خيار الاحتياطي الجيد المتمثل في إلغاء نشر سجل DNS العام واستخدام إدخال في ملف hosts لفترات محددة. سيؤدي ذلك إلى تعطيل Let’s Encrypt إذا قمت بإعادة البناء أثناء غياب DNS العام، ولكن بخلاف ذلك يعمل بشكل جيد. سيحتاج المستخدمون إلى معرفة اسم نطاق DNS الجديد وعنوان IP للوصول إليه.

تعطيل الحسابات خيار متاح، ولكن هناك أيضًا خيار لتعطيل جميع رسائل البريد الإلكتروني في /admin، وهو ما يُعد إجراءً حكيماً على الأرجح.

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

شكرًا على ذكر البدائل، @Stephen.

أعتقد أن المصادقة الأساسية ستكون الطريقة الأكثر مباشرة. استخدام ملفات المضيفين المحلية قد يكون مرهقًا بعض الشيء للأعضاء الأقل خبرة تقنيًا أو المشرفين، كما أن إدارة الهوية/تسجيل الدخول الموحد (IdM/SSO) يمثل بالتأكيد عبئًا كبيرًا للفترة القصيرة التي نأمل أن تكون مطلوبة لوضع الأسس للهجرة النهائية. أيضًا، نحن لسنا آمنين جدًا هناك، لذا قد لا نؤمّنه على الإطلاق.

لتحديث هذا الأمر، أعتقد أن لدينا الآن وضع “للموظفين للقراءة فقط”. لست متأكدًا بنسبة 100% من كيفية تفعيله. :slight_smile: لا يبدو أنني أستطيع العثور على زر في واجهة المستخدم، بخلاف “للقراءة فقط للجميع” العادي. :thinking:

سأقوم بالاستكشاف.


لدينا الآن بعض التعليمات في دليل: