إعادة التوجيه إلى الفئة المحمية بعد تسجيل الدخول

لقد بحثتُ حول الموضوع ووجدتُ بعض المواضيع ذات الصلة، لكنها تركز في الغالب على SSO، وهو غير مُعدّ لدينا.

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

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

هل هناك طريقة إما للربط بصفحة /login مع توفير عنوان URL لإعادة التوجيه إلى الفئة المخفية، أو تغيير إعداد ما يطلب تسجيل الدخول عند محاولة الوصول إلى تلك الفئة المحمية؟

شكرًا مقدّمًا…

المشكلة هي أن أي إجراء آخر يكشف عن وجود الفئة السرية.

النصيحة التقليدية هنا هي تعديل نص صفحة 404 للإشارة إلى أن المستخدم قد يحتاج إلى تسجيل الدخول لعرض المحتوى.

مفهوم – شكرًا لك!

هذا الأمر تكرّر بما يكفي، ربما يجب أن ننظر في إضافة إعداد اختياري للموقع يخفّض مستوى الأمان في صفحة 404 @eviltrout… بحيث عندما ينقر مستخدم مجهول على

http://discourse.example/com/t/topic-in-secret-category

يظهر له

عذراً، ستحتاج إلى تسجيل الدخول لعرض هذا الموضوع

بدلاً من

أوه! الصفحة غير موجودة أو خاصة.

(يمكن توسيع هذا ليشير إلى المجموعة التي يحتاج المستخدمون إلى الوصول إليها، للمستخدمين المسجلين؟)

ما رأيك يا روبن؟

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

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

إليك مواصفة مصغرة:

  • إضافة إعداد موقع جديد detailed_404، قيمته الافتراضية false. “يوفر للمستخدمين تفاصيل أكثر حول سبب عدم قدرتهم على الوصول إلى موضوع معين. ملاحظة: هذا أقل أمانًا لأن المستخدمين سيعرفون ما إذا كان الرابط يحتوي على موضوع صالح أم لا.”

  • عند التفعيل، في وحدة تحكم الموضوع، إذا فشلت عملية التحقق من الحارس (guardian)، أعد كائن JSON يحتوي على تفاصيل حول سبب الفشل.

  • في تطبيق الواجهة الأمامية، استخدم هذه التفاصيل لعرض رسالة خطأ مناسبة:

    • إذا كان المستخدم مجهولًا: “عذرًا، ستحتاج إلى تسجيل الدخول لعرض هذا الموضوع”

    • إذا كان المستخدم مسجل الدخول:

      • إذا كان الموضوع مقيدًا بمجموعة واحدة (باستثناء مجموعات الموظفين): “هذا الموضوع مقيد بمجموعة GROUP_NAME.” وأدرج زر طلب الوصول.

      • إذا كان الموضوع مقيدًا بعدة مجموعات، اعرض رسالة عامة: “ليس لديك حق الوصول إلى هذا الموضوع. يرجى التواصل مع الشخص الذي زودك بالرابط لطلب الوصول.”}

@dan هل يمكنك إضافة ذلك إلى قائمتك بعد عملك على مكون التشفير؟

أعتقد أن detailed_404 قد تكون أفضل وأكثر إيجازًا؟

بالطبع، لقد قمت بتحديث المنشور.

هل نريد تطبيق ذلك على قوائم الموضوعات في الفئة المقيدة وعلى موضوع في فئة مقيدة، أم فقط على الموضوع في الفئة المقيدة؟

لأنه في الوقت الحالي، يكون سلوكهما مختلفًا.

لا أرى الكثير من الناس يشتكون من عدم قدرتهم على رؤية قوائم المواضيع مقارنة بالمواضيع نفسها. لن أهتم بذلك إلا إذا كان الأمر سهلاً جداً.

لقد رأيت أن هذا دُمج أمس. شكرًا للجميع!

للتسجيل، كان طلب السحب هو: