هل من الممكن إنشاء معاينات للمحتوى المقيد (Drupal) عبر تكامل SSO؟

مرحباً بالجميع، أنا مستخدم جديد في ديسكورد، ومنشوري الأول، أرجو أن تكونوا لطيفين!

هل يمكن لأحد أن يخبرني ما إذا كان الحل التالي ممكنًا؟

السيناريو:

  • وجود موقع دروبال
  • وجود محتوى على موقع دروبال يتطلب مصادقة المستخدم (“محتوى دروبال مقيد”)
  • وجود مصادقة موحدة (SSO) بين دروبال وديسكورد

المشكلة:

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

الحل المطلوب:

  • عندما ينشر مستخدم ديسكورد رابطًا إلى محتوى مقيد، يتم عرض المعاينة تلقائيًا إذا كان لديه صلاحية الوصول إلى المحتوى

يوجد غموض في ما قلته حتى الآن. هل تقصد أنه عند عرض منشور في ديسكورد يحتوي على رابط لدروبال، يجب أن يعتمد معاينة الصندوق الواحد على:

  1. صلاحيات المستخدم في دروبال؛ أم
  2. صلاحيات المنشئ في دروبال

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

قد تحتاج أيضًا إلى تطبيق منطق مخصص للوصول في جانب دروبال لضمان قدرة زاحف معاينة الصندوق الواحد على الوصول إلى المحتوى المقيد.

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

شكرًا لك على الرد السريع. كنت أعتقد أن المعاينة تعتمد على صلاحيات منشئ الموضوع أو التعليق في Discourse، وليس على صلاحيات مُشاهد Discourse.

كنت أفكر في المعاينة كلقطة تُنشأ وترتبط بالمنشأ بصيغة HTML ثابتة، وليس كواجهة ديناميكية — لم يكن ذلك حتى في اعتباري!

إذا فهمتك بشكل صحيح: فهذا ممكن من خلال التخصيص (عبر سكريبت) في جانب Discourse، و/أو منطق وصول مخصص في جانب Drupal؟

هل من الممكن إعداد Drupal بحيث يكون المعاينة أمام تسجيل الدخول/جدار الدفع؟

إذا كانت خصائص الوصف (meta properties) للمقال في Drupal قابلة للوصول، فستعمل تقنية Oneboxing بشكل جيد.

في منتج Discourse المستضاف (غير المؤسسي)، يبدو أن onebox غير قابل للتخصيص حقًا بطريقة تدعم ذلك.

أعتقد أن جعل البيانات الوصفية على الأقل متاحة للعامة سيكون هو الحل لمعالجة هذه المسألة.

شكرًا لكما على ردودكما