استخدام المصادقة المخصصة

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

نحاول حاليًا التكامل مع نظام المصادقة القائم على ملفات تعريف الارتباط (cookies) لموقعنا الإلكتروني. لدينا عنوان URL للاستدعاء نمرر إليه عادةً معلمات مختلفة لمصادقة المستخدمين، لكننا نواجه صعوبة في محاولة مصادقة المستخدمين في Discourse بنفس الطريقة.

لقد جربت العمل على (GitHub - discourse/discourse-oauth2-basic: A basic OAuth2 plugin for use with Discourse · GitHub) لكن يبدو أن دمجها مع إعداداتنا صعب.

هل توجد أي طريقة لتكوين كيفية مصادقة Discourse للمستخدمين بحيث نتمكن من استخدام طرقنا الخاصة؟ نحن مستعدون لتقديم أي معلومات إضافية أو أكواد برمجية إذا لزم الأمر، ونقدر أي نصيحة!

مرحبًا، أهلاً بك في Meta! :grinning_face:

يختلف ذلك كثيرًا اعتمادًا على كيفية إنشاء نظام المصادقة الخاص بك.

هل يمكنك شرح طريقة عمله أو إرسال رابط لموقعك؟

مرحبًا ألكسندر، الطريقة التي تعمل بها حاليًا كالتالي:

  1. يدخل المستخدم بريدًا إلكترونيًا، فيستقبل رابطًا سحريًا يحتوي على معاملات URL مختلفة (معرف المستخدم، الطابع الزمني، التجزئة مع المفتاح السري لمصادقة الجلسة) يؤدي إلى عنوان استدعاء (callback URL) من جانبنا.
  2. بعد أن تقوم دالة الاستدعاء بمصادقة المستخدم، يتم إنشاء ملف تعريف ارتباط (cookie) وإنشاء جلسة في قاعدة البيانات.

هذه إعدادات بسيطة نسبيًا، لكنها غير متوافقة تمامًا مع إضافات OAuth2.

مرحباً @cb-candor، كيف قمت بحل هذه المشكلة؟ نحن نسعى لتحقيق حالة استخدام مطابقة تمامًا. بدلاً من ذلك، @Alexander، هل يمكنك تقديم أي نصيحة؟