شكراً جزيلاً على المناقشة.
لقد قرأت الرابط: Use Discourse as an identity provider (SSO, DiscourseConnect) - #8 by reverend_paco
ولكن أعتقد أن هذا إذا كنت أرغب في إرسال مستخدمي إلى موقع ثانوي وإدارة المصادقة هناك.
في حالتي، لدي جزء من جافاسكريبت يعمل على موقع discourse. وأريد أن يقوم هذا الجافاسكريبت بالاتصال بمسار على نفس الخادم والحصول على ملف تعريف ارتباط (cookie) لـ pocketbase.
أنا في الواقع أستخدم وكيل nginx أمام discourse، ولذلك أضفت للتو مسارًا خاصًا /pb/auth (على سبيل المثال). عندما يصل جافاسكريبت الخاص بي إلى هذا المسار، فإن خادم وكيل خلفي (ليس داخل discourse) يقبل هذا الاتصال، ويحاول فك تشفير ملف تعريف الارتباط للجلسة _t.
كنت أفعل ذلك بهذه الطريقة لأنها تبدو أسهل قليلاً من إضافة مكون إضافي لـ discourse (لدي معرفة أقل بذلك وإعداد التطوير، إلخ). إذا كان الأمر مجرد مسألة فك تشفير ملف تعريف ارتباط باستخدام base64 وتجزئة sha، فقد اعتقدت أن ذلك سيعطيني حمولة آمنة لإخباري بمن هو المستخدم.
ولكن، إذا كنت تعتقد أن هناك طريقة مباشرة لبناء مكون إضافي يضيف هذا المسار إلى discourse، فأنا مهتم جدًا بتجربتها. يبدو أنها الطريقة الصحيحة على المدى الطويل. ولكن، أنا مبرمج Perl قديم، لذا أفضل الطريق الأسهل، وكان مسار nginx الخاص بي يبدو أسهل. ![]()